fusero-app-boilerplate/chart/templates/backend-migration.job.yaml
liquidrinu 6f6ddb072b
Some checks failed
Deploy to Production / Build and Deploy (push) Failing after 6m6s
fix: use secrets for sensitive values in migration job
2025-05-27 13:08:28 +02:00

71 lines
2.5 KiB
YAML

apiVersion: batch/v1
kind: Job
metadata:
name: fusero-backend-db-init
spec:
backoffLimit: 0
template:
metadata:
name: fusero-backend-db-init
spec:
imagePullSecrets:
- name: regcred
containers:
- name: migrate-seed
image: {{ .Values.backend.image }}
command: ["/bin/sh", "-c"]
args:
- |
echo "=== Testing Connection ==="
PGPASSWORD=$POSTGRES_PASSWORD psql -h $POSTGRES_HOSTNAME -p $POSTGRES_PORT -U $POSTGRES_USER -d $POSTGRES_NAME -c "SELECT 1"
echo "=== Running Migrations ==="
npx mikro-orm migration:up
echo "=== Running Seeds ==="
npm run seed
env:
- name: POSTGRES_HOSTNAME
value: "{{ .Values.backend.env.POSTGRES_HOSTNAME }}"
- name: POSTGRES_PORT
value: "{{ .Values.backend.env.POSTGRES_PORT }}"
- name: POSTGRES_NAME
value: "{{ .Values.backend.env.POSTGRES_NAME }}"
- name: POSTGRES_USER
value: "{{ .Values.backend.env.POSTGRES_USER }}"
- name: POSTGRES_PASSWORD
valueFrom:
secretKeyRef:
name: fusero-backend-secrets
key: POSTGRES_PASSWORD
- name: DEFAULT_ADMIN_USERNAME
value: "{{ .Values.backend.env.DEFAULT_ADMIN_USERNAME }}"
- name: DEFAULT_ADMIN_EMAIL
value: "{{ .Values.backend.env.DEFAULT_ADMIN_EMAIL }}"
- name: DEFAULT_ADMIN_PASSWORD
valueFrom:
secretKeyRef:
name: fusero-backend-secrets
key: DEFAULT_ADMIN_PASSWORD
- name: ENCRYPTION_KEY
valueFrom:
secretKeyRef:
name: fusero-backend-secrets
key: ENCRYPTION_KEY
- name: JWT_SECRET
valueFrom:
secretKeyRef:
name: fusero-backend-secrets
key: JWT_SECRET
- name: CHATGPT_API_KEY
valueFrom:
secretKeyRef:
name: fusero-backend-secrets
key: CHATGPT_API_KEY
- name: CANVAS_API_KEY
valueFrom:
secretKeyRef:
name: fusero-backend-secrets
key: CANVAS_API_KEY
- name: CANVAS_API_URL
value: "{{ .Values.backend.env.CANVAS_API_URL }}"
restartPolicy: Never