refactor(dags): миграция CSV-пайплайна с Greenplum на PostgreSQL

- Зачем:
  - адаптация пайплайна для работы с чистым PostgreSQL вместо Greenplum
  - обеспечение совместимости с учебным стендом на базе Docker Compose
- Что:
  - переименованы файлы (greenplum -> postgres)
  - обновлены DAG-файлы: замена get_gp_conn на get_postgres_conn, адаптация DDL под PostgreSQL
  - обновлён helpers/postgres.py: замена функций и переменных окружения
  - добавлен pytest в requirements.txt для запуска тестов
  - создан tests/conftest.py с функцией patch_postgres_hook
  - обновлён tests/test_postgres_helpers.py: исправлены импорты
  - добавлено монтирование папки tests в docker-compose.yml
  - адаптирован sql/base/orders_ddl.sql под PostgreSQL
- Проверка:
  - docker-compose exec airflow-webserver pytest /opt/airflow/tests/test_postgres_helpers.py
This commit is contained in:
2026-03-08 19:51:15 +03:00
parent f703d8e96d
commit 8028711f0c
9 changed files with 119 additions and 90 deletions
+3
View File
@@ -61,6 +61,7 @@ services:
volumes:
- ./dags:/opt/airflow/dags
- ./data:/opt/airflow/data
- ./tests:/opt/airflow/tests
depends_on:
airflow-init:
condition: service_completed_successfully
@@ -82,6 +83,7 @@ services:
volumes:
- ./dags:/opt/airflow/dags
- ./data:/opt/airflow/data
- ./tests:/opt/airflow/tests
depends_on:
airflow-init:
condition: service_completed_successfully
@@ -100,6 +102,7 @@ services:
volumes:
- ./dags:/opt/airflow/dags
- ./data:/opt/airflow/data
- ./tests:/opt/airflow/tests
command: >
bash -ceuo pipefail "
mkdir -p /opt/airflow/data &&