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>
34 lines
1,021 B
YAML
34 lines
1,021 B
YAML
name: ETL-QS
|
|
|
|
# Läuft bei Pushes und Pull Requests, sobald ETL-Logik, Tests oder die
|
|
# Geo-Referenz angefasst werden. So bleibt der Lauf schnell und gezielt.
|
|
on:
|
|
push:
|
|
paths:
|
|
- "include/02_etl_angebote_zuschlaege.py"
|
|
- "tests/**"
|
|
- "etl_cache/geo_plz_koordinaten.csv"
|
|
- ".forgejo/workflows/etl-tests.yml"
|
|
pull_request:
|
|
paths:
|
|
- "include/02_etl_angebote_zuschlaege.py"
|
|
- "tests/**"
|
|
- "etl_cache/geo_plz_koordinaten.csv"
|
|
- ".forgejo/workflows/etl-tests.yml"
|
|
|
|
jobs:
|
|
etl-tests:
|
|
runs-on: docker
|
|
# python:3.12 (Debian) bringt git für den Checkout mit; das ETL-Skript
|
|
# benötigt Python >= 3.10 (str | None-Syntax).
|
|
container:
|
|
image: python:3.12
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Test-Abhängigkeiten installieren
|
|
run: pip install --no-cache-dir -r tests/requirements.txt
|
|
|
|
- name: ETL-QS ausführen (Fixtures erzeugen, ETL laufen, prüfen)
|
|
run: python tests/run_tests.py
|