Testflinger
Testflinger is a system for orchestrating time-shared access to a pool of target machines.
Shipped contributions
-
merged feat: add human-readable duration format support for reservation timeouts canonical/testflinger
Adds a duration parser in `testflinger-common` and a `DurationField` on the server's `ReserveData.timeout` schema, so job YAML can use `timeout: 2h30m` alongside the legacy integer-seconds value. Fixes `#121`.
→ Read the post -
Extends `testflinger-cli queue-status` with job rollups (waiting / running / completed) plus `--verbose` for individual job IDs and `--json` for machine-readable output. Fixes `#116`.
→ Read the post -
Reworks `do_poll()`'s queue-position output: position 0 now reads "Queue position: next in line" and mid-queue reads "Queue position: 3 (jobs ahead: 2)". Fixes `#461`.
→ Read the post -
open fix(agent): handle None response from retry exhaustion to prevent crashes canonical/testflinger
Splits the `None` (retry exhaustion) and `Response(status>=400)` cases across five client methods, so the agent stops crashing on sustained 503 storms. Fixes `#438`. Currently open.