# Default values for plugin-br-payments-fakebtg.
# A stand-in HTTP server that mocks the BTG provider API surface for use in
# dev/staging environments without access to the real BTG sandbox. Single
# Deployment, single replica, no persistent state, ClusterIP service. The
# admin/* endpoints support runtime injection of errors and latency for
# chaos/scenario testing by external integrators.

# -- Override the chart top-level name
nameOverride: "plugin-br-payments-fakebtg"
# -- Override the fully generated name
fullnameOverride: ""
# -- Override the namespace used by templates
namespaceOverride: ""

# ==============================================================================
# APPLICATION
# Single Deployment running the /fakebtg binary on a distroless nonroot image.
# No required env vars; defaults to listening on :8090.
# ==============================================================================
fakebtg:
  # -- Service name
  name: "plugin-br-payments-fakebtg"
  # -- Number of replicas (fakebtg holds in-memory scenario state; keep at 1)
  replicaCount: 1
  # -- Number of old ReplicaSets to retain for rollback
  revisionHistoryLimit: 5

  # -- Container image
  image:
    # -- Image repository
    repository: ghcr.io/lerianstudio/plugin-br-payments-fakebtg
    # -- Image pull policy
    pullPolicy: IfNotPresent
    # -- Image tag (defaults to Chart.appVersion when empty)
    tag: ""
  # -- Image pull secrets for private registries
  imagePullSecrets: []

  # -- Annotations applied to the Deployment resource
  annotations: {}
  # -- Annotations applied to the pods
  podAnnotations: {}

  # -- Termination grace period; fakebtg has no drain, short window is enough
  terminationGracePeriodSeconds: 10

  # -- Pod-level securityContext
  podSecurityContext: {}
  # -- Container-level securityContext
  # Distroless nonroot UID/GID is 65532; the binary does not need to write
  # to the filesystem, so the root FS is mounted read-only.
  securityContext:
    runAsGroup: 65532
    runAsUser: 65532
    runAsNonRoot: true
    allowPrivilegeEscalation: false
    capabilities:
      drop:
        - ALL
    readOnlyRootFilesystem: true

  # -- Rolling update strategy
  deploymentStrategy:
    type: RollingUpdate
    rollingUpdate:
      maxSurge: 1
      maxUnavailable: 0

  # -- Service configuration (ClusterIP only by default)
  service:
    # -- Service type
    type: ClusterIP
    # -- Service port
    port: 8090
    # -- Container target port
    targetPort: 8090
    # -- Annotations applied to the Service
    annotations: {}

  # -- Optional Ingress for external integrators reaching /admin/* and /inspect/*
  ingress:
    # -- Enable Ingress
    enabled: false
    # -- IngressClass name (e.g., "nginx")
    className: ""
    # -- Ingress annotations
    annotations: {}
    # -- Ingress hosts
    hosts:
      - host: ""
        paths:
          - path: /
            pathType: Prefix
    # -- Ingress TLS
    tls: []

  # -- Container resource requests/limits
  resources:
    limits:
      cpu: 200m
      memory: 128Mi
    requests:
      cpu: 50m
      memory: 64Mi

  # -- Readiness probe against GET /health
  readinessProbe:
    initialDelaySeconds: 2
    periodSeconds: 5
    timeoutSeconds: 2
    successThreshold: 1
    failureThreshold: 2
  # -- Liveness probe against GET /health
  livenessProbe:
    initialDelaySeconds: 10
    periodSeconds: 10
    timeoutSeconds: 2
    successThreshold: 1
    failureThreshold: 3

  # -- Pod nodeSelector
  nodeSelector: {}
  # -- Pod tolerations
  tolerations: []
  # -- Pod affinity rules
  affinity: {}

  # -- Extra environment variables (e.g., FAKEBTG_PORT to override the default :8090)
  extraEnvVars: {}

  # -- ServiceAccount used by the pod
  serviceAccount:
    # -- Create a dedicated ServiceAccount
    create: true
    # -- Annotations applied to the ServiceAccount
    annotations: {}
    # -- Override the generated ServiceAccount name
    name: ""

# Tag block at end of file for image-update tooling (mirrors plugin-br-payments).
plugin-br-payments-fakebtg:
  image:
    tag: 1.0.0-beta.20
