Add support for cloud-init

Closed Mike Crute requested to merge cloud-init into master

This pull request adds cloud-init support to the AMI. Upstream cloud-init still has some bugs with their default configuration that I need to patch, mostly around not locking the alpine user at init time. But this is a start. Currently you can build the image and it'll deploy the SSH keys correctly to the alpine user, it will also run the user-data. I haven't done any other quality checking.

There aren't any AMIs available yet, I've deleted the testing ones, but they can be produce by building the ci-v3_13-x86_64 build from the alpine profile. This will generate an AMI with a alpine-ci-test-ami- prefix that is bootstrapped using cloud-init. All of the default builds still use tiny-ec2-bootstrap.

This change should be safe to merge as-is because it doesn't change the default behavior of the normal targets.

Edited by Jake Buchholz Göktürk

Merge request reports