I split the monolithic "CI" task up into smaller individual tasks:
install non-sudo dependencies (like wp and minizinc), by executing bash bin/setup/install-dependencies.bash (optionally add --report-results to report the results to slack)
run unit tests by executing bash bin/unit-tests/run-tests.bash (with optional --report-results flag)
run integration tests by executing bash bin/integration-tests/run-tests.bash (with optional --report-results flag)
run system tests by executing bash bin/system-tests/run-tests.bash (with optional --report-results flag)
I added all the resources/exes/thumb-* variants and added them to the system tests.
Standardized the makefiles in resources/exes.
Basically, here is all the new CI code to look at:
Sheesh. So many tiny little ways to make the CI not work. But I think I got it.
bin/
. I'm running them with bash now.bash bin/setup/install-dependencies.bash
(optionally add--report-results
to report the results to slack)bash bin/unit-tests/run-tests.bash
(with optional--report-results
flag)bash bin/integration-tests/run-tests.bash
(with optional--report-results
flag)bash bin/system-tests/run-tests.bash
(with optional--report-results
flag)resources/exes/thumb-*
variants and added them to the system tests.resources/exes
.