I tried the Elastic CI Stack for AWS and it works great!
The only negative thing is the startup time of the builds. The builds take at least one or two minutes to start. I know this is because AWS EC2 instances take one or two minutes to setup. But because of this the whole build process is slow. Would there be a way to reduce the startup time of the builds? Ideally we would like them to start just a few seconds after the push.
Welcome to the community!
As you mentioned, a 2-minute start-up time is pretty normal in most cloud container systems so we can’t improve that time, but you could probably check it out the git mirrors experiment which will share a cached copy of the git repository which should speed things up: The Buildkite Agent v3 | Buildkite Documentation.
There’s no automatic cleanup, but git should run garbage collection etc periodically to clean things up.
Thank you Paula for your answer! Thanks for the link.
I was wondering: if the Buildkit agent was started in a fargate container, would the builds start faster?
A couple ideas here: You could set a machine minimum above zero to have some capacity always available. Scale out also might help you provision when you are about to have more demand.
Yes of course but this means I pay for a server for the whole time.
Is fargate or a container based system supported?
And what is the best way to have an agent that starts as fast as possible when a build is triggered and stops as fast as possible when the build is done?