Releases: buildkite/agent-stack-k8s
v0.21.0
v0.21.0 (2024-12-19)
Note
You can now specify a default image pull policy for containers that don't specify one (--default-image-pull-policy
and associated config), and a default image pull policy for the init containers the stack adds to pre-check images can be pulled (--default-image-check-pull-policy
).
Image pull policies configured on containers are also no longer unconditionally overridden, for instance you can now use imagePullPolicy: Never
and the image should not be pulled (the job may still fail if the image is not present).
These changes are unlikely to cause issues when upgrading, but please let us know of any issues you encounter.
Note
You can now use PodSpecPatch to modify the commands and args of some types of containers (command containers, sidecars, and new containers added via patch). For checkout containers, please continue either configuring a checkout hook, or skip the checkout container (checkout: skip: true
in the kubernetes
plugin, or default-checkout-params: skip: true
in the controller config).
Fixed
- Allow patching some container commands/args #461 (@DrJosh9000)
- Allow running command containers as non-root user with EBS backed (and other) workspace volumes #453 (@patrobinson)
- Image check improvements #459 (@DrJosh9000)
- Schedule jobs in priority order #451 (@DrJosh9000)
Changed
- Bump github.com/buildkite/agent/v3 from 3.87.1 to 3.88.0 #462 (@dependabot[bot])
- Add container image to example under PodSpecPatch #454 (@DrJosh9000)
Dependency bumps
- Bump the k8s group with 3 updates #457 (@dependabot[bot])
- Bump github.com/jedib0t/go-pretty/v6 from 6.6.3 to 6.6.5 #458 (@dependabot[bot])
Agent Changelog
v3.88.0 (2024-12-18)
Changed
- Prefix fatal error message with 'buildkite-agent:' #3135 (@jordandcarter)
- Notify when host and bootstrap agent paths mismatch #3123 (@jordandcarter)
Fixed
- Enable process debug logging #3134 (@patrobinson)
- Ignore empty submodule clone configs #3122 (@DrJosh9000)
- fix: allow for empty files on hook check #3117 (@nzspambot)
- Parse more standalone
$
cases as literal$
s and not variable expansions:- Bump github.com/buildkite/go-pipeline from 0.13.2 to 0.13.3 #3137 (@dependabot[bot])
- Bump github.com/buildkite/interpolate from 0.1.4 to 0.1.5 #3138 (@dependabot[bot])
Dependabot
Images
Helm chart
Image: public.ecr.aws/buildkite/helm/agent-stack-k8s:0.21.0
Image: ghcr.io/buildkite/helm/agent-stack-k8s:0.21.0
Digest: sha256:430f2e916225036a81318ad7c6261a78791b10fe4e28fdfee0d3b318628c1903
Controller
Image: public.ecr.aws/buildkite/agent-stack-k8s/controller:0.21.0
Image: ghcr.io/buildkite/agent-stack-k8s/controller:0.21.0
Digest: sha256:e86704ae40c97885a9a6a6d020f7fcd9d2299bd33d5a36ada7ad5988d4ba4dcc
Agent
Image: ghcr.io/buildkite/agent:3.88.0
Digest: sha256:3099e07fe3e219d44998a887145e7409659e3ec969410b5dd54427c5865a5e1f
v0.20.2
v0.20.2 (2024-12-16)
This is the first release to AWS Public ECR! All the changes are in the pipeline or release process.
Otherwise, this release is functionally the same as v0.20.1.
Internal
- Fix release.sh #456 (@DrJosh9000)
- Fix deploy.sh #455 (@DrJosh9000)
- Push images to Public ECR #450 (@DrJosh9000)
- Move Go cache hostpaths to /var/cache #446 (@DrJosh9000)
Images
Helm chart
Image: public.ecr.aws/buildkite/helm/agent-stack-k8s:0.20.2
Image: ghcr.io/buildkite/helm/agent-stack-k8s:0.20.2
Digest: sha256:2be056f01245acd35ebe4c487a69f24c9333e3af1195b0c8bdcf9a474a822c60
Controller
Image: public.ecr.aws/buildkite/agent-stack-k8s/controller:0.20.2
Image: ghcr.io/buildkite/agent-stack-k8s/controller:0.20.2
Digest: sha256:4b025a17f4f7907aefd09eb73fbe351ab5e051aa69c05acc12eb78a8e5a38cc1
Agent
Image: ghcr.io/buildkite/agent:3.87.1
Digest: sha256:39ed89f3e3eee32dd6415e27e90654c6969c96a82d90e8ad8b84cbed031b816e
v0.20.1
v0.20.1 (2024-12-10)
Fixed
- Submodule checkout failure when checkout configuration is provided #444 (@rianmcguire)
Changed
- Bump sigs.k8s.io/controller-runtime from 0.19.2 to 0.19.3 in the k8s group #443 (@dependabot[bot])
Images
Helm chart
Image: ghcr.io/buildkite/helm/agent-stack-k8s:0.20.1
Digest: sha256:57e4ae64cd4d522a3603b37324307bd2b2473c6d814a9b3467cc5e6080f6e519
Controller
Image: ghcr.io/buildkite/agent-stack-k8s/controller:0.20.1
Digest: sha256:e371ddc75d01c071f36f98ac88b0d506501dc578df77d3e39ebde261ad1b9369
Agent
Image: ghcr.io/buildkite/agent:3.87.1
Digest: sha256:39ed89f3e3eee32dd6415e27e90654c6969c96a82d90e8ad8b84cbed031b816e
v0.20.0
v0.20.0 (2024-12-05)
Added
- Add job watcher #442 (@DrJosh9000)
- Check for init container failures and InvalidImageName #441 (@DrJosh9000)
- Add job UUID to limiter debug logs in informer callbacks #439 (@DrJosh9000)
- Add Prometheus metrics endpoint #419 (@DrJosh9000)
- Catch duplicate jobs in scheduler #438 (@DrJosh9000)
Fixed
- deduper: Track job existence instead of running state #440 (@DrJosh9000)
- Refine informer usage in deduper #436 (@DrJosh9000)
Dependency updates
- Bump github.com/stretchr/testify from 1.9.0 to 1.10.0 #435 (@dependabot[bot])
- Bump the k8s group with 4 updates #434 (@dependabot[bot])
- Bump github.com/buildkite/agent/v3 from 3.87.0 to 3.87.1 #437 (@dependabot[bot])
Images
Helm chart
Image: ghcr.io/buildkite/helm/agent-stack-k8s:0.20.0
Digest: sha256:dc7e4836bd767753437d8d1db57144f86b6b821f95e0c93fc933828dc21d2c1c
Controller
Image: ghcr.io/buildkite/agent-stack-k8s/controller:0.20.0
Digest: sha256:2e2f1afd2fafd81132a2633e20cd5f650df3dca8ade8bf6b76e58bf8ecf25868
Agent
Image: ghcr.io/buildkite/agent:3.87.1
Digest: sha256:39ed89f3e3eee32dd6415e27e90654c6969c96a82d90e8ad8b84cbed031b816e
v0.19.3
v0.19.3 (2024-11-24)
Fixed
- Fix limiter token tracking (again) #432 (@DrJosh9000)
Changed
- Match tags in pod watcher #431 (@DrJosh9000)
Images
Helm chart
Image: ghcr.io/buildkite/helm/agent-stack-k8s:0.19.3
Digest: sha256:32806855ff384d126de6e2ccd98303994f37e940f34e01637e40e9877c2c5c28
Controller
Image: ghcr.io/buildkite/agent-stack-k8s/controller:0.19.3
Digest: sha256:6e1508c9ef6b6975984b83995f9b20998a5e9ae226e8a6b1dcd30065096c6341
Agent
Image: ghcr.io/buildkite/agent:3.87.0
Digest: sha256:c65b58556ba3798974df83ae33d425b2e39a7adebddd07835804720dbe8945d3
v0.19.2
v0.19.2 (2024-11-19)
Fixed
- Fix workspace volume name on init containers #430 (@DrJosh9000)
Images
Helm chart
Image: ghcr.io/buildkite/helm/agent-stack-k8s:0.19.2
Digest: sha256:1d19a822c4bd3d01360d9d0f7d152a2532cee3bb4d29a0ff34c4c96274bcf7d5
Controller
Image: ghcr.io/buildkite/agent-stack-k8s/controller:0.19.2
Digest: sha256:03d314da8dc18069c0a3525de11526c1dfb971f8b10c2485d78328e12d18bf36
Agent
Image: ghcr.io/buildkite/agent:3.87.0
Digest: sha256:c65b58556ba3798974df83ae33d425b2e39a7adebddd07835804720dbe8945d3
v0.19.1
v0.19.1 (2024-11-19)
Fixed
- Add waitgroup around jobHandlerWorker #429 (@DrJosh9000)
Images
Helm chart
Image: ghcr.io/buildkite/helm/agent-stack-k8s:0.19.1
Digest: sha256:ff3ab1a23429bc328491eb0870bad8a13a9b6c99e5194bb93e5002422be0dfb3
Controller
Image: ghcr.io/buildkite/agent-stack-k8s/controller:0.19.1
Digest: sha256:629433608fdd857921a89b0b79b7bc5031753f86ba5800033c1e4f97e59716ce
Agent
Image: ghcr.io/buildkite/agent:3.87.0
Digest: sha256:c65b58556ba3798974df83ae33d425b2e39a7adebddd07835804720dbe8945d3
v0.19.0
v0.19.0 (2024-11-19)
Added
- Configurable workspace volume #428 (@jfmeachum + @DrJosh9000)
Added to help with issues preventing jobs being created:
- Configurable stale job data timeout #417, #418 (@DrJosh9000)
- Parallel job creation #427 (@DrJosh9000)
Changed
- Bump github.com/buildkite/agent/v3 from 3.84.0 to 3.87.0 #416, #425 (@dependabot[bot])
Internal
- Split limiter and deduplicator #424 (@DrJosh9000)
- Rename Create -> Handle, + more logs and comments to aid debugging #423 (@DrJosh9000)
- Bump github.com/go-playground/validator/v10 from 10.22.1 to 10.23.0 #426 (@dependabot[bot])
Agent changelog
v3.87.0 (2024-11-18)
Changed
- Remove signal reason unable_to_verify_signature and replace with signature_rejected #3094 (@jordandcarter)
Fixed
- Don't surface expected stderr output from git rev-parse #3095 (@CerealBoy)
- Add retry around NewS3Client #3092 (@l-suzuki)
Internal
- Soft fail upload of packages docker images #3093 (@tommeier)
- Switch to agent-base images #3091 (@DrJosh9000)
v3.86.0 (2024-11-12)
Added
Changed
- Rename env var to
BUILDKITE_STEP_CANCEL_FORCE_GRACE_PERIOD_SECONDS
#3087 (@mitchbne) - Drop Ubuntu 18.04, add Ubuntu 24.04 #3078 (@DrJosh9000)
Fixed
Internal
- dependabot: Group Dockerfiles #3077 (@DrJosh9000)
- Various dependency bumps: #3086, #3085, #3081, #3079 (@dependabot[bot])
v3.85.1 (2024-11-09)
Fixed
- Fix another nil pointer panic in k8s mode #3075 (@DrJosh9000)
- Fix nil pointer panic in k8s mode #3074 (@DrJosh9000)
v3.85.0 (2024-11-07)
Added
Changed
- Support installing specific versions via script #3069 (@jordandcarter)
- Promote polyglot-hooks experiment to default #3063 (@DrJosh9000)
- Use sha256 in the checksum verification #3062 (@esenmarti)
- Minor update to the 'redactor' CLI command examples. #3060 (@gilesgas)
Fixed
- Fix zzglob import path #3057 (@DrJosh9000)
Internal
- Shell package cleanup #3068 (@DrJosh9000)
- Remove .editorconfig #3064 (@DrJosh9000)
- Various dependency bumps: #3066 #3065 #3067 (@dependabot[bot])
Images
Helm chart
Image: ghcr.io/buildkite/helm/agent-stack-k8s:0.19.0
Digest: sha256:16ee76bd933bdddd1bace3ce8fd6426dc9556d1768edbd5a5cefd5e01924d873
Controller
Image: ghcr.io/buildkite/agent-stack-k8s/controller:0.19.0
Digest: sha256:62b9b6781249e9fdf5be39304dd75f82236eab47bd6994638618ea5797364fca
Agent
Image: ghcr.io/buildkite/agent:3.87.0
Digest: sha256:c65b58556ba3798974df83ae33d425b2e39a7adebddd07835804720dbe8945d3
v0.18.0
v0.18.0 (2024-11-07)
Note
The command, checkout, and agent containers in pods are now pulled with the policy PullIfNotPresent
.
The only effect of this change should be to avoid unnecessary pulls, as all these images are pulled immediately beforehand using init containers. See issue #411.
Note
Repeat of the note on v0.17.0: the agent image now needs to contain /sbin/tini-static
.
Changed
- PullIfNotPresent agent server container #414 (@DrJosh9000)
- PullIfNotPresent for app containers #412 (@DrJosh9000)
Added
- Configurable default job metadata #413 (@DrJosh9000)
Fixed
- Fix parsing configs with dots in mapping keys #409 (@DrJosh9000)
Images
Helm chart
Image: ghcr.io/buildkite/helm/agent-stack-k8s:0.18.0
Digest: sha256:d2c73e5ee9b89f8d3c82b03c4f14b640e8e51dcf376ad2d9b35b31044dd03463
Controller
Image: ghcr.io/buildkite/agent-stack-k8s/controller:0.18.0
Digest: sha256:45c29fabb72047b1b82949aa8fdb75819575fbef30e669510f147510edfdfdc3
Agent
Image: ghcr.io/buildkite/agent:3.84.0
Digest: sha256:17fbf3e3d5574ba4dc6e7436391635b0a4a4a7f78a751a372e2456d2d72f541d
v0.17.0
v0.17.0 (2024-10-30)
Note
This version assumes tini-static
is available in the agent image.
If you are building a custom agent image, or overrode the config.image
parameter, please either update to the latest release, or otherwise ensure /sbin/tini-static
is installed within the image.
Changed
- Clean up pending pods for cancelled jobs #406 (@DrJosh9000)
- Run commands under tini-static #404 (@DrJosh9000)
- Bump github.com/buildkite/agent/v3 from 3.83.1 to 3.84.0 #407 (@dependabot[bot])
- Bump the k8s group with 4 updates #405 (@dependabot[bot])
Internal
- Tidyups in .buildkite #390 (@DrJosh9000)
- Fix leftover pods from test #399 (@DrJosh9000)
Agent Changelog
v3.84.0 (2024-10-28)
Added
- Add command for canceling a running a build #2958 (@dannymidnight)
- Add tini-static to alpine images #3054 (@DrJosh9000)
Fixed
- Implement several documentation improvements to the Agent (for the Buildkite Docs). #3043 (@gilesgas)
- Allow token to be empty if graphql-token is provided #3051 (@jordandcarter)
- Fix multiline secret redaction when output with \r\n #3050 (@DrJosh9000)
- k8s exec: Perform liveness check of clients #3045 (@DrJosh9000)
- Fix request headers for multipart #3042 (@DrJosh9000)
Internal
Images
Helm chart
Image: ghcr.io/buildkite/helm/agent-stack-k8s:0.17.0
Digest: sha256:0ed07c70d8f9b595c40a93dd052d69c4adf568923f942a6ee58f199f8d576cc3
Controller
Image: ghcr.io/buildkite/agent-stack-k8s/controller:0.17.0
Digest: sha256:e59302d731f12229944b32c01aefeb6838042f235c01627deb5059864ff3c7b9
Agent
Image: ghcr.io/buildkite/agent:3.84.0
Digest: sha256:17fbf3e3d5574ba4dc6e7436391635b0a4a4a7f78a751a372e2456d2d72f541d