Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Windows buildkite agents are bundling shared state into per-agent qcow2 images #41

Open
staticfloat opened this issue Jan 1, 2023 · 0 comments

Comments

@staticfloat
Copy link
Member

We currently have a two-layer setup in our Windows KVM setup; a base image that gets built once and per-agent customized images. Theoretically, the base image should be something that we want for any kind of windows work we want to do (and therefore shouldn't have buildkite-specific stuff there) but we're installing an awful lot of stuff into the buildkite-agent-specific images (such as pulling docker image layers to heat up the cache drive so that docker pull is faster in the future).

We should either:

  • Add another layer, the base image -> buildkite-specific shared state -> agent-specific state.
  • Incorporate more buildkite-agent-specific stuff into the base image.

Either way, we will significantly reduce the amount of state in the agent-specific qcow2 images, which will save disk space, speed up rebuild time, and reduce reboot time, as a significant limiting factor in our agent restart time is how long it takes to copy over a new pristine agent image. (The base image and the proposed new middle image would both be read-only and shared among multiple agents, of course)

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant