CI Jobs
Workers
We use Github Actions for our CI jobs. Right now, we use a self-hosted runner running on an Intel NUC.
The runners all run in a custom container. See ci/runner/Dockerfile
for
details on the container, and instructions on how to build it. At the
moment, you need to manually deploy and restart containers when that file
is updated.
Actions are automatically picked up from the YAML files in.github/workflows
.
There are four actions right now:
build.yml
- Builds all of the software and runs unit testslint.yml
- Runs the linting script to ensure there aren’t linting issuesasan.yml
- Runs the address/leak sanitizer over all of our unit teststsan.yml
- Runs the thread sanitizer over all of our unit testscoverage.yml
- Runs coverage over the full tree, uploading it as an artifactweb.yml
- Runs build & unit tests for web tools (only active if you change a frontend)
See the official site for more detail.