Skip to main content

Development

Install dependencies​

uv sync --all-extras --all-packages --no-progress
uv --offline run --no-sync --no-progress ansible-galaxy install -r requirements.yml

Git hook​

Set the git hook directory.

chmod +x ./.git-hooks/pre-commit
git config --local core.hooksPath .git-hooks

The pre-commit hook runs gitleaks over the repository and the staged changes, so the gitleaks binary must be installed.

Lint​

Ansible and YAML​

uv --offline run --no-sync --no-progress ansible-lint
uv --offline run --no-sync --no-progress yamllint --strict ./

Python​

uv --offline run --no-sync --no-progress mypy --verbose ./
uv --offline run --no-sync --no-progress pylint --verbose ./
uv --offline run --no-sync --no-progress isort --check-only --verbose ./
uv --offline run --no-sync --no-progress black --check --verbose ./
uv --offline run --no-sync --no-progress ruff check --verbose ./
uv --offline run --no-sync --no-progress pyright --verbose

Formatting​

prettier --check .

Syntax check​

Run it from the repository root with the environment variables from the README quick start exported.

uv --offline run --no-sync --no-progress ansible-playbook playbook.yml --syntax-check