Skip to content

SBOM/VEX generation

SBOM/VEX generation #4

Workflow file for this run

name: SBOM/VEX generation
on:
workflow_dispatch:
jobs:
sbom-vex-scan:
name: SBOM/VEX Generation
runs-on: ubuntu-latest
container: quay.io/pluribus_one/sbom_vex_scanner:latest
strategy:
fail-fast: false
matrix:
prj_folder: [ "dvna", "vulnado" ]
steps:
- name: Checkout Repository
uses: actions/checkout@v3
- name: Generate SBOMs
run: |
cd vuln_apps/${{ matrix.prj_folder }}
cdxgen --format json -o "${{ matrix.prj_folder }}_bom.json" --spec-version=1.4
- name: Generate VEXs (JSON)
uses: aquasecurity/trivy-action@master
with:
scan-type: "sbom vuln_apps/${{ matrix.prj_folder }}/${{ matrix.prj_folder }}_bom.json"
format: "cyclonedx"
output: "vuln_apps/${{ matrix.prj_folder }}/${{ matrix.prj_folder }}_vex.json"
- name: Generate VEXs (Human)
uses: aquasecurity/trivy-action@master
with:
scan-type: "sbom vuln_apps/${{ matrix.prj_folder }}/${{ matrix.prj_folder }}_bom.json"
format: "table"
output: "vuln_apps/${{ matrix.prj_folder }}/${{ matrix.prj_folder }}_vex_human"
- name: Upload results
if: always()
uses: actions/upload-artifact@v3
with:
name: sbom-vex-jsons
path: vuln_apps/**/${{matrix.prj_folder}}_*
retention-days: 5