pom: rename stale run-ci.sh references in the SSH test-runner
The astra CI retirement (mnw@de117165) dropped run-ci.sh; the tests check
now runs `cargo test --workspace` over SSH for the mt/go/bb/af/sk targets.
Reword the parse.rs doc/comment and architecture.md to describe the actual
command instead of the deleted script. No behavior change.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2 files changed,
+5 insertions,
-4 deletions
| 174 |
174 |
|
|
| 175 |
175 |
|
### SSH Test Runner
|
| 176 |
176 |
|
|
| 177 |
|
- |
Executes a configured command on a remote host via `ssh -o BatchMode=yes`. The command string comes from config (typically a CI script like `./run-ci.sh`). Supports an optional filter argument (validated to `[a-zA-Z0-9_:-]` to prevent injection). Output is parsed for PASS/FAIL step lines and `test result:` cargo test summary lines.
|
|
177 |
+ |
Executes a configured command on a remote host via `ssh -o BatchMode=yes`. The command string comes from config (today, `cargo test --workspace` run against a staging checkout). Supports an optional filter argument (validated to `[a-zA-Z0-9_:-]` to prevent injection). Output is parsed for PASS/FAIL step lines and `test result:` cargo test summary lines.
|
| 178 |
178 |
|
|
| 179 |
179 |
|
## Key Design Decisions
|
| 180 |
180 |
|
|
| 3 |
3 |
|
|
| 4 |
4 |
|
use crate::types::{StepResult, TestDetail, TestSummary};
|
| 5 |
5 |
|
|
| 6 |
|
- |
/// Parse run-ci.sh output into a structured TestSummary.
|
|
6 |
+ |
/// Parse remote test-command output into a structured TestSummary.
|
| 7 |
7 |
|
///
|
|
8 |
+ |
/// The command is whatever a target configures (today, `cargo test` over SSH).
|
| 8 |
9 |
|
/// Looks for:
|
| 9 |
|
- |
/// - `PASS <step name>` / `FAIL <step name>` lines from the CI summary
|
|
10 |
+ |
/// - `PASS <step name>` / `FAIL <step name>` step-summary lines
|
| 10 |
11 |
|
/// - `test result: ok. N passed; M failed` lines from cargo test
|
| 11 |
12 |
|
/// - `test <name> ... ok` / `test <name> ... FAILED` individual test lines
|
| 12 |
13 |
|
pub fn parse_ci_output(output: &str) -> TestSummary {
|
| 18 |
19 |
|
for line in output.lines() {
|
| 19 |
20 |
|
let trimmed = line.trim();
|
| 20 |
21 |
|
|
| 21 |
|
- |
// Parse PASS/FAIL lines from run-ci.sh summary
|
|
22 |
+ |
// Parse PASS/FAIL step-summary lines (if the command emits them)
|
| 22 |
23 |
|
if let Some(name) = trimmed.strip_prefix("PASS ") {
|
| 23 |
24 |
|
steps.push(StepResult {
|
| 24 |
25 |
|
name: name.trim().to_string(),
|