Continuous Integration¶
General instructions for setting up self-hosted GitHub runners can be found here.
This process typically involves:
Add a new self-hosted runner on GitHub
Run instructions from GitHub on your runner to download and configure
Ensure tags added to the runner are unique, and match those in
runs-on
within the CI workflow
MacOS self-hosted runner¶
Currently, janus-core
uses a self-hosted runner to run all unit tests on MacOS.
To ensure the self-hosted runner remains active, we currently recommend using
nohup ./run.sh &!
This runs the script in the background, and disowns the process, allowing the ssh connection to be ended without killing the process.
It would be preferable to configure the runner application as a service,
but currently this appears to lead to difficulties if the GUI is not active
and/or sudo
permissions are not used in running the service.