dora-team / devtools

Configs for developer tooling used by the DORA team
0 stars 0 forks source link

On update of container image, rebuild corresponding Workstation config #5

Open davidstanke opened 1 year ago

davidstanke commented 1 year ago

It appears that the machine images backing Workstations are static—they're based on a container image, but if that container changes (which can happen if the config points to the latest tag), the workstation config doesn't update. This means that even when the workstations are recycled, new ones aren't necessarily based on a fresh, patched container image. :(

So, the pipelines for rebuilding container images (which use the cloudbuild.yaml configs in the cloud-workstations folder of this repo) should be extended to also update workstation config (after the new image is built and pushed).

[or, separate pipelines could monitor for new versions of the containers and then trigger workstation rebuilds based on that event]

davidstanke commented 1 year ago

I think there's a new doc that looks relevant here: https://cloud.google.com/workstations/docs/tutorial-automate-container-image-rebuild

davidstanke commented 1 year ago

More info: Per this doc, this is happening because I have a warm pool of machines... that makes sense. So we need to force a refresh. It can be done with a (IMHO janky) process of setting the pool size to zero and then back to more-than-zero, or a (IMHO better) process of using setting the container.image field to the new container. This can probably be done via gcloud?