Support Building AWS Windows LI Images#4069
Conversation
7b3492a to
7a91a88
Compare
dustymabe
left a comment
There was a problem hiding this comment.
Initial review. Thank you for working on this!
|
I added another commit to this PR to include the |
| func randomName(prefix string) string { | ||
| b := make([]byte, 5) | ||
| if _, err := rand.Read(b); err != nil { | ||
| plog.Errorf("randomName: failed to generate a random name: %v", err) | ||
| } | ||
| return fmt.Sprintf("%s-%x", prefix, b) | ||
| } |
There was a problem hiding this comment.
I was thinking more that rather than copy/paste the function from azure/api.go we'd put it in util/ (like the retry functions) and use that everywhere (i.e. we'd delete the copy of this in azure/api.go too.
There was a problem hiding this comment.
Ah, yeah that makes sense. I can make that change as a separate commit. Should I make the change to the azure API in a separate PR after this merges?
There was a problem hiding this comment.
I would just put it in the same PR.
| cmdUpload.Flags().StringVar(&uploadX86BootMode, "x86-boot-mode", "uefi-preferred", "Set boot mode (uefi-preferred, uefi)") | ||
| cmdUpload.Flags().BoolVar(&uploadCreateWinLIAMI, "winli", false, "Create a Windows LI AMI") | ||
| cmdUpload.Flags().StringVar(&uploadWinLIwindowsServerAMI, "windows-ami", "", "Windows Server AMI used to create a Windows LI AMI") | ||
| cmdUpload.Flags().StringVar(&uploadWinLIInstanceType, "winli-instance-type", "", "ec2 instance type used to create a Windows LI AMI (default: t2.large)") |
There was a problem hiding this comment.
| cmdUpload.Flags().StringVar(&uploadWinLIInstanceType, "winli-instance-type", "", "ec2 instance type used to create a Windows LI AMI (default: t2.large)") | |
| cmdUpload.Flags().StringVar(&uploadWinLIInstanceType, "winli-instance-type", "t2.large", "ec2 instance type used to create a Windows LI AMI") |
I think you can just set a default this way and you won't have to do the conditional logic below.
| action='append', default=[]) | ||
| parser.add_argument("--winli", action="store_true", help="create an AWS Windows LI Ami") | ||
| parser.add_argument("--windows-ami", help="Windows Server AMI ID used to create AWS Windows LI image") | ||
| parser.add_argument("--winli-instance-type", help="ec2 instance type used to create AWS Windows LI image (default: t2.large)") |
There was a problem hiding this comment.
| parser.add_argument("--winli-instance-type", help="ec2 instance type used to create AWS Windows LI image (default: t2.large)") | |
| parser.add_argument("--winli-instance-type", help="ec2 instance type used to create AWS Windows LI image") |
I'd just leave off this detail here as it could become stale.
There was a problem hiding this comment.
SGTM. That's why I created the option in the first place, so we wouldn't hard code it. Just like the windows server ami, this can become stale. Although, much less frequently.
b66b975 to
963bea5
Compare
3ff8a7e to
238517b
Compare
dustymabe
left a comment
There was a problem hiding this comment.
still LGTM - maybe wait til next week to merge just in case this disrupts something.
Add command line options to ore to support building Windows LI images.
Expand the schema to include aws-winli amis. Also expand cmd-coreos-prune to hanlde the new schema and prune aws-winli images if they exist in the metadata. Auto-generated code using `make schema`
Add command line options to support building aws windows li images.
Adjust ore replicate to handle both the `aws` and `aws-winli` metadata keys when replicating to aws regions.
The new Windows License Included AMI creation process creates volumes that might not be deleted when the instance they're attached to is deleted. Expand AWS Garbage Colleciton to also clean up EC2 volumes that were created by mantle.
Add AWS Windows License Included AMI information to the rhel-coreos-extensions section of the release metadata. See: https://issues.redhat.com/browse/COS-3057
|
Pushed some updates to make CI happy. I also edited the schema commit to include pruning |
Expand the replicate to clouds functionality to build AWS Windows License Included (winli) images for streams that support it before replicating AMIs to other regions. `cosa aws-replicate` will now replicate both traditional AMIs and aws-winli AMIs if present in the metadata. See: coreos/coreos-assembler#4069 Also add a `winli` knob to the pipeline config clouds.aws section to only build winli images for specific streams.
Expand the replicate to clouds functionality to build AWS Windows License Included (winli) images for streams that support it before replicating AMIs to other regions. `cosa aws-replicate` will now replicate both traditional AMIs and aws-winli AMIs if present in the metadata. See: coreos/coreos-assembler#4069 Also add a `winli` knob to the pipeline config clouds.aws section to only build winli images for specific streams.
Expand the replicate to clouds functionality to build AWS Windows License Included (winli) images for streams that support it before replicating AMIs to other regions. `cosa aws-replicate` will now replicate both traditional AMIs and aws-winli AMIs if present in the metadata. See: coreos/coreos-assembler#4069 Also add a `winli` knob to the pipeline config clouds.aws section to only build winli images for specific streams.
Expand the replicate to clouds functionality to build AWS Windows License Included (winli) images for streams that support it before replicating AMIs to other regions. `cosa aws-replicate` will now replicate both traditional AMIs and aws-winli AMIs if present in the metadata. See: coreos/coreos-assembler#4069 Also add a `winli` knob to the pipeline config clouds.aws section to only build winli images for specific streams.
Expand the replicate to clouds functionality to build AWS Windows License Included (winli) images for streams that support it before replicating AMIs to other regions. `cosa aws-replicate` will now replicate both traditional AMIs and aws-winli AMIs if present in the metadata. See: coreos/coreos-assembler#4069 Also add a `winli` knob to the pipeline config clouds.aws section to only build winli images for specific streams.
Expand the replicate to clouds functionality to build AWS Windows License Included (winli) images for streams that support it before replicating AMIs to other regions. `cosa aws-replicate` will now replicate both traditional AMIs and aws-winli AMIs if present in the metadata. See: coreos/coreos-assembler#4069 Also add `create_and_replicate_winli_ami` as a stream level knob to the pipeline config to enable building and replicating the AMIs for specific streams.
Expand the replicate to clouds functionality to build AWS Windows License Included (winli) images for streams that support it before replicating AMIs to other regions. `cosa aws-replicate` will now replicate both traditional AMIs and aws-winli AMIs if present in the metadata. See: coreos/coreos-assembler#4069 Also add `create_and_replicate_winli_ami` as a stream level knob to the pipeline config to enable building and replicating the AMIs for specific streams.
Expand the replicate to clouds functionality to build AWS Windows License Included (winli) images for streams that support it before replicating AMIs to other regions. `cosa aws-replicate` will now replicate both traditional AMIs and aws-winli AMIs if present in the metadata. See: coreos/coreos-assembler#4069 Also add `create_and_replicate_winli_ami` as a stream level knob to the pipeline config to enable building and replicating the AMIs for specific streams.
Expand the replicate to clouds functionality to build AWS Windows License Included (winli) images for streams that support it before replicating AMIs to other regions. `cosa aws-replicate` will now replicate both traditional AMIs and aws-winli AMIs if present in the metadata. See: coreos/coreos-assembler#4069 Also add `create_and_replicate_winli_ami` as a stream level knob to the pipeline config to enable building and replicating the AMIs for specific streams.
Expand the replicate to clouds functionality to build AWS Windows License Included (winli) images for streams that support it before replicating AMIs to other regions. `cosa aws-replicate` will now replicate both traditional AMIs and aws-winli AMIs if present in the metadata. See: coreos/coreos-assembler#4069 Also add `create_and_replicate_winli_ami` as a stream level knob to the pipeline config to enable building and replicating the AMIs for specific streams.
Expand the replicate to clouds functionality to build AWS Windows License Included (winli) images for streams that support it before replicating AMIs to other regions. `cosa aws-replicate` will now replicate both traditional AMIs and aws-winli AMIs if present in the metadata. See: coreos/coreos-assembler#4069 Also add `create_and_replicate_winli_ami` as a stream level knob to the pipeline config to enable building and replicating the AMIs for specific streams.
Expand the replicate to clouds functionality to build AWS Windows License Included (winli) images for streams that support it before replicating AMIs to other regions. `cosa aws-replicate` will now replicate both traditional AMIs and aws-winli AMIs if present in the metadata. See: coreos/coreos-assembler#4069 Also add `create_and_replicate_winli_ami` as a stream level knob to the pipeline config to enable building and replicating the AMIs for specific streams.
Expand the replicate to clouds functionality to build AWS Windows License Included (winli) images for streams that support it before replicating AMIs to other regions. `cosa aws-replicate` will now replicate both traditional AMIs and aws-winli AMIs if present in the metadata. See: coreos/coreos-assembler#4069 Also add `create_and_replicate_winli_ami` as a stream level knob to the pipeline config to enable building and replicating the AMIs for specific streams.
Expand the replicate to clouds functionality to build AWS Windows License Included (winli) images for streams that support it before replicating AMIs to other regions. `cosa aws-replicate` will now replicate both traditional AMIs and aws-winli AMIs if present in the metadata. See: coreos/coreos-assembler#4069 Also add `create_and_replicate_winli_ami` as a stream level knob to the pipeline config to enable building and replicating the AMIs for specific streams.
Expand the replicate to clouds functionality to build AWS Windows License Included (winli) images for streams that support it before replicating AMIs to other regions. `cosa aws-replicate` will now replicate both traditional AMIs and aws-winli AMIs if present in the metadata. See: coreos/coreos-assembler#4069 Also add `create_and_replicate_winli_ami` as a stream level knob to the pipeline config to enable building and replicating the AMIs for specific streams.
Expand the replicate to clouds functionality to build AWS Windows License Included (winli) images for streams that support it before replicating AMIs to other regions. `cosa aws-replicate` will now replicate both traditional AMIs and aws-winli AMIs if present in the metadata. See: coreos/coreos-assembler#4069 Also add `create_and_replicate_winli_ami` as a stream level knob to the pipeline config to enable building and replicating the AMIs for specific streams.
Expand the replicate to clouds functionality to build AWS Windows License Included (winli) images for streams that support it before replicating AMIs to other regions. `cosa aws-replicate` will now replicate both traditional AMIs and aws-winli AMIs if present in the metadata. See: coreos/coreos-assembler#4069 Also add `create_and_replicate_winli_ami` as a stream level knob to the pipeline config to enable building and replicating the AMIs for specific streams.
Expand the replicate to clouds functionality to build AWS Windows License Included (winli) images for streams that support it before replicating AMIs to other regions. `cosa aws-replicate` will now replicate both traditional AMIs and aws-winli AMIs if present in the metadata. See: coreos/coreos-assembler#4069 Also add `create_and_replicate_winli_ami` as a stream level knob to the pipeline config to enable building and replicating the AMIs for specific streams.
Expand the functionality of cosa to build and replicate AWS Windows License Included CoreOS Images using ore.
See individual commits.
xfef: https://issues.redhat.com/browse/COS-3042
To build an
aws-winliAMI, run the following command:Edit:
buildextendis RIP