Marquez lineage backend plugin for floe - OpenLineage reference implementation
Project description
floe-lineage-marquez
Marquez lineage backend plugin for floe - OpenLineage reference implementation for data lineage.
Overview
This plugin provides a MarquezLineageBackendPlugin that configures OpenLineage HTTP transport to send lineage events to a Marquez deployment. This is recommended for:
- Self-hosted data lineage tracking
- OpenLineage reference implementation
- Integration with existing Marquez infrastructure
Installation
pip install floe-lineage-marquez
Usage
Via manifest.yaml (Recommended)
# manifest.yaml
plugins:
lineage_backend: marquez
Programmatic Usage
from floe_lineage_marquez import MarquezLineageBackendPlugin
plugin = MarquezLineageBackendPlugin(
url="https://marquez:5000",
api_key="optional-api-key" # pragma: allowlist secret
)
# Plugin will be loaded automatically by LineageProvider
Configuration
The Marquez plugin configures OpenLineage HTTP transport:
- Default endpoint:
marquez:5000(HTTPS) - Protocol: HTTPS/REST (HTTP for localhost development only)
- API endpoint:
/api/v1/lineage
For production, configure:
url: Marquez API base URL (use HTTPS)api_key: Optional authentication
Security
HTTPS Enforcement: By default, only HTTPS URLs are accepted (except for localhost).
HTTP is allowed for localhost, 127.0.0.1, and ::1 for local development.
Development Override: To use HTTP with non-localhost URLs in development environments:
export FLOE_ALLOW_INSECURE_HTTP=true
Warning: Never use this in production. The plugin logs a CRITICAL warning when this override is active.
PostgreSQL Credentials: The get_helm_values() method uses Kubernetes Secrets via Bitnami's existingSecret pattern. Create a secret before deploying:
# Create the required Kubernetes secret
kubectl create secret generic marquez-postgresql-credentials \
--from-literal=postgres-password='<your-admin-password>' \
--from-literal=password='<your-user-password>'
Helm Deployment
The plugin provides Helm values for self-hosted deployment:
plugin = MarquezLineageBackendPlugin()
helm_values = plugin.get_helm_values()
# Returns Marquez + PostgreSQL chart values
Requirements
- Python 3.10+
- floe-core >= 0.1.0
Related
- Marquez - OpenLineage reference implementation
- OpenLineage - Open standard for data lineage
License
Apache-2.0
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 floe_lineage_marquez-0.1.0a1.tar.gz.
File metadata
- Download URL: floe_lineage_marquez-0.1.0a1.tar.gz
- Upload date:
- Size: 14.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
222c45ace83ce37a9f3484a66e2a579bc6d708e54e4ce4d4e94897262ed1b39a
|
|
| MD5 |
12689a75854b6e78451cbab0a4d7dd2d
|
|
| BLAKE2b-256 |
079adae7f2371d3357ec183fd02c6527a27d66166f036b7da7f4e181458ac5b6
|
File details
Details for the file floe_lineage_marquez-0.1.0a1-py3-none-any.whl.
File metadata
- Download URL: floe_lineage_marquez-0.1.0a1-py3-none-any.whl
- Upload date:
- Size: 9.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3b44f13a1243893437f08740aa7024a17034cde604f76c193e8e3f82ab29063b
|
|
| MD5 |
94649b230aa71ce02d94507943ddaf10
|
|
| BLAKE2b-256 |
01575a41df3d27bd1ea5ea2084697e4c5c54f03f449134b0261d770823a7629c
|