2025-10-30 21:08:07 +01:00
|
|
|
# Enhanced migration job for procurement service with automatic table creation
|
|
|
|
|
apiVersion: batch/v1
|
|
|
|
|
kind: Job
|
|
|
|
|
metadata:
|
|
|
|
|
name: procurement-migration
|
|
|
|
|
namespace: bakery-ia
|
|
|
|
|
labels:
|
|
|
|
|
app.kubernetes.io/name: procurement-migration
|
|
|
|
|
app.kubernetes.io/component: migration
|
|
|
|
|
app.kubernetes.io/part-of: bakery-ia
|
|
|
|
|
spec:
|
|
|
|
|
backoffLimit: 3
|
|
|
|
|
template:
|
|
|
|
|
metadata:
|
|
|
|
|
labels:
|
|
|
|
|
app.kubernetes.io/name: procurement-migration
|
|
|
|
|
app.kubernetes.io/component: migration
|
|
|
|
|
spec:
|
|
|
|
|
initContainers:
|
|
|
|
|
- name: wait-for-db
|
|
|
|
|
image: postgres:17-alpine
|
|
|
|
|
command: ["sh", "-c", "until pg_isready -h procurement-db-service -p 5432; do sleep 2; done"]
|
|
|
|
|
resources:
|
|
|
|
|
requests:
|
|
|
|
|
memory: "64Mi"
|
|
|
|
|
cpu: "50m"
|
|
|
|
|
limits:
|
|
|
|
|
memory: "128Mi"
|
|
|
|
|
cpu: "100m"
|
|
|
|
|
containers:
|
|
|
|
|
- name: migrate
|
2026-01-19 11:55:17 +01:00
|
|
|
image: bakery/procurement-service
|
2025-10-30 21:08:07 +01:00
|
|
|
command: ["python", "/app/shared/scripts/run_migrations.py", "procurement"]
|
|
|
|
|
env:
|
|
|
|
|
- name: PROCUREMENT_DATABASE_URL
|
|
|
|
|
valueFrom:
|
|
|
|
|
secretKeyRef:
|
|
|
|
|
name: database-secrets
|
|
|
|
|
key: PROCUREMENT_DATABASE_URL
|
|
|
|
|
- name: DB_FORCE_RECREATE
|
|
|
|
|
valueFrom:
|
|
|
|
|
configMapKeyRef:
|
|
|
|
|
name: bakery-config
|
|
|
|
|
key: DB_FORCE_RECREATE
|
|
|
|
|
optional: true
|
|
|
|
|
- name: LOG_LEVEL
|
|
|
|
|
value: "INFO"
|
|
|
|
|
resources:
|
|
|
|
|
requests:
|
|
|
|
|
memory: "256Mi"
|
|
|
|
|
cpu: "100m"
|
|
|
|
|
limits:
|
|
|
|
|
memory: "512Mi"
|
|
|
|
|
cpu: "500m"
|
|
|
|
|
restartPolicy: OnFailure
|