Getting Started
Read the root CONTRIBUTING.md
first for commit conventions and the pull request workflow that apply to all contributors.
Development setup
Install uv, then:
Linting and formatting
From sdk, both targets run ruff via uvx:
The _diff variants scope to files changed relative to origin/main, which is what
make all runs:
Tests
Tests live in ../tests/sdk (relative to sdk/), not inside the SDK package. Run these
from sdk:
- Unit —
make testrunspyteston../tests/sdk, ignoring../tests/sdk/integration. - Integration —
make test-integrationbrings up thesdkDocker profile (tests/docker-compose.test.yml), then runs the full suite including../tests/sdk/integration. - Coverage —
make test-coveragereports coverage forsrc/rhesis(terminal + HTML). - Teardown —
make docker-down, ormake docker-cleanto also drop volumes.
Run a single test after starting the Docker profile yourself: