# Default values for taskplaner

replicaCount: 1

image:
  repository: git.kube2.tricnet.de/tho/taskplaner
  pullPolicy: Always
  # Overrides the image tag whose default is the chart appVersion
  tag: "latest"

imagePullSecrets:
  - name: gitea-registry-secret
nameOverride: ""
fullnameOverride: ""

serviceAccount:
  # Specifies whether a service account should be created
  create: false
  # Annotations to add to the service account
  annotations: {}
  # The name of the service account to use
  name: ""

podAnnotations: {}

podSecurityContext:
  fsGroup: 1001

securityContext:
  runAsNonRoot: true
  runAsUser: 1001
  runAsGroup: 1001
  allowPrivilegeEscalation: false
  readOnlyRootFilesystem: false
  capabilities:
    drop:
      - ALL

service:
  # Name override to avoid Kubernetes creating TASKPLANER_* env vars
  # which conflict with the app's envPrefix
  name: "tp-app"
  type: ClusterIP
  port: 80
  targetPort: 3000

ingress:
  enabled: false
  className: ""
  annotations: {}
    # kubernetes.io/ingress.class: nginx
    # cert-manager.io/cluster-issuer: letsencrypt-prod
  hosts:
    - host: taskplaner.local
      paths:
        - path: /
          pathType: Prefix
  tls: []
  #  - secretName: taskplaner-tls
  #    hosts:
  #      - taskplaner.local

resources:
  limits:
    cpu: 500m
    memory: 256Mi
  requests:
    cpu: 100m
    memory: 128Mi

persistence:
  enabled: true
  # Use an existing PVC instead of creating one
  existingClaim: ""
  # Storage class for dynamic provisioning
  storageClass: ""
  accessMode: ReadWriteOnce
  size: 1Gi
  # Annotations for the PVC
  annotations: {}

livenessProbe:
  httpGet:
    path: /health
    port: http
  initialDelaySeconds: 10
  periodSeconds: 30
  timeoutSeconds: 10
  failureThreshold: 3

readinessProbe:
  httpGet:
    path: /health
    port: http
  initialDelaySeconds: 5
  periodSeconds: 10
  timeoutSeconds: 5
  failureThreshold: 3

nodeSelector: {}

tolerations: []

affinity: {}

# Basic authentication (Traefik middleware)
basicAuth:
  enabled: false
  # htpasswd encoded credentials (generate with: htpasswd -nb user password)
  # Example: "admin:$apr1$xyz..."
  htpasswd: ""

# Application-specific configuration
config:
  # The external URL where the app is accessible (required for CSRF protection)
  # Set this to your ingress URL or service URL
  origin: "http://localhost:3000"
  # Node environment
  nodeEnv: production
