zizmor.yml 1.6 KB

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