Skip to main content

Dagster automation driven by dbt metadata (Luban CI)

Project description

dbt-dagsterizer

dbt-dagsterizer is a Python package for building Dagster automation from dbt metadata.

It is designed to keep Dagster code locations mostly static, while letting developers declare orchestration intent in a small, reviewable YAML file alongside the dbt project.

Two common ways to use it

  1. As a CLI tool (bootstrap + maintain dagsterization.yml)
  • Install once:
uv tool install dbt-dagsterizer
  • Upgrade later:
uv tool upgrade dbt-dagsterizer

This is the recommended workflow for running dbt-dagsterizer project ..., dbt-dagsterizer meta ..., and dbt-dagsterizer macros ... from any repo.

  1. As a Python dependency (Dagster runtime imports it)

Dagster code locations typically import dbt_dagsterizer at runtime (for example build_definitions()), so the Dagster project itself must depend on dbt-dagsterizer (for example in its own pyproject.toml). Installing the CLI as a tool does not automatically make it importable inside that project’s runtime environment/container.

Documentation

Quick start

CLI

dbt-dagsterizer --help

Initialize orchestration intent and refresh the dbt manifest:

dbt-dagsterizer meta init --parse
dbt-dagsterizer meta validate --prepare

Python

from dbt_dagsterizer.api import build_definitions

defs = build_definitions(dbt_project_dir="./dbt_project")

If the project has no dbt models yet (no models/**/*.sql), build_definitions() still returns a minimal, always-loadable Definitions.

Development

This section is for developing dbt-dagsterizer itself. If you are using it in another repo, start with the CLI install instructions or add it as a dependency in your Dagster code location.

Setup:

uv sync --dev

Run tests:

uv run pytest

Lint:

uv run ruff check .

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dbt_dagsterizer-0.1.11.tar.gz (145.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dbt_dagsterizer-0.1.11-py3-none-any.whl (109.4 kB view details)

Uploaded Python 3

File details

Details for the file dbt_dagsterizer-0.1.11.tar.gz.

File metadata

  • Download URL: dbt_dagsterizer-0.1.11.tar.gz
  • Upload date:
  • Size: 145.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.14

File hashes

Hashes for dbt_dagsterizer-0.1.11.tar.gz
Algorithm Hash digest
SHA256 7da33f4f2a37ae4318828c870dae3f1f966e06ac8a53337d34019820ab8df1ba
MD5 6aa3e2ec23a80d47f3950fcc7949ed74
BLAKE2b-256 ab6357e1a1ddef0e82a13765cae691fbda39eb576b82e13bac38f7e32bdf56f9

See more details on using hashes here.

File details

Details for the file dbt_dagsterizer-0.1.11-py3-none-any.whl.

File metadata

File hashes

Hashes for dbt_dagsterizer-0.1.11-py3-none-any.whl
Algorithm Hash digest
SHA256 5e24e01663cc1e2af73b84761c2d61256a23bdef307f4116c5c0ea4684a4b6e7
MD5 11a3e4e6b809989a5e7e8e863122ae59
BLAKE2b-256 bb1c85e69fbe8a147347a436ac373e951685bf290f64dcf9aa0e016375ae0f44

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page