Skip to content

Instantly share code, notes, and snippets.

@jessereynolds
Last active August 29, 2015 14:04
Show Gist options
  • Save jessereynolds/378bdbca81a4fa7b1760 to your computer and use it in GitHub Desktop.
Save jessereynolds/378bdbca81a4fa7b1760 to your computer and use it in GitHub Desktop.
flapjack packaging ideas

The SQS and Jenkins bits can come later...

Create an AMI

  • ubuntu trusty with docker PPA and latest docker installed
  • do a 'docker pull flapjack/omnibus-ubuntu'
  • bake ami

Start EC2 instance using above AMI

  • user data with #!/bin/bash on first line to run the flapjack build commands ie docker run ...
  • the docker run commands will include calls to the scripts that update packages.flapjack.io S3 hosted website with the newly built package

SQS queue and an ASG

  • create an autoscaling group that runs 1 ec2 instance of the docker build server and takes the details of the package to produce as parameters
  • an ASG policy based on an alarm that fires when the queue has >= 1 message
  • so the ASG will process jobs when there are jobs on the queue to be processed
  • for bonus points, do this with CloudFormation

Jenkins or some such

  • create jobs on the SQS queue as required based on git commits
@jessereynolds
Copy link
Author

Awesome, that'll keep me busy for a while.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment