Skip to content
This repository has been archived by the owner on Sep 30, 2024. It is now read-only.

Bare-metal Buildkite agents capable of running Docker and VMs #12101

Closed
1 task done
emidoots opened this issue Jul 10, 2020 · 6 comments
Closed
1 task done

Bare-metal Buildkite agents capable of running Docker and VMs #12101

emidoots opened this issue Jul 10, 2020 · 6 comments
Assignees
Milestone

Comments

@emidoots
Copy link
Member

emidoots commented Jul 10, 2020

Quoting the Distribution roadmap:

Today we cannot release of Sourcegraph, run e2e tests, or perform Docker image tests in an automated fashion because our CI infrastructure does not support running Docker containers (or VMs/Vagrant) in a reliable way. Today we have a side-car DIND container in our CI pipeline but it is flaky, unreliable, and a regular source of issues which has led to us removing automated testing (see Automatic e2e testing).

I would like to see us have some sort of CI infrastructure that is capable of running:

  • Docker containers
  • Docker Compose
  • Vagrant

I propose we create bare-metal Buildkite agents to solve this issue, provisioned through Terraform. This would then allow us to do a number of things:

TODO

  • Build some tooling so make the process of building the image repeatable with something simple like make build that can be run locally.
@davejrt davejrt self-assigned this Jul 16, 2020
@davejrt davejrt added this to the 3.19 milestone Jul 16, 2020
@emidoots
Copy link
Member Author

There appears to be some prior research / context in https://github.com/sourcegraph/sourcegraph/issues/6887 that may be valuable.

@pecigonzalo
Copy link
Contributor

Maybe we could use https://github.com/firecracker-microvm/firecracker in a similar way as RFC-199

@davejrt
Copy link
Contributor

davejrt commented Jul 29, 2020

Based on the requirements above, I'm looking at taking some inspiration from the buildkite elastic ci.

@davejrt
Copy link
Contributor

davejrt commented Aug 4, 2020

Update: image is now usable in gcp under sourcegraph-dev/buildkite-agent. Still outstanding is to automate this or at least make the image producable in an automated fashion

@marekweb
Copy link
Contributor

Dear all,

This is your release captain speaking. 🚂🚂🚂

Branch cut for the 3.19 release is scheduled for tomorrow.

Is this issue / PR going to make it in time? Please change the milestone accordingly.
When in doubt, reach out!

Thank you

@davejrt
Copy link
Contributor

davejrt commented Sep 1, 2020

Baremetal buildkite agents are now running in GCP in the sourcegraph-ci project.

Image is built here and deployed with terraform here

sourceraph-deploy-docker uses this infrastructure via sourcegraph/deploy-sourcegraph-docker#141

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

4 participants