celine-utils documentation
Two audiences use this repository, and they share almost nothing. Start with the track that matches what you are doing.
Governance as a library
You are building a service that reads governance.yaml — a catalogue API, a policy
exporter, an analytics integration — and you want the format parsed the same way
every other CELINE component parses it, without inheriting an orchestration stack.
| Page | Covers |
|---|---|
| The governance library | celine.governance: installation, the three-dependency contract, resolving, merging, validation, exposure gates, facet building |
governance.yaml format |
the grammar — every field, resolution and merge semantics, the two exposure gates |
owners.yaml registry |
turning owner aliases into canonical identities |
| JSON Schemas | the published contracts and how to validate against them |
The short version:
uv add celine-utils # three runtime dependencies, no extras needed
from pathlib import Path
from celine.governance import GovernanceResolver, validate_file, effective_expose
validate_file(Path("governance.yaml"))
rule = GovernanceResolver.from_file(Path("governance.yaml")).resolve("db.schema.table")
effective_expose(rule)
Building and running pipelines
You are writing or operating a CELINE pipeline application — Meltano ingestion, dbt transformation, Prefect flows, with lineage and governance emitted along the way.
| Page | Covers |
|---|---|
| Pipeline tutorial | end to end: scaffold, configure, run, deploy |
| CLI reference | every command — governance and pipeline |
| Environment reference | every variable, its default, and the traps |
governance.yaml format |
what to declare for the datasets your pipeline produces |
The short version:
uv add "celine-utils[pipelines]"
celine-utils pipeline init app my_app
cd my_app
celine-utils pipeline run meltano
celine-utils pipeline run dbt gold
Contracts and choices
Requirements states what this package must do on the surface other repositories depend on, and names the test that verifies each one.
Decisions records the architectural choices that would otherwise be re-litigated — the thin governance core, the schema location, the split exposure gates.