CELINE utils
Project description
celine-tools
celine-tools is a collection of utilities used across the CELINE data platform. It provides command-line tools, runtime helpers, and integration layers for Keycloak, Superset, data governance, dataset introspection, and pipeline lineage (dbt, Meltano, OpenLineage).
This repository is intended to be reused across applications deployed within CELINE pipelines and orchestrated by Prefect, Meltano, and dbt.
Features
1. Command Line Interface
A unified CLI implemented with Typer:
celine
├── admin
│ ├── keycloak
│ └── setup
└── governance
└── generate
Includes admin and governance commands.
2. Keycloak Integration Layer
Typed wrappers for KeycloakAdmin and KeycloakOpenID providing realm, client, group, and user management.
3. Superset Integration
SupersetClient handles authentication, listing databases, and registering connections.
4. Dataset Introspection and Querying
DatasetClient allows discovering schemas, fetching structures, querying tables, and exporting results to pandas.
5. Governance Framework
Pattern-based governance.yaml specification and resolver.
See docs/governance.md.
6. Lineage Extraction (dbt & Meltano)
Automatic lineage extraction enriched with schema and governance facets and dbt test assertions.
7. Pipeline Runner
Orchestrates Meltano and dbt execution, emits OpenLineage events, and integrates governance rules.
8. Configuration System
Environment-based typed settings via pydantic-settings.
9. MQTT Utility
Reusable MQTT client wrapper with reconnects and simple publish/subscribe API.
Folder Structure
celine/
admin/
cli/
common/
datasets/
pipelines/
tests/
docs/
Installation
pip install celine-utils
License
Copyright >=2025 Spindox Labs
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file celine_utils-1.2.0.tar.gz.
File metadata
- Download URL: celine_utils-1.2.0.tar.gz
- Upload date:
- Size: 40.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a5933785e3eeba7e405cf12fb8a36f59c76eea1482ab78ea6840224d0eddc8db
|
|
| MD5 |
bad612d5fc11e8889e54d207ece3128e
|
|
| BLAKE2b-256 |
55e37821145ea53a6ca53711600c89071639a4a7187f62f510dab77ab712ff67
|
Provenance
The following attestation bundles were made for celine_utils-1.2.0.tar.gz:
Publisher:
release.yaml on celine-eu/celine-utils
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
celine_utils-1.2.0.tar.gz -
Subject digest:
a5933785e3eeba7e405cf12fb8a36f59c76eea1482ab78ea6840224d0eddc8db - Sigstore transparency entry: 756978498
- Sigstore integration time:
-
Permalink:
celine-eu/celine-utils@de16dcdab1ddfb2fc4dc2e235e7470d1d141d50d -
Branch / Tag:
refs/tags/v1.2.0 - Owner: https://github.com/celine-eu
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yaml@de16dcdab1ddfb2fc4dc2e235e7470d1d141d50d -
Trigger Event:
push
-
Statement type:
File details
Details for the file celine_utils-1.2.0-py3-none-any.whl.
File metadata
- Download URL: celine_utils-1.2.0-py3-none-any.whl
- Upload date:
- Size: 53.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1aed7d9bca7e9adceffb13f7a1f88b6172860bfc36898c86905cc6a33bac04f9
|
|
| MD5 |
6ed2f0cc9da2af49caebcfce3486bc65
|
|
| BLAKE2b-256 |
48036e132740abc8cd5460c045ee51cfb4edb2afc28ee6a36a1b4affbf1c29a0
|
Provenance
The following attestation bundles were made for celine_utils-1.2.0-py3-none-any.whl:
Publisher:
release.yaml on celine-eu/celine-utils
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
celine_utils-1.2.0-py3-none-any.whl -
Subject digest:
1aed7d9bca7e9adceffb13f7a1f88b6172860bfc36898c86905cc6a33bac04f9 - Sigstore transparency entry: 756978506
- Sigstore integration time:
-
Permalink:
celine-eu/celine-utils@de16dcdab1ddfb2fc4dc2e235e7470d1d141d50d -
Branch / Tag:
refs/tags/v1.2.0 - Owner: https://github.com/celine-eu
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yaml@de16dcdab1ddfb2fc4dc2e235e7470d1d141d50d -
Trigger Event:
push
-
Statement type: