You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Make system test run directories portable for CI artifact replay
Use relative Docker Compose paths, generate rerun_systemtest.sh in each
run folder, default TUTORIALS_REF to develop, and document replay from
system_tests_run_*_full artifacts. Closes#387.
- System test run directories use relative Docker Compose paths and include a `rerun_systemtest.sh` script so CI artifacts can be downloaded and replayed locally (Closes #387).
Copy file name to clipboardExpand all lines: tools/tests/README.md
+50-1Lines changed: 50 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -104,9 +104,58 @@ In this case, building and running seems to work out, but the tests fail because
104
104
## Understanding what went wrong
105
105
106
106
The easiest way to debug a systemtest run is first to have a look at the output written into the action on GitHub.
107
-
If this does not provide enough hints, the next step is to download the generated `system_tests_run_<run_id>_<run_attempt>` artifact. Note that by default this will only be generated if the systemtests fail.
107
+
If this does not provide enough hints, the next step is to download the generated `system_tests_run_<run_id>_<run_attempt>_full` artifact (a smaller `_logs` archive contains only log files). Note that by default this will only be generated if the systemtests fail.
108
108
Inside the archive, a test-specific subfolder like `flow-over-heated-plate_fluid-openfoam-solid-fenics_2023-11-19-211723` contains two log files: `system-tests-stderr.log` and `system-tests-stdout.log`. This can be a starting point fora further investigation. When fieldcompare runs with `--diff`, it writes VTK diff files under `precice-exports/`; if the comparison fails, those files are copied into a `diff-results/` subfolderin the same run directory (mirroring any subpaths under `precice-exports/`) so you can open them (e.g. in ParaView) to see where results differ from the reference. On successful comparisons, `diff-results/` is therefore absent.
109
109
110
+
### Re-running system tests from CI artifacts
111
+
112
+
Download the **full** artifact from a failed (or manually uploaded) workflow run:
113
+
114
+
`system_tests_run_<run_id>_<run_attempt>_full`
115
+
116
+
The archive contains a `runs/` directory shared by all system tests from that run:
117
+
118
+
```text
119
+
runs/
120
+
├── tools/ # Dockerfiles and helpers (shared)
121
+
└── <tutorial>_<cases>_<timestamp>/ # one folder per system test
122
+
├── docker-compose.tutorial.yaml
123
+
├── docker-compose.field_compare.yaml # if fieldcompare ran
124
+
├── rerun_systemtest.sh
125
+
└── …
126
+
```
127
+
128
+
To re-run one test locally:
129
+
130
+
1. Download and extract `system_tests_run_<run_id>_<run_attempt>_full.zip`.
131
+
2. Keep the `runs/` layout intact (the tutorial folder needs the sibling `tools/` directory):
0 commit comments