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_DB -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_DB 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: 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