Skip to content

Add GCP KMS Signing#3660

Merged
DrJosh9000 merged 18 commits intomainfrom
add-gcp-kms-signing
Mar 24, 2026
Merged

Add GCP KMS Signing#3660
DrJosh9000 merged 18 commits intomainfrom
add-gcp-kms-signing

Conversation

@tomowatt
Copy link
Member

@tomowatt tomowatt commented Jan 8, 2026

Description

Currently, only AWS KMS and JWKS key pairs can be used for Signing and Verification of Jobs. As we have many customers on GCP, this allows them to use GCP KMS as well.

Context

We've had a few customers ask for more support on GCP with the Agent

Changes

The changes are to the following commands:

  • buildkite-agent pipeline upload
  • buildkite-agent tool sign
  • buildkite-agent start

Adding the following Flag:

--signing-gcp-kms-key value  The GCP KMS key resource name used when signing and verifying the pipeline. Format: projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/* [$BUILDKITE_AGENT_GCP_KMS_KEY]

Testing

  • Tests have run locally (with go test ./...). Buildkite employees may check this if the pipeline has run automatically.
  • Code is formatted (with go tool gofumpt -extra -w .)

This has also been tested locally with using gcloud to explicitly set up the credentials and also within in GCloud Console where the credentials were not explicity configured.

Disclosures / Credits

I used Claude Code to write the code and unit tests. Based on the documentation from Google on their SDK and usage of KMS

Signed-off-by: Tom Watt <tom@buildkite.com>
Signed-off-by: Tom Watt <tom@buildkite.com>
Signed-off-by: Tom Watt <tom@buildkite.com>
Signed-off-by: Tom Watt <tom@buildkite.com>
Signed-off-by: Tom Watt <tom@buildkite.com>
Signed-off-by: Tom Watt <tom@buildkite.com>
Signed-off-by: Tom Watt <tom@buildkite.com>
Signed-off-by: Tom Watt <tom@buildkite.com>
@tomowatt tomowatt force-pushed the add-gcp-kms-signing branch from c1d7e6d to 15f7e08 Compare January 8, 2026 12:21
…ey usage

Signed-off-by: Tom Watt <tom@buildkite.com>
@tomowatt tomowatt marked this pull request as ready for review January 8, 2026 14:17
Signed-off-by: Tom Watt <tom@buildkite.com>
Signed-off-by: Tom Watt <tom@buildkite.com>
Signed-off-by: Tom Watt <tom@buildkite.com>
…gest

Signed-off-by: Tom Watt <tom@buildkite.com>
Signed-off-by: Tom Watt <tom@buildkite.com>
Signed-off-by: Tom Watt <tom@buildkite.com>
@tomowatt tomowatt requested a review from DrJosh9000 February 6, 2026 11:08
@tomowatt
Copy link
Member Author

tomowatt commented Feb 6, 2026

Re-tested with the changes made and can verify still working.

@tomowatt tomowatt requested a review from a team February 6, 2026 12:19
@tomowatt tomowatt force-pushed the add-gcp-kms-signing branch from a2ab036 to 34a4a34 Compare February 10, 2026 17:38
@DrJosh9000 DrJosh9000 requested a review from a team as a code owner March 24, 2026 05:28
Copy link
Contributor

@DrJosh9000 DrJosh9000 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry for the delay. This is great! Let's :shipit:

@DrJosh9000 DrJosh9000 enabled auto-merge March 24, 2026 05:33
@DrJosh9000 DrJosh9000 merged commit c35b0a8 into main Mar 24, 2026
1 check passed
@DrJosh9000 DrJosh9000 deleted the add-gcp-kms-signing branch March 24, 2026 05:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants