# RIOT CI Infrastructure Maintainer Overview This page tries to give an overview about the components of RIOT's CI infra, and who's in charge. This collects physical access to hardware / administration, not the underlying software. ## Murdock -> RIOT's compilation testing - **Contact:** Kaspar - **Components**: - ci.riot-os.org (head node, Web UI) -> Admins: Cenk, Kevin - worker nodes: - breeze (Admin: Kaspar) - haw-icc (Admins: Cenk, Kevin) - mobi* (Admins: Cenk, Kevin) - riotbuild (Admin: Alex) - [pifleet](https://github.com/RIOT-OS/RIOT/wiki/The-Pi-Fleet) (Admin: Kaspar) - pihub (main node, provides configuration with salt-stack) - worker nodes ## HIL -> peripheral Hardware in the Loop testing - **Contact:** Kevin & Cenk - **Admins:** Kevin & Cenk - **Components**: - [CI Dashboard](https://hil.riot-os.org/jenkins/) (head node, Web UI) -> Admins: Cenk, Kevin - [Docker setup and deployment](https://github.com/inetrg/riot-hil-jenkins-ci) - [Peripheral Tests](https://github.com/RIOT-OS/RobotFW-tests) ## Circle CI -> documentation build and provisioning - **Contact:** Alex ## Github Actions - **Contact:** Alex & Martine - **Actions:** - [static-tests](https://github.com/RIOT-OS/RIOT/blob/master/.github/workflows/static-test.yml): runs `make static-tests` and annotates PR with the results - triggers: - On PR (default triggers) - On push to master branch - On release (candidate) tag creation - [tools-buildtest](https://github.com/RIOT-OS/RIOT/blob/master/.github/workflows/tools-buildtest.yml): compile tests fixed selection of tooling (see list of steps for which tools are tested) - triggers - On PR (default triggers) - On push to master branch - On tag creation - [tools-test](https://github.com/RIOT-OS/RIOT/blob/master/.github/workflows/tools-test.yml): runs tests on tooling (see list of steps for which tools are tested) - triggers - On PR (default triggers) - On push to master branch - On tag creation - [check-pr](https://github.com/RIOT-OS/RIOT/blob/master/.github/workflows/check-pr.yml): sanity check for Pull Requests: - check blocking labels - check if labels request more reviews than 1 - check for fixup commits - check commit message length - triggers: - On PR label change, open, reopen, or synchronize - On PR review submission or dismissal - [circleci](https://github.com/RIOT-OS/RIOT/blob/master/.github/workflows/circleci.yml): post-action to [Circle CI](#Circle-CI--gt-documentation-build-and-provisioning), creates link to index.html in checks box - [release-test](https://github.com/RIOT-OS/RIOT/blob/master/.github/workflows/release-test.yml): automatically runs [release spec tests](https://github.com/RIOT-OS/Release-Specs/#pytest-runner) - triggers: - Weekly run (Sat 3:00) - On release (candidate) tag creation - [Manual](https://github.com/RIOT-OS/RIOT/actions/workflows/release-test.yml) trigger - [test-on-iotlab](https://github.com/RIOT-OS/RIOT/blob/master/.github/workflows/test-on-iotlab.yml): runs [`compile_and_test_for_board.py`](https://github.com/RIOT-OS/RIOT/blob/master/dist/tools/compile_and_test_for_board/compile_and_test_for_board.py) on a selection of [FIT IoT-LAB nodes](https://www.iot-lab.info/docs/boards/overview/) (job names map to RIOT board names) - triggers: - Weekly run (Sun 1:00) - On release (candidate) tag creation - [Manual](https://github.com/RIOT-OS/RIOT/actions/workflows/test-on-iotlab.yml) trigger