diff --git a/apps/pm/d8-ugmk-prod/backend-s3.yaml b/apps/pm/d8-ugmk-prod/backend-s3.yaml deleted file mode 100644 index 7368ee0..0000000 --- a/apps/pm/d8-ugmk-prod/backend-s3.yaml +++ /dev/null @@ -1,21 +0,0 @@ ---- -apiVersion: helm.toolkit.fluxcd.io/v2 -kind: HelmRelease -metadata: - name: backend - namespace: pm -spec: - values: - services: - backend: - podAnnotations: - _default: - vault.hashicorp.com/agent-inject-template-pm-s3: |- - {{- with secret "secrets/data/minio/apps/pm" -}} - S3_HOST={{ index .Data.data.client "endpoint" }} - S3_LOGIN={{ index .Data.data "access_key" }} - S3_PASSWORD={{ index .Data.data "secret_key" }} - S3_VERIFY=False - {{- $buckets := index .Data.data "buckets" }} - S3_BUCKET={{ if gt (len $buckets) 0 }}{{ index (index $buckets 0) "name" }}{{ else }}pm-bucket{{ end }} - {{- end -}} diff --git a/apps/pm/d8-ugmk-prod/backend.yaml b/apps/pm/d8-ugmk-prod/backend.yaml new file mode 100644 index 0000000..8f55130 --- /dev/null +++ b/apps/pm/d8-ugmk-prod/backend.yaml @@ -0,0 +1,47 @@ +--- +# Патч backend для контура УГМК. +# +# ВНИМАНИЕ: args — список, kustomize заменяет его ЦЕЛИКОМ (JSON merge patch), +# поэтому здесь продублирован весь скрипт из apps/pm/base/backend.yaml. +# При правке args в base их нужно продублировать и сюда. +# podAnnotations — map, мержится по ключам, поэтому переопределён только +# один ключ agent-inject-template-pm-s3; остальные vault-аннотации берутся из base. +apiVersion: helm.toolkit.fluxcd.io/v2 +kind: HelmRelease +metadata: + name: backend + namespace: pm +spec: + values: + services: + backend: + deployment: + args: + _default: + - | + set -a + [ -f /vault/secrets/pm-db ] && . /vault/secrets/pm-db + [ -f /vault/secrets/pm-rabbitmq ] && . /vault/secrets/pm-rabbitmq + [ -f /vault/secrets/pm-s3 ] && . /vault/secrets/pm-s3 + set +a + # В образе нет миграций под текущие модели pm — migrate пишет + # "Your models in app(s): 'pm' have changes that are not yet + # reflected in a migration". Генерируем их на старте. + # Ошибку не глотаем молча, но и не роняем контейнер: иначе + # неудачный makemigrations превратит рабочий под в CrashLoop. + python manage.py makemigrations pm --noinput \ + || echo "!!! makemigrations FAILED - продолжаю с существующими миграциями" + python manage.py migrate + exec /opt/sarex/entrypoint.sh + + podAnnotations: + _default: + vault.hashicorp.com/agent-inject-template-pm-s3: |- + {{- with secret "secrets/data/minio/apps/pm" -}} + S3_HOST={{ index .Data.data.client "endpoint" }} + S3_LOGIN={{ index .Data.data "access_key" }} + S3_PASSWORD={{ index .Data.data "secret_key" }} + S3_VERIFY=False + {{- $buckets := index .Data.data "buckets" }} + S3_BUCKET={{ if gt (len $buckets) 0 }}{{ index (index $buckets 0) "name" }}{{ else }}pm-bucket{{ end }} + {{- end -}} diff --git a/apps/pm/d8-ugmk-prod/kustomization.yaml b/apps/pm/d8-ugmk-prod/kustomization.yaml index d586033..828c142 100644 --- a/apps/pm/d8-ugmk-prod/kustomization.yaml +++ b/apps/pm/d8-ugmk-prod/kustomization.yaml @@ -9,7 +9,7 @@ patches: target: kind: Namespace name: pm - - path: backend-s3.yaml + - path: backend.yaml target: kind: HelmRelease name: backend