Skip to content

Harden CI: Artifactory OIDC, fork-aware workflows, SHA-pinned actions - #208

Merged
MichaelGHSeg merged 6 commits into
v3.0from
ci/harden-build-publish
Sep 28, 2026
Merged

MichaelGHSeg merged 6 commits into
v3.0from
ci/harden-build-publish

Conversation

@MichaelGHSeg

Copy link
Copy Markdown
Contributor

Summary

  • Add Artifactory OIDC composite action — exchanges GitHub OIDC token for short-lived Artifactory access token, sets `GOPROXY` to `virtual-go-thirdparty`
  • Replace `ci.yml` — fork-aware runner selection, Go 1.22–1.24 matrix, vet/test/build jobs, SHA-pinned actions
  • Update `e2e-tests.yml` + `publish-e2e-cli.yml` — remove `E2E_TESTS_TOKEN` (sdk-e2e-tests going public), fork-aware, SHA-pinned

Notes

  • No deploy workflow needed — Go publishes via git tags to the module proxy automatically
  • `go.sum` already committed; Go's integrity model is lockfile-equivalent

Test plan

  • CI runs on this PR
  • Artifactory OIDC exchange succeeds on same-repo CI
  • Before merging: set `ARTIFACTORY_URL` repository variable

- Add Artifactory OIDC composite action (sets GOPROXY to virtual-go-thirdparty)
- Replace ci.yml: fork-aware runner selection, Go 1.22-1.24 matrix, SHA-pinned
- Update e2e-tests.yml + publish-e2e-cli.yml: remove E2E_TESTS_TOKEN, fork-aware
didiergarcia
didiergarcia previously approved these changes Jul 10, 2026
…ogging

Change default oidc-provider-name from github-actions to
github-actions-segmentio (segmentio org) and add JWT claim
logging for debugging OIDC exchange failures.
…required

The segmentio org enforces sha_pinning_required, so any tag-pinned uses:
line fails the whole workflow at startup — no jobs run and no check is
reported, which reads as 'no CI' rather than a failure.
Replaces the repo-local copy with the shared first-party action, pinned. Each
SDK had its own drifting copy of the same exchange; the shared one covers every
ecosystem we use, so fixes land once instead of six times.
@MichaelGHSeg
MichaelGHSeg merged commit ddd92c6 into v3.0 Sep 28, 2026
14 of 15 checks passed
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.

3 participants