Iker Pedrosa e53545851d doc/contributions/ci.md: document system tests
Extend the system tests section.

Signed-off-by: Iker Pedrosa <ipedrosa@redhat.com>
2025-11-27 21:57:55 -06:00

1.5 KiB

Continuous Integration (CI)

Shadow runs a CI workflow every time a pull-request (PR) is updated. This workflow contains several checks to assure the quality of the project, and only pull-requests with green results are merged.

Build & install

The project is built & installed on various distributions. The workflow can be triggered locally by following the instructions specified in the Build & install page.

System tests

The project runs system tests to verify functionality across different environments using two complementary approaches:

Bash system tests

Legacy Bash system tests run on Ubuntu in a VM environment. These provide coverage for Ubuntu-specific scenarios and legacy test cases. You can run this step locally by following the instructions provided in the Tests page.

Python system tests

The new Python system tests use pytest and pytest-mh, running across multiple distributions (Fedora, Debian, Alpine, openSUSE) in containerized environments. These tests provide cross-distribution compatibility and improved environment management compared to the Bash tests.

For local execution of Python system tests, follow the instructions in the Tests page.

Static code analysis

C and shell static code analysis is also executed. For that purpose CodeQL and Differential ShellCheck are used.