# Global configuration
global:
  environment: dev # dev, staging, prod
  cloudProvider: aws # aws, gcp, azure, alicloud
  region: us-east-1
  logicalRegion: us-east-1
  namespace: observability
  awsResourceTags: {}

# Regional server configuration
regionalServer:
  enabled: true
  replicas: 1
  podLabels: {}
  args: []
  image:
    repository: ""
    tag: ""
    pullPolicy: Always
  resources:
    limits:
      cpu: 1000m
      memory: 1500Mi
    requests:
      cpu: 100m
      memory: 128Mi
  nodeSelector:
    node_type: worker
  service:
    name: regionalservice
    type: ClusterIP
    annotations: {}
    ports:
      http: 8081
      metrics: 8083
  ingress:
    enabled: true
    className: ""
    annotations: {}
    rules: []
    tls: []
  # Security context for regional server pods.
  # Default empty: raw manifests have no security context. Override in env-specific values if needed.
  podSecurityContext: {}
  securityContext: {}

# Data server configuration
dataServer:
  enabled: true
  replicas: 1
  podLabels: {}
  args: []
  image:
    repository: ""
    tag: ""
    pullPolicy: Always
  resources:
    limits:
      cpu: 500m
      memory: 512Mi
    requests:
      cpu: 50m
      memory: 64Mi
  nodeSelector:
    node_type: worker
  service:
    name: regional-data-service
    type: ClusterIP
    ports:
      http: 8081
  ingress:
    enabled: true
    className: ""
    annotations: {}
    paths: []
  # Security context for data server pods.
  # Default empty: raw manifests have no security context. Override in env-specific values if needed.
  podSecurityContext: {}
  securityContext: {}

# Service account configuration
serviceAccount:
  create: true
  name: regional-server-controller-manager
  annotations: {}

# Alicloud private key secret (optional; only rendered when name, key, and cert are set)
privateKeySecret:
  name: ""
  tlsKey: ""
  tlsCrt: ""

managedCertificate:
  enabled: false
  name: ""
  domains: []

backendConfig:
  enabled: false
  name: ""
  securityPolicyName: ""
  healthCheck: {}

albConfig:
  enabled: false
  name: ""
  config: {}
  listeners: []

ingressClassResource:
  enabled: false
  name: ""
  controller: ""
  parameters: {}

# RBAC configuration
rbac:
  create: true
  clusterRole:
    create: true
    name: ""
  role:
    create: true
    name: ""

# CRD management configuration
crds:
  enabled: true # Enable/disable CRD rendering

# Application configuration (ConfigMap data).
# Each key is a filename mounted under /config/ in both regionalserver and data-server pods.
# Override with env-specific values file providing all required keys.
config: {}

# Name overrides
nameOverride: ""
fullnameOverride: ""
