Skip to content

feat: per-user API key for REST API authentication #450

feat: per-user API key for REST API authentication

feat: per-user API key for REST API authentication #450

Workflow file for this run

name: CVE Scanning
permissions:
contents: read
on:
push:
branches: ["main"]
pull_request:
branches: ["main"]
jobs:
grype-npm:
name: npm
runs-on: ubuntu-latest
permissions:
contents: read
security-events: write
steps:
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # ratchet:actions/checkout@v6
- name: Scan frontend
uses: anchore/scan-action@e1165082ffb1fe366ebaf02d8526e7c4989ea9d2 # ratchet:anchore/scan-action@v7
id: scan
with:
path: git-proxy-java-dashboard/frontend
fail-build: true
severity-cutoff: high
only-fixed: true
config: .grype.yaml
- name: Upload SARIF report
if: ${{ always() }}
uses: github/codeql-action/upload-sarif@68bde559dea0fdcac2102bfdf6230c5f70eb485e # ratchet:github/codeql-action/upload-sarif@v4
with:
sarif_file: ${{ steps.scan.outputs.sarif }}
- name: Generate table report
if: ${{ always() }}
run: |
export PATH="$(dirname $(find /opt/hostedtoolcache/grype -name grype -type f | head -1)):$PATH"
grype dir:git-proxy-java-dashboard/frontend \
--config .grype.yaml \
--only-fixed \
--output table | tee grype-npm-report.txt || true
- name: Upload scan reports
if: ${{ always() }}
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # ratchet:actions/upload-artifact@v7
with:
name: grype-npm-scan
path: |
grype-npm-report.txt
${{ steps.scan.outputs.json }}
retention-days: 30
grype-gradle:
name: Gradle
if: true
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # ratchet:actions/checkout@v6
- uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # ratchet:actions/setup-java@v5
with:
distribution: temurin
java-version: 25
cache: gradle
- name: Generate SBOM
run: ./gradlew cyclonedxBom -PskipFrontend
- name: Scan SBOM with Grype
uses: anchore/scan-action@e1165082ffb1fe366ebaf02d8526e7c4989ea9d2 # ratchet:anchore/scan-action@v7
id: scan
with:
sbom: build/reports/cyclonedx/bom.json
fail-build: true
severity-cutoff: high
only-fixed: true
config: .grype.yaml
- name: Generate table report
if: ${{ always() }}
run: |
export PATH="$(dirname $(find /opt/hostedtoolcache/grype -name grype -type f | head -1)):$PATH"
grype sbom:build/reports/cyclonedx/bom.json \
--config .grype.yaml \
--only-fixed \
--output table | tee grype-gradle-report.txt || true
- name: Upload scan reports
if: ${{ always() }}
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # ratchet:actions/upload-artifact@v7
with:
name: grype-gradle-scan
path: |
grype-gradle-report.txt
${{ steps.scan.outputs.json }}
retention-days: 30