checkers
Checkers is an extensible linter for dbt.
It's similar to other tools like dbt-project-evaluator (created by dbt-labs), among others.
By extendable, we mean that we want to make it easy to define your own best practices. This makes it possible to validate that your team's dbt projects follow the standards you decide, without needing to completely refactor your project to a new system. We also provide numerous "out of the box" checks that are aligned with dbt lab's recommendations, so that you don't need to re-invent the wheel either.
Checkers is easy to integrate with any CI system, so that changes to your project which introduce new issues are automatically flagged, and potentially blocked. It's simple to use checkers with pre-commit, GitHub actions, or any other CI system you're using.
Installation
Install the checkers command line interface with pip.
pip install checkers-cli
To view the documentation for all available commands, use the --help flag.
checkers --help
Quickstart
Navigate to your dbt project's directory. This should be a folder that contains a dbt_project.yml file.
cd path/to/dbt/project
Parse your dbt project to generate a manifest.json artifact. (Many other dbt commands generate a manifest.json, including dbt build, dbt test, etc. But we recommend using dbt parse as it usually takes just a few seconds).
dbt parse
Run the checkers.
checkers run
The results of the check will print to your console, and look similar to the following.
PASS check_model_has_description my_first_dbt_model
PASS check_model_has_description my_second_dbt_model
Development
This project supports development inside a devcontainer using VSCode.
After cloning this repository, VS Code should prompt you to open the project inside the devcontainer. If not, confirm you have the devcontainers extension installed.
Once the devcontainer has started you can install the necessary development dependencies inside a virtual environment.
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
pip install --editable .
You should now be able to run the test suite.
pytest
Release files for checkers-cli 0.0.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| checkers_cli-0.0.7.tar.gz | 14.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| checkers_cli-0.0.7-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 27.3 kB
Release files / checkers_cli-0.0.7.tar.gz
| Download URL | checkers_cli-0.0.7.tar.gz |
|---|---|
| Size | 14.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
46744d8e670df84b08724931717d2488243111b6a270cb90a4c2870dc6f01ce9
|
|
BLAKE2b-256 checksum How to use checksums |
6e3e84aef45b8b48f78f6db3786309b60232673c79499d64ea5aeb7b301263c1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.12.7
|
Release files / checkers_cli-0.0.7-py3-none-any.whl
| Download URL | checkers_cli-0.0.7-py3-none-any.whl |
|---|---|
| Size | 12.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
cd7027822409d6d786d1d327996e8ae828eaf3df73962a651ac8d7945c2f3637
|
|
BLAKE2b-256 checksum How to use checksums |
0ba7e91b978056d74b982ae1b0287b611d722f73e995c319e221c0c492c03451
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.12.7
|