Skip to content

Commit c2b31f3

Browse files
authored
Merge pull request #38 from Avicted/recover-work
Add reviewer quick start commands for Linux and Win64 bundles
2 parents f3f31da + 6c40649 commit c2b31f3

File tree

2 files changed

+78
-0
lines changed

2 files changed

+78
-0
lines changed

docs/release_artifacts.md

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,52 @@ python tools\release_audit.py
5858

5959
The GitHub Release workflow runs the packaged simulator audit in both the Linux and Win64 jobs before uploading artifacts. Those CI audits use `--skip-visualizer` because hosted runners are headless.
6060

61+
## Reviewer quick start
62+
63+
The released binaries are command-line tools. Running them with no arguments prints usage; reviewers should use the exact commands below.
64+
65+
Linux bundle review:
66+
67+
```bash
68+
cd engine-control-test-rig-simulator-linux-x64
69+
70+
./run-testrig.sh --version
71+
./run-testrig.sh --run-all
72+
./run-testrig.sh --script scenarios/normal_operation.txt --json
73+
./run-visualizer.sh visualization/scenarios.json
74+
python3 tools/release_audit.py --bundle-dir .
75+
```
76+
77+
Win64 bundle review on Windows:
78+
79+
```powershell
80+
cd engine-control-test-rig-simulator-win64
81+
82+
.\testrig.exe --version
83+
.\testrig.exe --run-all
84+
.\testrig.exe --script scenarios\normal_operation.txt --json
85+
.\visualizer.exe visualization\scenarios.json
86+
py -3 tools\release_audit.py
87+
```
88+
89+
Win64 bundle review on Linux with Wine:
90+
91+
```bash
92+
cd engine-control-test-rig-simulator-win64
93+
94+
wine ./testrig.exe --version
95+
wine ./testrig.exe --run-all
96+
wine ./testrig.exe --script scenarios/normal_operation.txt --json
97+
wine ./visualizer.exe visualization/scenarios.json
98+
python3 tools/release_audit.py --bundle-dir . --command-prefix wine --skip-visualizer --skip-visualization-regeneration
99+
```
100+
101+
Reviewer notes:
102+
103+
- The Linux bundle uses `run-testrig.sh` and `run-visualizer.sh` as the supported entry points because they set `LD_LIBRARY_PATH` for the bundled runtime library directory.
104+
- The Win64 bundle does not include `run-*.sh` wrappers. On Windows, launch the `.exe` files directly; on Linux, launch them with `wine`.
105+
- The visualizer always needs at least one JSON input path, and the shipped bundle is `visualization/scenarios.json`.
106+
61107
## Local artifact testing
62108

63109
Local artifact testing exercises the packaged bundles, not just the build tree:

tools/package_release.py

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,25 @@ def write_run_notes(destination: Path,
101101
visualizer_cmd = f".\\{visualizer_name} visualization\\scenarios.json"
102102
audit_cmd = "py -3 tools\\release_audit.py"
103103

104+
linux_review_cmds = [
105+
"./run-testrig.sh --version" if has_linux_launchers else f"./{testrig_name} --version",
106+
"./run-testrig.sh --run-all" if has_linux_launchers else f"./{testrig_name} --run-all",
107+
"./run-testrig.sh --script scenarios/normal_operation.txt --json" if has_linux_launchers else f"./{testrig_name} --script scenarios/normal_operation.txt --json",
108+
"./run-visualizer.sh visualization/scenarios.json" if has_linux_launchers else f"./{visualizer_name} visualization/scenarios.json",
109+
]
110+
windows_review_cmds = [
111+
f".\\{testrig_name} --version",
112+
f".\\{testrig_name} --run-all",
113+
f".\\{testrig_name} --script scenarios\\normal_operation.txt --json",
114+
f".\\{visualizer_name} visualization\\scenarios.json",
115+
]
116+
wine_review_cmds = [
117+
"wine ./testrig.exe --version",
118+
"wine ./testrig.exe --run-all",
119+
"wine ./testrig.exe --script scenarios/normal_operation.txt --json",
120+
"wine ./visualizer.exe visualization/scenarios.json",
121+
]
122+
104123
lines = [
105124
f"{bundle_name}",
106125
"",
@@ -122,11 +141,24 @@ def write_run_notes(destination: Path,
122141
f"- Start the visualizer with the shipped scenario bundle: {visualizer_cmd}",
123142
f"- Run the shipped audit suite: {audit_cmd}",
124143
"",
144+
"Reviewer commands:",
125145
"Notes:",
126146
"- Running the simulator or visualizer with no arguments prints usage; pass one of the commands above.",
127147
"- The visualizer always needs at least one scenarios.json path, and the shipped bundle is visualization/scenarios.json.",
128148
"- The visualizer loads visualization/PxPlus_IBM_EGA_8x14.ttf via a relative path, so keep the shipped directory layout intact.",
129149
]
150+
if is_windows_bundle:
151+
lines.extend([
152+
"- Windows Command Prompt or PowerShell:",
153+
*(f" {command}" for command in windows_review_cmds),
154+
"- Linux with Wine:",
155+
*(f" {command}" for command in wine_review_cmds),
156+
])
157+
else:
158+
lines.extend([
159+
"- Linux shell:",
160+
*(f" {command}" for command in linux_review_cmds),
161+
])
130162
if has_linux_launchers:
131163
lines.append("- Linux launchers set LD_LIBRARY_PATH so the bundled shared libraries are used first.")
132164
if is_windows_bundle:

0 commit comments

Comments
 (0)