Installation¶
This page covers how to install dmp-af and its dependencies.
Requirements¶
Before installing dmp-af, ensure you have:
- Python 3.10, 3.11, or 3.12
- Apache Airflow 2.6 or higher
- dbt-core 1.7 to 1.10
See Prerequisites for the full compatibility matrix.
Installation Methods¶
Standard Installation¶
Install dmp-af via pip:
This installs the core package with all required dependencies.
Optional Features¶
dmp-af supports several optional integrations:
Monte Carlo Data Integration¶
For Monte Carlo Data catalog integration:
This adds:
airflow-mcd>=0.3.3,<0.4.0
pycarlo>=0.9
Tableau Integration¶
For Tableau refresh tasks:
This adds:
tableauserverclient>=0.25.0,<0.26.0
All Optional Features¶
To install everything:
Development Installation¶
For contributors and developers:
# Clone the repository
git clone https://github.com/dmp-labs/dmp-af.git
cd dmp-af
# Using uv (recommended)
uv sync --all-packages --all-groups --all-extras
# Or using pip
pip install -e ".[dev]"
The development installation includes:
- Testing tools (pytest, pytest-cov)
- Linting tools (ruff, pre-commit)
- Example dependencies (dbt-postgres)
- Documentation tools
Verifying Installation¶
After installation, verify that dmp-af is available:
Check available CLI tools:
Airflow Integration¶
dmp-af works as an Airflow DAG generator. Make sure:
- Airflow is installed and configured
- Your
AIRFLOW_HOME
is set - The
dags/
folder is accessible
dbt Integration¶
You'll need a dbt project with:
- A valid
dbt_project.yml
- A configured
profiles.yml
- Compiled
manifest.json
(viadbt compile
)
Dependency Pinning¶
Some dependencies have version constraints for compatibility:
# From pyproject.toml
dependencies = [
"apache-airflow >=2.6,<3",
"dbt-core >=1.7,<2",
"pydantic >=1.10,<3.0.0",
# ... other dependencies
]
If you encounter version conflicts, check the compatibility matrix.
Troubleshooting¶
Import Errors¶
If you see ModuleNotFoundError: No module named 'dmp_af'
:
- Verify installation:
pip list | grep dmp-af
- Check Python environment:
which python
- Reinstall:
pip install --force-reinstall dmp-af
Airflow Version Conflicts¶
If Airflow dependencies conflict:
- Create a fresh virtual environment
- Install Airflow first:
pip install apache-airflow==2.10.5
- Then install dmp-af:
pip install dmp-af
dbt Version Issues¶
For dbt-core compatibility:
- Use dbt-core 1.7 to 1.10
- Specific adapters may have their own requirements
- Example for Postgres:
pip install dbt-postgres>=1.7.0,<2
Next Steps¶
Once installed, proceed to:
- Quick Start - Create your first DAG
- Docker Setup - Run in containers
- Prerequisites - Detailed version info