Releases: trunk-io/dynamic-ci-buildkite-plugin
Release list
v0.1.1: Merge pull request #5 from trunk-io/max/run-identity-is-the-build-number
v0.1.0
First release of the Dynamic CI Buildkite plugin as its own repository.
The plugin skips the steps your diff does not need, using your organization's own CI history. Trunk decides at pipeline-upload time, so a skipped step never acquires an agent.
Usage
steps:
- label: ":pipeline: upload"
secrets:
- TRUNK_TOKEN
command: |
cat .buildkite/pipeline.yml \
| trunk-dynamic-ci-filter \
| buildkite-agent pipeline upload
plugins:
- trunk-io/dynamic-ci#v0.1.0: ~See the README for the options, and for what the plugin does and does not change about your pipeline.
Why this repository exists
The plugin previously lived in a subdirectory of trunk-io/dynamic-ci, the Dynamic CI GitHub Action. Buildkite resolves the short org/name#ref reference only for a plugin at the root of a repository whose name ends in -buildkite-plugin, so customers had to write the full path to a subdirectory. They no longer do.
Notes
- Pin an exact version. Agents cache a plugin's checkout by the ref you name, and
BUILDKITE_PLUGINS_ALWAYS_CLONE_FRESHis off by default, so a moving tag can leave an agent running code you did not audit. There is deliberately no major-version alias. - It installs nothing.
vendor/ships checksum-verified staticjqbinaries for linux-amd64, linux-arm64 and macos-arm64; the hook verifies the checksum before executing. - It fails open. Any failure — an unreachable API, a timeout, an unreadable plan, a missing
jq— uploads your pipeline unmodified and logs why. This runs on the critical path of every build.
0.1.0 rather than 1.0.0: the interface is settled enough to use and not yet enough to promise.