Доработки по full smoke тесту

This commit is contained in:
2025-12-11 11:09:05 +03:00
parent 0d81096ded
commit 9f028d0728
2 changed files with 15 additions and 1 deletions
+1 -1
View File
@@ -421,6 +421,6 @@ load_bookings_to_stg = PostgresOperator(
- Локальные проверки: `make test` (pytest). Для форматирования — `make fmt`, для проверки — `make lint`. - Локальные проверки: `make test` (pytest). Для форматирования — `make fmt`, для проверки — `make lint`.
- Пошаговый сценарий с Docker (включая негативные кейсы и reset) — см. `TESTING.md`. - Пошаговый сценарий с Docker (включая негативные кейсы и reset) — см. `TESTING.md`.
- Полный smoke-тест стенда (сносит volumes!): `make e2e-smoke` — поднимает стек с нуля и прогоняет `csv_to_greenplum` и `bookings_to_gp_stage` через `airflow dags test`. - Полный smoke-тест стенда (сносит volumes!): `make e2e-smoke` — поднимает стек с нуля, прогоняет `csv_to_greenplum` и `bookings_to_gp_stage` через `airflow dags test` и проверяет, что в `public.orders` и `stg.bookings` появились строки.
Удачи в изучении Data Engineering! 🚀 Удачи в изучении Data Engineering! 🚀
+14
View File
@@ -47,7 +47,21 @@ make test
warn "Airflow DAG test: csv_to_greenplum" warn "Airflow DAG test: csv_to_greenplum"
docker compose -f docker-compose.yml exec airflow-webserver airflow dags test csv_to_greenplum 2024-01-01 docker compose -f docker-compose.yml exec airflow-webserver airflow dags test csv_to_greenplum 2024-01-01
warn "Check orders count in Greenplum"
ORDERS_COUNT=$(docker compose -f docker-compose.yml exec greenplum bash -lc "su - gpadmin -c \"/usr/local/greenplum-db/bin/psql -t -A -d gp_dwh -c 'SELECT COUNT(*) FROM public.orders;'\"")
if [ "${ORDERS_COUNT:-0}" -le 0 ]; then
echo "orders table is empty after csv_to_greenplum (COUNT=${ORDERS_COUNT:-0})" >&2
exit 1
fi
warn "Airflow DAG test: bookings_to_gp_stage" warn "Airflow DAG test: bookings_to_gp_stage"
docker compose -f docker-compose.yml exec airflow-webserver airflow dags test bookings_to_gp_stage 2024-01-01 docker compose -f docker-compose.yml exec airflow-webserver airflow dags test bookings_to_gp_stage 2024-01-01
warn "Check stg.bookings count in Greenplum"
BOOKINGS_COUNT=$(docker compose -f docker-compose.yml exec greenplum bash -lc "su - gpadmin -c \"/usr/local/greenplum-db/bin/psql -t -A -d gp_dwh -c 'SELECT COUNT(*) FROM stg.bookings;'\"")
if [ "${BOOKINGS_COUNT:-0}" -le 0 ]; then
echo "stg.bookings is empty after bookings_to_gp_stage (COUNT=${BOOKINGS_COUNT:-0})" >&2
exit 1
fi
warn "Smoke test completed successfully" warn "Smoke test completed successfully"