I'd like to tell you about a project I have been working on. I believe deploying fully baked AMIs has so many advantages over half-baked or raw deployments where things happen at boot time, that I want to make it easy for everyone to do.
Netflix have been doing this for a long time, and have multiple teams working on it. They have also documented a lot of their process, and released Aminator and Asgard to help with the process. Internally, they have a bakery that does a lot more than just Aminator. This tool is very custom to Netflix, and so this is where my project comes into play.
My clients are mostly startups, where if they have more than 5 engineers working on the main product, they are doing well. They don't have the resources to build and maintain a CI/CD pipeline, and are craving a SaaS solution.
I haven't thought of great name for it yet, so for now I am calling it Bakery4AWS. If you have a better suggestion, please let me know.
The bake process is the following:
- Bakery4AWS gets notified by your CI tool of a successful build
- Create a new Bake that is the combination of:
- Your application configuration
- Your Ansible playbook to build the AMI
- A Packer configuration specific for this build
- Launch the Bakery in your AWS account
- Bake the AMI using Packer and the Ansible Provisioner
- Return the results of the bake to Bakery4AWS
Here is a quick video of how it works
The goal is to get you closer to continuous deployment by making the AMI creation part seamless - a background process you set and forget. From commit, to a baked AMI with 0, that's right, ZERO, clicks.
If this sounds interesting to you, please sign up and join the beta user list here:
http://bakery.answersforaws.com/
And, if you wish it did something different or something more, please let me know.