# care/db-init — инициализация/миграция БД для k8s-стенда (WK-208).
# Семантика = deploy/trial/postgres/00-init.sql + release.sh (миграции NN_*.sql по журналу
# admin.schema_migrations, сторож дрейфа admin.schema_digest); исполняет helm-hook чарта
# helm/db-init (ConfigMap run.sh).
#
# Контекст сборки собирается из ДВУХ репо (схемы и код из одного среза):
#   schemas/   ← Sdd  git archive <ref> contracts/db         (schema-*.sql + roles.sql)
#   pg-init/   ← Code deploy/trial/postgres/seed.sql
#   migrations/← Code deploy/trial/migrations/
# Ссылку на использованный Sdd-реф фиксируй в LABEL care.sdd.sha (совместимость дайджеста
# со стендами на VM: formula = cat schema-*.sql roles.sql | sha256sum, байт-в-байт).
#
# В TFS Build #8 собирать тем же рецептом (см. helm/README.md, prerequisites).
FROM dore.altatec.ru/altatec/postgres:16.15

# ★ care-fj2h: gosu из базового образа не используется (job чарта helm/db-init запускается
#   command: [bash, run.sh] — entrypoint postgres не исполняется), а тянет CRITICAL
#   CVE-2025-68121 (gosu собран Go 1.24.6) в trivy-гейте Build #8. Убираем бинарник.
RUN rm -f /usr/local/bin/gosu

# ★ care-gpe6: trivy-гейт CI (Care.Code.Trial #1038, красный с 15.09.2026): 12 CRITICAL
#   в perl-пакетах базового debian 13.6 (CVE-2026-13221 / CVE-2026-42496 / CVE-2026-8376,
#   фикс 5.40.1-6+deb13u1). Точечный upgrade только perl-пакетов — остальной слой базы
#   не трогаем (воспроизводимость образа БД важнее полного upgrade).
RUN apt-get update \
 && apt-get install -y --no-install-recommends --only-upgrade \
      perl perl-base libperl5.40 perl-modules-5.40 \
 && rm -rf /var/lib/apt/lists/*

COPY schemas/ /db-init/schemas/
COPY pg-init/ /db-init/pg-init/
COPY migrations/ /db-init/migrations/
