Skip to content

fix(ci): hoist secrets to job env in mirror-reusable; refresh example SHAs#416

Merged
hyperpolymath merged 1 commit into
mainfrom
fix/mirror-reusable-secrets-context
Jun 24, 2026
Merged

fix(ci): hoist secrets to job env in mirror-reusable; refresh example SHAs#416
hyperpolymath merged 1 commit into
mainfrom
fix/mirror-reusable-secrets-context

Conversation

@hyperpolymath

Copy link
Copy Markdown
Owner

Task A — mirror-reusable.yml (two real bugs)

Bug 1 — duplicate if: key. The "Mirror to GitLab" step had if: ${{ secrets.GITLAB_SSH_KEY != '' }} twice (with continue-on-error: true between). Removed the duplicate so the step has exactly one if:.

Bug 2 — secrets context in step if:. The secrets context is not valid in step-level if: — it is an Unrecognized named-value: 'secrets' startup failure. Hoisted each forge secret to a job-level env: block and changed every step if: to gate on env.<FORGE>_KEY, matching the already-correct mirror-radicle job. Applied to all six forge jobs: gitlab, bitbucket, codeberg, sourcehut, disroot, gitea. Behaviour is identical; only the reference site moved. actionlint clean.

Task B — refresh stale example SHAs

The header copy-paste usage examples in {elixir-ci,deno-ci,rust-ci,changelog}-reusable.yml pinned @861b5e9… (stale, ~70 commits behind, beyond the staleness window). Refreshed to current main HEAD 4762ba66441de05bccb36e074ba3d2202219126a. Comment-only.

Validation

  • actionlint clean on all 5 files.
  • No secrets.* remains in any step if:.
  • Task B diff is comment-only.

🤖 Generated with Claude Code

… SHAs

mirror-reusable.yml (two real bugs):
- Remove duplicate `if:` key on the "Mirror to GitLab" step.
- The `secrets` context is not valid in step-level `if:` (it is an
  "Unrecognized named-value: 'secrets'" startup failure). Hoist each
  forge secret to a job-level `env:` block and gate every step `if:` on
  `env.<FORGE>_KEY` instead of `secrets.<FORGE>_SSH_KEY`, matching the
  already-correct `mirror-radicle` pattern. Applies to all six forge
  jobs (gitlab, bitbucket, codeberg, sourcehut, disroot, gitea).
  Behaviour identical; only the reference site moves. actionlint clean.

{elixir,deno,rust,changelog}-*-reusable.yml:
- Refresh the stale copy-paste example SHA in the header comments
  (861b5e9 -> 4762ba6, current main HEAD) so new adopters copy a
  current pin. Comment-only.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@hyperpolymath hyperpolymath merged commit d135b05 into main Jun 24, 2026
10 of 20 checks passed
@hyperpolymath hyperpolymath deleted the fix/mirror-reusable-secrets-context branch June 24, 2026 14:09
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