26 lines
1.4 KiB
Markdown
26 lines
1.4 KiB
Markdown
# AOC Analyzer CI Contract (DEVOPS-AOC-19-001)
|
|
|
|
## Scope
|
|
Integrate AOC Roslyn analyzer and guard tests into CI to block banned writes in ingestion projects.
|
|
|
|
## Steps
|
|
1) Restore & build analyzers
|
|
- `dotnet restore src/Aoc/__Analyzers/StellaOps.Aoc.Analyzers/StellaOps.Aoc.Analyzers.csproj`
|
|
- `dotnet build src/Aoc/__Analyzers/StellaOps.Aoc.Analyzers/StellaOps.Aoc.Analyzers.csproj -c Release`
|
|
2) Run analyzer on ingestion projects (Authority/Concelier/Excititor ingest paths)
|
|
- `dotnet build src/Concelier/StellaOps.Concelier.Ingestion/StellaOps.Concelier.Ingestion.csproj -c Release /p:RunAnalyzers=true /p:TreatWarningsAsErrors=true`
|
|
- `dotnet build src/Authority/StellaOps.Authority.Ingestion/StellaOps.Authority.Ingestion.csproj -c Release /p:RunAnalyzers=true /p:TreatWarningsAsErrors=true`
|
|
- `dotnet build src/Excititor/StellaOps.Excititor.Ingestion/StellaOps.Excititor.Ingestion.csproj -c Release /p:RunAnalyzers=true /p:TreatWarningsAsErrors=true`
|
|
3) Guard tests
|
|
- `dotnet test src/Aoc/__Tests/StellaOps.Aoc.Analyzers.Tests/StellaOps.Aoc.Analyzers.Tests.csproj -c Release`
|
|
4) Artefacts
|
|
- Upload `.artifacts/aoc-analyzer.log` and test TRX.
|
|
|
|
## Determinism/Offline
|
|
- Use local feeds (`local-nugets/`); no external fetches post-restore.
|
|
- Build with `/p:ContinuousIntegrationBuild=true`.
|
|
|
|
## Acceptance
|
|
- CI fails on any analyzer warning in ingestion projects.
|
|
- Tests pass; artefacts uploaded.
|