Scanner CI Runner Harness (DEVOPS-SCANNER-CI-11-001)
Purpose: deterministic, offline-friendly harness that restores, builds, and exercises the Scanner analyzers + WebService/Worker tests with warmed NuGet cache and TRX/binlog outputs.
Usage
- From repo root run:
ops/devops/scanner-ci-runner/run-scanner-ci.sh - Outputs land in
ops/devops/artifacts/scanner-ci/<UTC timestamp>/:build.binlog(solution build)tests/*.trxfor grouped test runssummary.jsonlisting artefact paths and SHA256s
Environment
- Defaults:
DOTNET_CLI_TELEMETRY_OPTOUT=1,DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1,NUGET_PACKAGES=$REPO/.nuget/packages. - Sources:
NUGET_SOURCES(semicolon-separated) defaults tolocal-nugetsthen warmed cache; no internet required when cache is primed. TEST_FILTERcan narrow tests (empty = all).
What it does
- Warm NuGet cache from
local-nugets/into$NUGET_PACKAGES. dotnet restore+dotnet buildonsrc/Scanner/StellaOps.Scanner.slnwith/bl.- Run Scanner test buckets (core/analyzers/web/worker) with TRX outputs; buckets can be adjusted via
TEST_FILTERor script edits. - Emit
summary.jsonwith artefact paths/hashes for reproducibility.
Notes
- Buckets are ordered to keep runtime predictable; adjust filters to target a subset when iterating.
- Timestamped output directories keep ordering deterministic in offline pipelines.