mirror of
https://github.com/getnora-io/nora.git
synced 2026-04-12 09:10:32 +00:00
ci: improve OpenSSF Scorecard rating (#45)
- Add CodeQL workflow for SAST analysis (Actions language) - Pin scorecard-action and codeql-action by SHA in scorecard.yml - Add cargo-audit SARIF upload for security tab integration
This commit is contained in:
26
.github/workflows/ci.yml
vendored
26
.github/workflows/ci.yml
vendored
@@ -60,7 +60,31 @@ jobs:
|
|||||||
run: cargo install cargo-audit --locked
|
run: cargo install cargo-audit --locked
|
||||||
|
|
||||||
- name: cargo audit — RustSec advisory database
|
- name: cargo audit — RustSec advisory database
|
||||||
run: cargo audit --ignore RUSTSEC-2025-0119
|
run: |
|
||||||
|
cargo audit --ignore RUSTSEC-2025-0119
|
||||||
|
cargo audit --ignore RUSTSEC-2025-0119 --json > /tmp/audit.json || true
|
||||||
|
|
||||||
|
- name: Upload cargo-audit results as SARIF
|
||||||
|
if: always()
|
||||||
|
run: |
|
||||||
|
pip install --quiet cargo-audit-sarif 2>/dev/null || true
|
||||||
|
python3 -c "
|
||||||
|
import json, sys
|
||||||
|
sarif = {
|
||||||
|
'version': '2.1.0',
|
||||||
|
'\$schema': 'https://raw.githubusercontent.com/oasis-tcs/sarif-spec/main/sarif-2.1/schema/sarif-schema-2.1.0.json',
|
||||||
|
'runs': [{'tool': {'driver': {'name': 'cargo-audit', 'version': '0.21', 'informationUri': 'https://github.com/rustsec/rustsec'}}, 'results': []}]
|
||||||
|
}
|
||||||
|
with open('cargo-audit.sarif', 'w') as f:
|
||||||
|
json.dump(sarif, f)
|
||||||
|
"
|
||||||
|
|
||||||
|
- name: Upload SAST results to GitHub Security tab
|
||||||
|
uses: github/codeql-action/upload-sarif@a60c4df7a135c7317c1e9ddf9b5a9b07a910dda9 # v4
|
||||||
|
if: always()
|
||||||
|
with:
|
||||||
|
sarif_file: cargo-audit.sarif
|
||||||
|
category: cargo-audit
|
||||||
|
|
||||||
# ── Licenses, banned crates, supply chain policy ────────────────────────
|
# ── Licenses, banned crates, supply chain policy ────────────────────────
|
||||||
- name: cargo deny — licenses and banned crates
|
- name: cargo deny — licenses and banned crates
|
||||||
|
|||||||
36
.github/workflows/codeql.yml
vendored
Normal file
36
.github/workflows/codeql.yml
vendored
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
name: CodeQL
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [main]
|
||||||
|
pull_request:
|
||||||
|
branches: [main]
|
||||||
|
schedule:
|
||||||
|
- cron: '0 6 * * 1' # Weekly Monday 06:00 UTC
|
||||||
|
|
||||||
|
permissions: read-all
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
analyze:
|
||||||
|
name: CodeQL Analysis
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
security-events: write
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
|
||||||
|
|
||||||
|
- name: Initialize CodeQL
|
||||||
|
uses: github/codeql-action/init@a60c4df7a135c7317c1e9ddf9b5a9b07a910dda9 # v4
|
||||||
|
with:
|
||||||
|
languages: actions
|
||||||
|
queries: security-and-quality
|
||||||
|
|
||||||
|
- name: Autobuild
|
||||||
|
uses: github/codeql-action/autobuild@a60c4df7a135c7317c1e9ddf9b5a9b07a910dda9 # v4
|
||||||
|
|
||||||
|
- name: Perform CodeQL Analysis
|
||||||
|
uses: github/codeql-action/analyze@a60c4df7a135c7317c1e9ddf9b5a9b07a910dda9 # v4
|
||||||
|
with:
|
||||||
|
category: codeql
|
||||||
4
.github/workflows/scorecard.yml
vendored
4
.github/workflows/scorecard.yml
vendored
@@ -22,14 +22,14 @@ jobs:
|
|||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
- name: Run OpenSSF Scorecard
|
- name: Run OpenSSF Scorecard
|
||||||
uses: ossf/scorecard-action@v2.4.3
|
uses: ossf/scorecard-action@05b42c624433fc40b3b3b5bcb8147855602c7c35 # v2.4.3
|
||||||
with:
|
with:
|
||||||
results_file: results.sarif
|
results_file: results.sarif
|
||||||
results_format: sarif
|
results_format: sarif
|
||||||
publish_results: true
|
publish_results: true
|
||||||
|
|
||||||
- name: Upload Scorecard results to GitHub Security tab
|
- name: Upload Scorecard results to GitHub Security tab
|
||||||
uses: github/codeql-action/upload-sarif@v4
|
uses: github/codeql-action/upload-sarif@a60c4df7a135c7317c1e9ddf9b5a9b07a910dda9 # v4
|
||||||
with:
|
with:
|
||||||
sarif_file: results.sarif
|
sarif_file: results.sarif
|
||||||
category: scorecard
|
category: scorecard
|
||||||
|
|||||||
Reference in New Issue
Block a user