summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPedro Nacht <pedro.k.night@gmail.com>2022-11-04 16:58:23 -0300
committerGitHub <noreply@github.com>2022-11-04 20:58:23 +0100
commit2081f2997b3ff192604415587761ce1806dc20a8 (patch)
treec8b287094ed41d02dbf78f8d1a5db5fd71e72490
parentd2d6c39d73713cb922cec4b0f37db64d985b83a0 (diff)
downloadnumpy-2081f2997b3ff192604415587761ce1806dc20a8.tar.gz
ENH: Add OpenSSF Scorecard GitHub Action (#22482)
[skip azp][skip circle]
-rw-r--r--.github/workflows/scorecards.yml55
-rw-r--r--README.md2
2 files changed, 57 insertions, 0 deletions
diff --git a/.github/workflows/scorecards.yml b/.github/workflows/scorecards.yml
new file mode 100644
index 000000000..0cef4f7a9
--- /dev/null
+++ b/.github/workflows/scorecards.yml
@@ -0,0 +1,55 @@
+name: Scorecards 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: "19 23 * * 5"
+ push:
+ branches: ["main"]
+
+# Declare default permissions as read only.
+permissions: read-all
+
+jobs:
+ analysis:
+ name: Scorecards 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
+
+ steps:
+ - name: "Checkout code"
+ uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
+ with:
+ persist-credentials: false
+
+ - name: "Run analysis"
+ uses: ossf/scorecard-action@99c53751e09b9529366343771cc321ec74e9bd3d # v2.0.6
+ with:
+ results_file: results.sarif
+ results_format: sarif
+ # 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.
+ 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@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.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@807578363a7869ca324a79039e6db9c843e0e100 # v2.1.27
+ with:
+ sarif_file: results.sarif
diff --git a/README.md b/README.md
index 3367f2619..02f8f17fb 100644
--- a/README.md
+++ b/README.md
@@ -13,6 +13,8 @@ https://anaconda.org/conda-forge/numpy)
https://stackoverflow.com/questions/tagged/numpy)
[![Nature Paper](https://img.shields.io/badge/DOI-10.1038%2Fs41592--019--0686--2-blue)](
https://doi.org/10.1038/s41586-020-2649-2)
+[![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/numpy/numpy/badge)](https://api.securityscorecards.dev/projects/github.com/numpy/numpy)
+
NumPy is the fundamental package for scientific computing with Python.