protocolbuffers / protocolbuffers/protobuf

CI hardening: SHA-pin bazel-contrib actions in release workflows

Open
#29,769 0 comments 0 reactions 1 assignee View on GitHub

@JasonLunn is already working on this.

Since Sep 15, 2026.

documentation feature request
Dominant language
C++
Stars
72k
Forks
16.3k
Avg merge
1d 17h
Merged PRs (30d)
140

Description

The two release-path workflows invoke third-party actions by mutable tag while
the rest of the repo (e.g. actions/checkout in update_php_repo.yml) is
SHA-pinned. Suggested two-line change for consistency and release supply-chain
hygiene — these jobs run with id-token:write and BOT_ACCESS_TOKEN:

--- a/.github/workflows/publish_to_bcr.yaml
+++ b/.github/workflows/publish_to_bcr.yaml
@@ -25 +25 @@
-    uses: bazel-contrib/publish-to-bcr/.github/workflows/publish.yaml@v1.0.0
+    uses: bazel-contrib/publish-to-bcr/.github/workflows/publish.yaml@748dc7186bc60d0e24a81ee30aba8aa543794767  # v1.0.0



--- a/.github/workflows/release_bazel_module.yaml
+++ b/.github/workflows/release_bazel_module.yaml
@@ -19 +19 @@
-    uses: bazel-contrib/.github/.github/workflows/release_ruleset.yaml@v7.7.0
+    uses: bazel-contrib/.github/.github/workflows/release_ruleset.yaml@1d798ff015ed0696433e01e2c3ccbb2abefadad7  # v7.7.0

SHAs resolved from the current tags via the GitHub API. Happy to send as a PR
if preferred — filing as an issue since workflow changes on privileged release
jobs may be something maintainers want to apply directly.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.