Files
yale-user-access/.github/workflows/dep.yml
T
LiamPietralla 684b4241f7
Build and Publish / Build Yale Access Frontend (pull_request) Failing after 21s
Build and Publish / Push Yale Access Frontend Docker Image (pull_request) Skipped
Build and Publish / Build Yale Access Backend (pull_request) Successful in 2m4s
Build and Publish / Push Yale Access Backend Docker Image (pull_request) Skipped
revert runner back to main for dep check
2026-09-29 18:19:11 +10:00

68 lines
1.9 KiB
YAML

name: Dependency Tracking
on:
push:
branches:
- main
jobs:
sbom:
name: SBOM Generation and Upload
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Setup PNPM and Node
uses: pnpm/setup@v3
with:
working-directory: packages/frontend
runtime: node@22
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: '10.0.x'
- name: Install CycloneDX .NET tool
run: |
dotnet tool install --global CycloneDX
echo "$HOME/.dotnet/tools" >> "$GITHUB_PATH"
- name: Generate backend SBOM
run: dotnet-CycloneDX packages/backend/YaleAccess.sln -o . -fn sbom.backend.cyclonedx.json
- name: Generate frontend SBOM
working-directory: packages/frontend
run: |
pnpm install --frozen-lockfile
pnpm sbom --sbom-format cyclonedx --sbom-type application --out ../../sbom.frontend.cyclonedx.json
- name: Upload backend SBOM
uses: DependencyTrack/gh-upload-sbom@v4
with:
protocol: ${{ vars.DT_API_PROTOCOL }}
server-hostname: ${{ vars.DT_API_HOSTNAME }}
port: ${{ vars.DT_API_PORT }}
api-key: ${{ secrets.DT_API_KEY }}
project-name: 'YaleAccess Backend'
project-version: 'main'
parent-name: 'YaleAccess'
parent-version: 'main'
auto-create: true
bom-filename: 'sbom.backend.cyclonedx.json'
- name: Upload frontend SBOM
uses: DependencyTrack/gh-upload-sbom@v4
with:
protocol: ${{ vars.DT_API_PROTOCOL }}
server-hostname: ${{ vars.DT_API_HOSTNAME }}
port: ${{ vars.DT_API_PORT }}
api-key: ${{ secrets.DT_API_KEY }}
project-name: 'YaleAccess Frontend'
project-version: 'main'
parent-name: 'YaleAccess'
parent-version: 'main'
auto-create: true
bom-filename: 'sbom.frontend.cyclonedx.json'