Commit eab4e00
authored
Produce test-output.json even when a test leg fails (#5806)
We upload test-output.json (the concatenated gotestsum output) as a CI
artifact to inspect results and timing after the fact, most importantly
when a test fails. But the file is produced by a `cat` in the `test`
task's `cmds`, which is skipped when a `deps` leg fails, so on a failed
run the file is never written and the upload finds nothing. This moves
the `cat` (in both `test` and `test-unit`) into a `defer:`, which runs
even after a leg fails, so the artifact is always produced. The task
still exits non-zero, so CI failures are unaffected.
For the defer to have something to concatenate, the legs now run as
sequential `cmds` rather than parallel `deps`. An A/B CI run (#5802)
showed no timing regression (serial was equal or faster on 5 of 6 matrix
cells). Both legs already saturate the runners, so running them in
parallel mostly just created core contention.
This pull request and its description were written by Isaac.1 parent 20d48c7 commit eab4e00
1 file changed
Lines changed: 13 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
385 | 385 | | |
386 | 386 | | |
387 | 387 | | |
388 | | - | |
389 | | - | |
390 | | - | |
391 | | - | |
392 | | - | |
| 388 | + | |
| 389 | + | |
| 390 | + | |
| 391 | + | |
393 | 392 | | |
394 | 393 | | |
395 | 394 | | |
396 | 395 | | |
397 | 396 | | |
398 | 397 | | |
399 | | - | |
| 398 | + | |
| 399 | + | |
| 400 | + | |
| 401 | + | |
| 402 | + | |
400 | 403 | | |
401 | 404 | | |
402 | 405 | | |
403 | | - | |
404 | 406 | | |
405 | 407 | | |
406 | 408 | | |
407 | 409 | | |
408 | 410 | | |
409 | 411 | | |
410 | 412 | | |
411 | | - | |
| 413 | + | |
| 414 | + | |
| 415 | + | |
| 416 | + | |
412 | 417 | | |
413 | 418 | | |
414 | 419 | | |
| |||
0 commit comments