Build both
cd /path/to/moos-ivp
git switch my-branch
./build.sh
cd /path/to/moos-ivp-cicd-testing
./build.sh
Check out the MOOS-IvP branch containing your changes, build it, then use this repository to run a focused CTest group and its mission harness.
1. Build
cd /path/to/moos-ivp
git switch my-branch
./build.sh
cd /path/to/moos-ivp-cicd-testing
./build.sh
2. Test
pEchoVarRun the focused CTest group, then the full pEchoVar harness.
pechovar CTest groupcd tests/cpp
./ctests.sh --pechovar
Run ./ctests.sh with no family option to test everything, or use --help to list the available families.
The first focused run may configure and build the selected CTest executables before testing. Later runs rebuild incrementally.
Example success output
100% tests passed, 0 tests failed out of 31
pEchoVar harnesscd harnesses/pechovar_harnesses/H01-pechovar_unit
./zlaunch.sh 10
Example success output
results=.../results.txt failures=0 total=33 jobs=1 elapsed_seconds=...
Optional build matrix
Run the normal build on this computer, then compile the same local MOOS-IvP checkout for each supported Linux and compiler combination.
cd /path/to/moos-ivp-cicd-testing
./build-matrix.sh
Example success output
Build matrix result: 5 passed, 0 failed
Run ./build-matrix.sh --help for native-only testing, focused Linux targets, and compatibility builds.
Harness reference
Harness defaults vary with the mission. Run ./zlaunch.sh --help for the exact values and case names supported by the harness you are using.
| Option | Typical default | Purpose |
|---|---|---|
[time_warp] | 10 | Set the MOOS time warp. |
--case=NAME | All cases | Run one named case. |
--jobs=N | 1 | Run cases concurrently. |
--max_time=SECONDS | Harness-specific | Override the per-case timeout. |
--port_base=N | Harness-specific | Move the run to another MOOS port range. |
--port_stride=N | Harness-specific | Change spacing between case port blocks, when supported. |
--log=minimal|full | minimal | Reduce CPU usage with minimal logging, or capture full logs for debugging. |
--keep_workdirs | Off | Preserve isolated case directories after the run. |
--gui / --nogui | --nogui | Enable or disable the mission viewer. |
--just_make, -j | Off | Generate mission files without launching. |
--verbose, -v | Off | Show rolling scheduler activity. |
--help, -h | — | List the harness options and case names. |
./zlaunch.sh --case=CASE --log=full --keep_workdirs 10
--log=full restores comprehensive logging. --keep_workdirs retains the generated mission and logs; the final workdirs=... field gives their location.
Some harnesses also provide specialized selectors such as --group=NAME or performance timing profiles such as --profile=local|ci.
Result
CTest passes with 100% tests passed. The harness passes with failures=0. The optional build matrix passes with 0 failed. Open results.txt only when you want the per-case harness details.