ci(gitleaks): use upstream directly; drop the vendored mirror #29
No reviewers
Labels
No labels
dependencies
major
security-pin
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
trails-cool/trails!29
Loading…
Reference in a new issue
No description provided.
Delete branch "ci/gitleaks-use-upstream-directly"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Reverses the hosting half of #27/#28, keeps the part that mattered.
The mirror bought nothing
I justified vendoring as removing CI's GitHub dependency. It didn't. From the actual job log (run 116), the GitHub calls this one job makes:
The action downloads the gitleaks binary from GitHub releases every run, and
actions/checkoutresolves viaDEFAULT_ACTIONS_URL=github. So if GitHub is unreachable,Security Scanfails whether the action is mirrored or not. Vendoring removed one of three GitHub touchpoints in a job that still can't complete without GitHub — in exchange for a repo to keep in sync.Integrity was never the mirror's contribution either. The pin is a commit SHA, which is content-addressed: a compromised or force-pushed upstream cannot change what
e0c47f4fresolves to. Availability of the action code was the only genuine gap, and it's moot given the binary download.My "removing CI's last GitHub dependency" claim was wrong, I corrected it on #27 — and then failed to follow the correction through to its conclusion, which is this PR.
What's kept
chore: supply-chain hardening)merge_grouppatch — a GitHub merge-queue feature Forgejo doesn't have (#25)Both were real improvements independent of where the action is hosted.
Verified
e0c47f4fanonymously reachable → 200GITLEAKS_ENABLE_UPLOAD_ARTIFACTis an upstream feature, not a local patch, so the SARIF-upload workaround still applies. Without it the action's@actions/artifactv2 upload throwsGHESNotSupportedErroragainst Forgejo and fails the job on a clean scan — i.e. it would look like gitleaks found something.v3is a moving pointer and would defeat the integrity argument above.CI / Security Scanon this PR is the test, as before.The now-unreferenced mirror
git.ullrich.is/trails-cool/gitleaks-actionis no longer referenced by anything. I've left it in place rather than deleting it — it costs ~1.5MB and would be the starting point if we ever do the full GitHub-free CI work (host the binary, mirroractions/*). Happy to delete it instead; it's a repo on your instance and deletion isn't mine to assume.