ETL-QS-Suite, CI-Pipeline und korrigierte Pfade/DB
Some checks failed
ETL-QS / etl-tests (push) Failing after 44s

- Pfad-Defaults im DAG auf das Repo-Checkout /opt/airflow/git/current
  umgestellt (include-Skripte + etl_cache) und Ziel-DB auf
  analytics_pg_duckdb festgelegt
- tests/: Fixture-Generator (>=4 Dateien je Quell-Ordner mit Dubletten/
  Edge-Cases) und End-to-End-Runner mit 45 Pruefungen gegen erwartete
  Ergebnisse, inkl. README
- .forgejo/workflows: CI laeuft die ETL-QS bei Aenderungen an ETL-Skript,
  tests/ oder Geo-Referenz (python:3.12-Container, runs-on docker)
- .gitignore: .venv_test/ und generierte tests/fixtures/ ausgeschlossen

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Pascal Beyer 2026-06-14 14:11:55 +02:00
parent 9cacfd7ae2
commit 82c393408f
8 changed files with 691 additions and 0 deletions

View file

@ -121,6 +121,11 @@ CONN_ID_NEXTCLOUD = "nextcloud_webdav"
# in dieser Airflow-Connection (Typ postgres), NICHT im Code.
CONN_ID_DUCKDB = "duckdb_postgres"
# Datenbankname auf dem pg_duckdb-Server. Wird explizit gesetzt (überschreibt
# das in der Connection hinterlegte Default-Schema/Database), damit der Lade-
# Task unabhängig von der Connection-Konfiguration immer dieselbe DB anspricht.
DB_NAME = "analytics_pg_duckdb"
# Schema-Namen für den atomaren Tausch: geladen wird ins Staging-Schema,
# danach wird in einer Transaktion gegen das produktive Schema getauscht.
# Superset liest aus DB_SCHEMA_PROD und sieht nie einen Zwischenzustand.