# Concelier CI Runner Harness (DEVOPS-CONCELIER-CI-24-101) Purpose: provide a deterministic, offline-friendly harness that restores, builds, and runs Concelier WebService + Storage Mongo tests with warmed NuGet cache and TRX/binlog artefacts for downstream sprints (Concelier II/III). Usage - From repo root run: `ops/devops/concelier-ci-runner/run-concelier-ci.sh` - Outputs land in `ops/devops/artifacts/concelier-ci//`: - `build.binlog` (solution build) - `tests/webservice.trx`, `tests/storage.trx` (VSTest results) - per-project `.dmp`/logs if failures occur - `summary.json` (paths + hashes) Environment - Defaults: `DOTNET_CLI_TELEMETRY_OPTOUT=1`, `DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1`, `NUGET_PACKAGES=$REPO/.nuget/packages`. - Uses local feed `local-nugets/` first, then NuGet.org (can be overridden via `NUGET_SOURCES`). - No external services required; Mongo2Go provides ephemeral Mongo for tests. What it does 1) Warm NuGet cache from `local-nugets/` into `$NUGET_PACKAGES` for offline/air-gap parity. 2) `dotnet restore` + `dotnet build` on `concelier-webservice.slnf` with `/bl`. 3) Run WebService and Storage.Mongo test projects with TRX output and without rebuild (`--no-build`). 4) Emit a concise `summary.json` listing artefacts and SHA256s for reproducibility. Notes - Keep test filters narrow if you need faster runs; edit `TEST_FILTER` env var (default empty = run all tests). - Artefacts are timestamped UTC to keep ordering deterministic in pipelines; consumers should sort by path.