Skip to content

Gitleaks Secrets Scanner

Gitleaks Secrets Scanner - Reusable Workflow

Runs the Gitleaks scanner via the argus Python CLI. Equivalent to: python -m argus scan gitleaks

Note: Uses fetch-depth: 0 for full git history scanning.

For GHES users: Use the composite action directly instead of this workflow. See: examples/github-enterprise/sast-only.yml

uses: huntridge-labs/argus/.github/workflows/scanner-gitleaks.yml@1.12.2

Triggers

  • Manual dispatch
  • Reusable (called by other workflows)

Permissions

Scope Access
contents read
security-events write
actions read
pull-requests write

Inputs

Input Description Required Default
allow_failure When true (default) the scan never fails the job (non-blocking); when false, a scan crash or a fail_on_severity breac... boolean No True
post_pr_comment Whether to post PR comments boolean No True
enable_code_security Whether GitHub Code Security is enabled for this repository boolean No False
fail_on_severity Fail the job if secrets are found. Gitleaks does not support severity-based filtering - any value other than "none" w... string No none

Gitleaks Options

Input Description Required Default
gitleaks_enable_comments Enable GitLeaks inline PR comments (requires GITLEAKS_LICENSE) boolean No True
gitleaks_notify_user_list Comma-separated list of GitHub usernames to notify on secret detection (e.g., "@user1,@user2") string No โ€”
gitleaks_enable_summary Enable GitLeaks job summary boolean No True
gitleaks_enable_upload_artifact Enable uploading SARIF artifact when secrets are detected boolean No True
gitleaks_config Path to a gitleaks configuration file (e.g., "path/to/gitleaks.toml") string No โ€”

Secrets

Secret Description Required
GITLEAKS_LICENSE License key for GitLeaks scans within a Github Organization. Obtain from https://gitleaks.io No

Jobs

secrets-detection โ€” Secrets Detection - Gitleaks

Runs on: ubuntu-latest ยท Timeout: 10 minutes ยท Continue on error: Yes

Steps:

  1. Checkout repository โ€” actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1
  2. Set up Python โ€” actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97
  3. Install Argus โ€” huntridge-labs/argus/.github/actions/setup-argus@1.12.2
  4. Run scan
  5. Upload artifacts โ€” actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a
  6. Build scanner summary
  7. Upload scanner summary โ€” actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a
  8. Upload SARIF โ€” github/codeql-action/upload-sarif@99df26d4f13ea111d4ec1a7dddef6063f76b97e9
  9. Comment PR with results โ€” huntridge-labs/argus/.github/actions/comment-pr@1.12.2