|  | # 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: '18 9 * * 4' | 
|  | push: | 
|  | branches: [ "master" ] | 
|  |  | 
|  | # 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: Harden Runner | 
|  | uses: step-security/harden-runner@f4a75cfd619ee5ce8d5b864b0d183aff3c69b55a # v2.13.1 | 
|  | with: | 
|  | egress-policy: audit | 
|  |  | 
|  | - name: "Checkout code" | 
|  | uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 | 
|  | with: | 
|  | persist-credentials: false | 
|  |  | 
|  | - name: "Run analysis" | 
|  | uses: ossf/scorecard-action@4eaacf0543bb3f2c246792bd56e8cdeffafb205a # v2.4.3 | 
|  | 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@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 | 
|  | 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@3599b3baa15b485a2e49ef411a7a4bb2452e7f93 # v3.29.5 | 
|  | with: | 
|  | sarif_file: results.sarif |