zizmor.yml 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. name: Zizmor Actions Scanner
  2. on:
  3. push:
  4. branches: ["main"]
  5. pull_request:
  6. branches: ["**"]
  7. permissions:
  8. contents: read
  9. jobs:
  10. detect-noop:
  11. permissions:
  12. actions: write # for fkirc/skip-duplicate-actions to skip or stop workflow runs
  13. contents: read # for fkirc/skip-duplicate-actions to read and compare commits
  14. runs-on: ubuntu-latest
  15. outputs:
  16. noop: ${{ steps.noop.outputs.should_skip }}
  17. steps:
  18. - uses: step-security/harden-runner@05e31511f85b41b11d1cf0ef85d0992719546e2c # v2.21.0
  19. with:
  20. egress-policy: audit
  21. - name: Detect No-op Changes
  22. id: noop
  23. uses: fkirc/skip-duplicate-actions@b974a9395958c231af965b70070979a577efa578 # v5.3.2
  24. with:
  25. github_token: ${{ secrets.GITHUB_TOKEN }}
  26. paths_ignore: '["**.md", "**.png", "**.jpg"]'
  27. do_not_skip: '["workflow_dispatch", "schedule", "push"]'
  28. concurrent_skipping: false
  29. zizmor:
  30. name: Run zizmor 🌈
  31. runs-on: ubuntu-latest
  32. needs: detect-noop
  33. if: needs.detect-noop.outputs.noop != 'true'
  34. permissions:
  35. security-events: write
  36. steps:
  37. - name: Checkout repository
  38. uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
  39. with:
  40. persist-credentials: false
  41. - name: Run zizmor 🌈
  42. uses: zizmorcore/zizmor-action@3dc1ecc9bcb9e94e9b2c709687979e1298497054 # v0.6.2
  43. with:
  44. inputs: |
  45. .github/
  46. token: ${{ github.token }}
  47. # min-severity: medium
  48. # min-confidence: medium