Universal (qemu) provider for building images on all clouds at once #45
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds the ability to create images locally using QEMU, which will be imported by various cloud providers at the completion of the build.
It maintains the ability for the same base -> specialization image hierarchy that ami-bakery currently has.
Building images with QEMU requires a
cloud-init
preseed ISO image to be created before provisioning, and that is taken care of by the default packer env script logic and packer itself.There are some changes introduced:
PKR_VAR_
env var prefix, which eliminates most of the cruft ofbuild.sh
cloud-init clean
handles this mostly, but we'll probably find more places that need to be cleaned of logs to ensure the machine presents as completely clean.Thoughts:
ami-import-<id>
, which is frustrating.TODO before merging:
build.sh
refactor to usePKR_VAR_
for all builders