Pin oxygenflow 08d0082d: artifacts when "always" 336c953a020f
The hub now parses when "always" on an artifact and tells the runner, so a failing job keeps a test report (oxygenflow#37); the failing-job test declares it.
- Author
- Andy McCall @andymccall <[email protected]>
- When
- · 2026-10-06 18:07 UTC
- Signature
- ✔ signed by Andy McCall
- Hash
336c953a020f9376fcc43f205e1d11763241c476674d6211fcf37a9562c329b3- Depends on
- 1f78655a0466 380996db84e5 42fa95540468 d29070faef66
- Depended on by
- 4bae285c6ed8
- In bookmarks
- api-unknown-fields cancel-landed-runs clear-waiting close-proposal-140 diffusion-pin-bookmark draft-ready image-check job-waits main oh-comment-body-file proposal-list-fast run-one-job wiki-says-so
- In tags
- v0.4.1 v0.4.2 v0.5.0 v0.5.1 v0.5.2 v0.6.0 v0.6.1 v0.7.0 v0.8.0 v0.9.0 v0.9.1 v0.9.11 v0.9.15 v0.9.16 v0.9.19 v0.9.2 v0.9.20 v0.9.21 v0.9.22 v0.9.23 v0.9.24 v0.9.3 v0.9.4 v0.9.5 v0.9.6 v0.9.7 v0.9.8 v0.9.9
- Edits
- 4 atoms, 0 tree operations, 2 files
Browse the tree at this change
modified crates/hub/tests/flow.rs +2 −1
| … | 949 unchanged lines |
||
| 950 | 950 | work.path(), |
|
| 951 | 951 | ".flow/pipeline.kdl", |
|
| 952 | 952 | &format!( |
|
| 953 | - | "schema-version 1\nsandbox \"alpine\" {{\n rootfs \"cas://blob/{ROOTFS}\"\n}}\njob \"test\" {{\n sandbox \"alpine\"\n exec \"make\" \"test\"\n output {{\n artifact \"junit\" {{\n path \"/src/out/junit.xml\"\n }}\n }}\n}}\n" |
|
| 953 | + | "schema-version 1\nsandbox \"alpine\" {{\n rootfs \"cas://blob/{ROOTFS}\"\n}}\njob \"test\" {{\n sandbox \"alpine\"\n exec \"make\" \"test\"\n output {{\n artifact \"junit\" {{\n path \"/src/out/junit.xml\"\n when \"always\"\n }}\n }}\n}}\n" |
|
| 954 | 954 | ), |
|
| 955 | 955 | ); |
|
| 956 | 956 | c.snapshot("test").unwrap(); |
|
| … | 1 unchanged lines |
||
| 958 | 958 | assert!(c.push("origin", false).unwrap().iter().all(|r| r.ok)); |
|
| 959 | 959 | let run = runs_of(&h.app, "andy", "demo").await.remove(0); |
|
| 960 | 960 | let a = claim(&h.app).await.unwrap(); |
|
| 961 | + | assert_eq!(a["job"]["outputs"][0]["always"], true, "the runner is told to keep it from a failing job"); |
|
| 961 | 962 | let id = a["job_id"].as_i64().unwrap(); |
|
| 962 | 963 | let (st, text) = upload(&h.app, id, "junit", b"<testsuites/>").await; |
|
| 963 | 964 | assert_eq!(st, StatusCode::OK, "{text}"); |
|
| … | 1204 unchanged lines |
replaced deps/oxygenflow +0 −0
No line changes.