ci: add gitleaks secret-scan job (gitleaks-action v2.3.9)#119
ci: add gitleaks secret-scan job (gitleaks-action v2.3.9)#119don-petry wants to merge 28 commits into
Conversation
Uses gitleaks/gitleaks-action@v2.3.9 (pinned to SHA) instead of the direct binary install from PR #107. The compliance audit (pp_check_secret_scan_ci_job) requires `uses: gitleaks/gitleaks-action@` in ci.yml — a binary install does not satisfy the check. Key decisions: - Switched from direct binary install to gitleaks/gitleaks-action@v2.3.9 (SHA ff98106e4c7b2bc287b24eaf42907196329070c7) to satisfy the compliance audit regex - Added GITLEAKS_LICENSE env var (free key required for org repos per gitleaks-action docs; set GITLEAKS_LICENSE as an org or repo secret) - fetch-depth: 0 ensures full git history is scanned - .gitleaksignore suppresses 7 confirmed false-positive findings in commit 865de69 (documentation paths containing "api-key" substring) Closes #96 Co-authored-by: don-petry <don-petry@users.noreply.github.com>
|
Warning Review limit reached
More reviews will be available in 58 minutes and 35 seconds. Learn how PR review limits work. Your organization has run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
Adds a GitHub Actions “secret-scan” job using gitleaks/gitleaks-action@v2.3.9 (SHA pinned) and introduces a .gitleaksignore file to suppress confirmed false positives so the new scan can run cleanly.
Changes:
- Adds
.gitleaksignoreentries for 7 reviewed false-positive findings. - Adds a
secret-scanjob to.github/workflows/ci.ymlusinggitleaks/gitleaks-action(SHA pinned) and full-history checkout.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| .gitleaksignore | Adds documented suppression fingerprints for known false positives. |
| .github/workflows/ci.yml | Adds a new secret-scan job using the gitleaks GitHub Action. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
Auto-rebase blocked — the base branch contains Please rebase this branch manually: |
The gitleaks/gitleaks-action requires a paid license for GitHub org repos. Switch to direct CLI install via wget + sha256 verification instead.
|
CI fix: replaced The
Also removed the now-unnecessary |
|
|
@claude Please address all open review comments on this PR from CodeRabbit and Copilot. |
|
Claude encountered an error —— View job I'll analyze this and get back to you. |
|
@dev-lead - please fix this PR |
Dev-Lead Fix CI — failedPR: #119 | SHA: |
|
|
Auto-rebase failed — merge conflict — this branch has conflicts with Please resolve the conflicts and push: |
|
Auto-rebase failed — merge conflict — this branch has conflicts with dev-lead will attempt to resolve this automatically. If it cannot, a follow-up comment will explain what needs manual attention. To resolve manually instead: |
|
Auto-rebase failed — merge conflict — this branch has conflicts with dev-lead will attempt to resolve this automatically. If it cannot, a follow-up comment will explain what needs manual attention. To resolve manually instead: |




Summary
secret-scanjob toci.ymlusinggitleaks/gitleaks-action@v2.3.9(SHA-pinned per the Action Pinning Policy).gitleaksignoreto suppress 7 confirmed false-positive findings in commit865de69b(documentation file paths containing the substringapi-key)Why this supersedes PR #107
PR #107 (still open) used direct binary install of gitleaks. The compliance audit check (
pp_check_secret_scan_ci_job) regex specifically looks foruses: gitleaks/gitleaks-action@— a binary install does not satisfy it. This PR uses the action.Action pinning
gitleaks/gitleaks-action:ff98106e4c7b2bc287b24eaf42907196329070c7(tagv2.3.9, verified viagh api repos/gitleaks/gitleaks-action/git/refs/tags/v2.3.9)actions/checkout:34e114876b0b11c390a56381ad16ebd13914f8d5(tagv4, same SHA used throughoutci.yml)Note on GITLEAKS_LICENSE
gitleaks-actionv2 requires a freeGITLEAKS_LICENSEkey for repos in a GitHub organization. Set this as an org or repo secret namedGITLEAKS_LICENSE(obtain one at gitleaks.io). Without it the CI job will fail with a license error.Closes #96
Generated with Claude Code