| # This workflow uses actions that are not certified by GitHub. They are provided |
| # by a third-party and are governed by separate terms of service, privacy |
| # policy, and support documentation. |
| |
| name: Scorecard supply-chain security |
| on: |
| # For Branch-Protection check. Only the default branch is supported. See |
| # https://github.com/ossf/scorecard/blob/main/docs/checks.md#branch-protection |
| branch_protection_rule: |
| # To guarantee Maintained check is occasionally updated. See |
| # https://github.com/ossf/scorecard/blob/main/docs/checks.md#maintained |
| schedule: |
| - cron: '23 21 * * 1' |
| push: |
| branches: [ "master" ] |
| |
| concurrency: |
| group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event_name }} |
| cancel-in-progress: ${{ github.event_name == 'pull_request' }} |
| |
| # Declare default permissions as read only. |
| permissions: read-all |
| |
| jobs: |
| analysis: |
| name: Scorecard analysis |
| runs-on: ubuntu-latest |
| permissions: |
| # Needed to upload the results to code-scanning dashboard. |
| security-events: write |
| # Needed to publish results and get a badge (see publish_results below). |
| id-token: write |
| # Uncomment the permissions below if installing in a private repository. |
| # contents: read |
| # actions: read |
| |
| steps: |
| - name: "Checkout code" |
| uses: actions/checkout@v4 # v3.1.0 |
| with: |
| persist-credentials: false |
| |
| - name: "Run analysis" |
| uses: ossf/scorecard-action@62b2cac7ed8198b15735ed49ab1e5cf35480ba46 # v2.4.0 |
| with: |
| results_file: results.sarif |
| results_format: sarif |
| # (Optional) "write" PAT token. Uncomment the `repo_token` line below if: |
| # - you want to enable the Branch-Protection check on a *public* repository, or |
| # - you are installing Scorecard on a *private* repository |
| # To create the PAT, follow the steps in https://github.com/ossf/scorecard-action#authentication-with-pat. |
| # repo_token: ${{ secrets.SCORECARD_TOKEN }} |
| |
| # Public repositories: |
| # - Publish results to OpenSSF REST API for easy access by consumers |
| # - Allows the repository to include the Scorecard badge. |
| # - See https://github.com/ossf/scorecard-action#publishing-results. |
| # For private repositories: |
| # - `publish_results` will always be set to `false`, regardless |
| # of the value entered here. |
| publish_results: true |
| |
| # Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF |
| # format to the repository Actions tab. |
| - name: "Upload artifact" |
| uses: actions/upload-artifact@c7d193f32edcb7bfad88892161225aeda64e9392 # v4.0.0 |
| with: |
| name: SARIF file |
| path: results.sarif |
| retention-days: 5 |
| |
| # Upload the results to GitHub's code scanning dashboard. |
| - name: "Upload to code-scanning" |
| uses: github/codeql-action/upload-sarif@17573ee1cc1b9d061760f3a006fc4aac4f944fd5 # v2.2.4 |
| with: |
| sarif_file: results.sarif |