feat(observability): add business-level metric counters and logging f… #13
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Dependency Audit | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| env: | |
| FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true | |
| jobs: | |
| audit-nuget: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Setup .NET | |
| uses: actions/setup-dotnet@v5 | |
| with: | |
| dotnet-version: 10.0.x | |
| - name: Restore (locked) | |
| run: dotnet restore --locked-mode | |
| - name: Audit NuGet dependencies | |
| run: | | |
| set -o pipefail | |
| dotnet list package --vulnerable --include-transitive 2>&1 | tee audit.log | |
| if grep -q "has the following vulnerable packages" audit.log; then | |
| echo "::error::Vulnerable NuGet packages detected" | |
| exit 1 | |
| fi | |
| audit-pnpm: | |
| runs-on: ubuntu-latest | |
| defaults: | |
| run: | |
| working-directory: src/Gatherstead.Web | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Setup pnpm | |
| uses: pnpm/action-setup@v6 | |
| with: | |
| version: '10.33.0' | |
| - name: Setup Node | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version: '24' | |
| cache: pnpm | |
| cache-dependency-path: src/Gatherstead.Web/pnpm-lock.yaml | |
| - name: Install (frozen lockfile) | |
| run: pnpm install --frozen-lockfile | |
| - name: Audit pnpm dependencies | |
| run: pnpm audit --audit-level=high | |
| dependency-review: | |
| if: github.event_name == 'pull_request' | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: actions/dependency-review-action@v4 | |
| with: | |
| fail-on-severity: high |