Some checks failed
Deploy to Production / Build and Deploy (push) Failing after 6m1s
56 lines
2.0 KiB
YAML
56 lines
2.0 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 "Environment variables:"
|
|
echo "POSTGRES_NAME: $POSTGRES_NAME"
|
|
echo "POSTGRES_HOSTNAME: $POSTGRES_HOSTNAME"
|
|
echo "POSTGRES_PORT: $POSTGRES_PORT"
|
|
echo "POSTGRES_USER: $POSTGRES_USER"
|
|
echo "Testing direct connection..."
|
|
PGPASSWORD=$POSTGRES_PASSWORD psql -h $POSTGRES_HOSTNAME -p $POSTGRES_PORT -U $POSTGRES_USER -d $POSTGRES_NAME -c "SELECT 1"
|
|
echo "Testing MikroORM connection..."
|
|
node -e "
|
|
const { PostgreSqlDriver } = require('@mikro-orm/postgresql');
|
|
const { MikroORM } = require('@mikro-orm/core');
|
|
const config = {
|
|
driver: PostgreSqlDriver,
|
|
dbName: process.env.POSTGRES_NAME,
|
|
host: process.env.POSTGRES_HOSTNAME,
|
|
port: parseInt(process.env.POSTGRES_PORT),
|
|
user: process.env.POSTGRES_USER,
|
|
password: process.env.POSTGRES_PASSWORD,
|
|
};
|
|
console.log('MikroORM config:', config);
|
|
MikroORM.init(config).then(orm => {
|
|
console.log('Connected successfully!');
|
|
orm.close();
|
|
}).catch(err => {
|
|
console.error('Connection failed:', err);
|
|
process.exit(1);
|
|
});
|
|
"
|
|
echo "Running migrations and seeds..."
|
|
npx mikro-orm migration:up
|
|
npm run seed
|
|
env:
|
|
{{- range $key, $val := .Values.backend.env }}
|
|
- name: {{ $key }}
|
|
value: "{{ $val }}"
|
|
{{- end }}
|
|
restartPolicy: Never
|