Skip to content

Run the release job in the protected release environment - #139

Merged
redanthrax merged 1 commit into
masterfrom
ci/release-environment
Nov 5, 2026
Merged

redanthrax merged 1 commit into
masterfrom
ci/release-environment

Conversation

@redanthrax

Copy link
Copy Markdown
Owner

Follow-up to #138. This clears the two secrets-outside-env findings (medium) that were left open there.

Change

The release job now runs in a release environment, which I've created. Its deployment policy allows only v* tags. Once the Docker Hub secrets move into it, no branch or PR workflow can read them, even if a workflow file is edited to try.

Rollout order (safe at every step)

  1. Merge this PR. Until the environment has its own secrets, a job running in it still reads the repo-level DOCKERHUB_* secrets, so nothing breaks in between.
  2. Add DOCKERHUB_USERNAME and DOCKERHUB_TOKEN as release environment secrets.
  3. Delete the repo-level copies.

Verification

  • actionlint: clean
  • zizmor --persona=auditor: 0 high, 0 medium, 0 low. Only the 3 informational unnamed-job findings remain.
  • The release workflow runs on the next v* tag. A tag ref matches the environment policy, and so does a manual dispatch with --ref v1.0.x.

The release environment only accepts deployments from v* tags. Moving the
DOCKERHUB_* secrets into it means branch and PR workflows cannot read the
registry credentials. Clears zizmor's secrets-outside-env findings.
@redanthrax
redanthrax merged commit df74c83 into master Nov 5, 2026
2 checks passed
@redanthrax
redanthrax deleted the ci/release-environment branch November 5, 2026 16:35
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.

1 participant