Class BowireReportReader
- Namespace
- Kuestenlogik.Bowire.Reporting
- Assembly
- Kuestenlogik.Bowire.dll
Reads the artefacts Bowire writes and folds them into per-service rows (#587).
Deliberately parses the file formats rather than deserialising into the producing packages' types. A rollup exists to answer a question across services, so the reports come from other repositories, other machines and other Bowire versions — assuming the package that wrote a report is loaded in the process reading it would defeat the purpose. It also means a field added upstream doesn't break the reader.
Format detection goes by content, not by file name: CI jobs name these
things whatever they like, and a results.json could be any of four
shapes.
public static class BowireReportReader
- Inheritance
-
BowireReportReader
- Inherited Members
Methods
ReadAsync(IEnumerable<string>, string?, CancellationToken)
Walk roots (files or directories) and assemble the
rollup. Every file is read independently: one unreadable or foreign
file lands in Skipped and the rest of the
portfolio still reports.
public static Task<BowireRollup> ReadAsync(IEnumerable<string> roots, string? serviceOverride = null, CancellationToken ct = default)
Parameters
rootsIEnumerable<string>Files or directories to read.
serviceOverridestringForce every report onto this service name.
ctCancellationTokenCancels the walk.