Local Development
Prerequisites
Install uv for Python package management.
Setup
# Install dependencies
uv sync --frozen
# Run Dagster webserver locally
uv run dagster dev
# Validate definitions for a code location
uv run dagster definitions validate -m teamster.code_locations.kipptaf.definitions
dbt
Before running dbt assets locally, prepare and package the dbt project:
uv run dagster-dbt project prepare-and-package \
--file src/teamster/code_locations/kipptaf/__init__.py
Linting and formatting
Trunk runs all linters:
trunk check # lint
trunk fmt # format
| Language | Linter(s) |
|---|---|
| SQL | SQLFluff, sqlfmt |
| Python | Ruff, Pyright |
Testing
# Run all tests
uv run pytest
# Run a single test file
uv run pytest tests/test_dagster_definitions.py
# Run asset-specific tests (require env vars / external connections)
uv run pytest tests/assets/test_assets_dbt.py