Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
89 changes: 46 additions & 43 deletions .github/workflows/dependency-scan.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Dependency Scan
name: OWASP Dependency Scan

on:
pull_request:
Expand All @@ -15,45 +15,48 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- name: Set up Rust
uses: dtolnay/rust-toolchain@stable

- name: Generate lockfile when missing
run: |
if [ ! -f Cargo.lock ]; then
cargo generate-lockfile
fi

- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "20"

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.11"

- name: Install OWASP scanning tools
run: |
npm install -g @cyclonedx/cdxgen
python -m pip install --upgrade pip
pip install owasp-depscan

- name: Create reports directory
run: mkdir -p reports

- name: Generate CycloneDX SBOM
run: cdxgen -t rust -o reports/sbom.json .

- name: Run OWASP dep-scan
run: depscan --bom reports/sbom.json --reports-dir reports

- name: Upload dependency scan reports
uses: actions/upload-artifact@v4
if: always()
with:
name: dependency-scan-reports
path: reports/
- uses: actions/checkout@v4

- name: Set up Rust
uses: dtolnay/rust-toolchain@stable

- name: Generate lockfile when missing
run: |
if [ ! -f Cargo.lock ]; then
cargo generate-lockfile
fi

- name: Build the project
run: cargo build --release --verbose

- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "24"

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.11"

- name: Install OWASP scanning tools
run: |
npm install -g @cyclonedx/cdxgen
python -m pip install --upgrade pip
pip install owasp-depscan

- name: Create reports directory
run: mkdir -p reports

- name: Generate CycloneDX SBOM
run: cdxgen -t rust -o reports/sbom.json .

- name: Run OWASP dep-scan
run: depscan --bom reports/sbom.json --reports-dir reports

- name: Upload dependency scan reports
uses: actions/upload-artifact@v4
if: always()
with:
name: dependency-scan-reports
path: reports/
Loading