This repository was archived by the owner on May 15, 2024. It is now read-only.

Description
Currently when we build flapjack packages the workflow looks like this:
- create a new ec2 launch configuration by cloning an existing one and updating the parameters to the build script within the user data script
- modify an existing autoscaling group to use the new launch config
- alter number of desired instances in the asg from 0 to 1 to kick off a build
- log in to the instance and tail /var/log/cloud-init-output.log to determine success or failure
- gist the log in case it's helpful later
- change the number of desired instances in the asg from 1 to 0
This is part of the way to the nirvana described here: https://gist.github.com/jessereynolds/378bdbca81a4fa7b1760
What next to do? Something like:
- test out an sqs queue that creates a cloud watch alarm when there are jobs on the queue
- create an asg with a policy that uses this alarm as a trigger
- work out how to pass params from the sqs job to the build script
- get a Jenkins server going and a job that receives webhooks from github and creates build jobs on the sqs queue
- improve maintain ability and more with cloud formation
The first two points were mapped out in some detail by @jdub