# Default values for dating-app Helm chart

# Global settings
global:
  domain: example.com

# PostgreSQL configuration
postgres:
  enabled: true
  image: postgres:15-alpine
  replicas: 1
  resources:
    requests:
      memory: "256Mi"
      cpu: "100m"
    limits:
      memory: "512Mi"
      cpu: "500m"
  persistence:
    enabled: true
    size: 10Gi
    storageClass: ""
  credentials:
    username: dating_app_user
    password: Aa123456
    database: dating_app
  service:
    port: 5432

# Backend configuration
backend:
  image:
    repository: dating-app-backend
    tag: latest
    pullPolicy: IfNotPresent
  replicas: 2
  resources:
    requests:
      memory: "256Mi"
      cpu: "100m"
    limits:
      memory: "512Mi"
      cpu: "500m"
  service:
    port: 8000
    targetPort: 8000
    type: ClusterIP
  ingress:
    enabled: true
    className: nginx
    host: api.example.com
    path: /
    pathType: Prefix
  environment:
    JWT_SECRET: your-secret-key-change-in-production
    JWT_EXPIRES_MINUTES: "1440"
    MEDIA_DIR: /app/media
    CORS_ORIGINS: "http://localhost:5173,http://localhost:3000,http://localhost"
  persistence:
    enabled: true
    size: 5Gi
    storageClass: ""
    mountPath: /app/media
  probes:
    readiness:
      enabled: true
      path: /health
      initialDelaySeconds: 10
      periodSeconds: 10
    liveness:
      enabled: true
      path: /health
      initialDelaySeconds: 30
      periodSeconds: 30

# Frontend configuration
frontend:
  image:
    repository: dating-app-frontend
    tag: latest
    pullPolicy: IfNotPresent
  replicas: 2
  resources:
    requests:
      memory: "128Mi"
      cpu: "50m"
    limits:
      memory: "256Mi"
      cpu: "200m"
  service:
    port: 80
    targetPort: 80
    type: ClusterIP
  ingress:
    enabled: true
    className: nginx
    host: app.example.com
    path: /
    pathType: Prefix
  environment:
    VITE_API_URL: "http://api.example.com"
  probes:
    readiness:
      enabled: true
      path: /health
      initialDelaySeconds: 5
      periodSeconds: 10
    liveness:
      enabled: true
      path: /health
      initialDelaySeconds: 15
      periodSeconds: 30

# Ingress configuration
ingress:
  enabled: true
  className: nginx
  annotations:
    cert-manager.io/cluster-issuer: "letsencrypt-prod"

# ConfigMap for shared configuration
configmap:
  enabled: true

# Secret for sensitive data (use external secrets in production)
secrets:
  enabled: true
