Releases: EmbarkStudios/k8s-buildkite-plugin
1.2.7
Add default secrets option
This adds a default-secret-name
config option.
Make use-agent-node-affinity config optional
The plugin should not complain anymore if no value is provided for the argument
Detect node affinity automatically
Adds use-agent-node-affinity configuration parameter to allow creating jobs with the same tolerations as the buildkite agent that creates it.
Buildkite-agent 3.15.0
This release updates the default buildkite-agent to the latest 3.15.0 release, which includes fixes for using submodules with git >= 2.20.0.
Also, an important fix how labels are set on resulting Jobs, where we now strip out all invalid characters. This fixes a common error where branches for example contain /
, which is not a valid character in labels.
Arguments order fixed
This release fixes a bug where a container takes more than 10 arguments would result in the order of arguments be incorrect.
Logs, Logs Everywhere
Fixes a race where the kubectl logs would never fire if the Job takes a little while to start.
Update buildkite, kubectl versions
This release updates buildkite-agent to 3.13.2 and kubectl to 1.15.2.
Safer, now with hostPath mounts
-
The container will now mount only the pipeline's directory rather than the entire build "prefix" for buildkite-agent. This means jobs won't be able to access other pipelines' files that happen to be on the same host.
-
Host paths can now be mounted into the container. This allows for convenience uses such as caching (as a practical example, we use it for mounting the cache directory for kaniko, and the cache directory for Bazel).
-
Cleaning up old jobs now works as expected. Any job older than a day will be deleted.
-
Mount the pipeline build directory at a secondary, fixed, path
/build
to simplify build scripts. This helps giving the--context
flag for kaniko, for example. -
Enabled
git-mirrors
to allow sharing a single repo across multiple pipelines. -
Allow setting resource requests and limits in a pipeline.
Signals and shorter k8s job names
Replace buildkite job id in kubernetes job names with an 8 character random string instead. This due to kubernetes limiting job/pod names to max 64 characters.
The entrypoint script in the container image now uses exec
to allow signals to pass through to the agent properly. This enables proper graceful shutdown behavior as per https://buildkite.com/docs/agent/v3#signal-handling