fullnameOverride: "self-monitoring"

# Global configuration
global:
  # Deployment mode: "global" or "regional"
  mode: "regional"

  # Environment: "dev", "staging", "prod"
  environment: "prod"

  # Cloud vendor: "aws", "gcp", "azure", "alicloud"
  vendor: "aws"

  # Region and cluster information
  region: "us-west-2"
  logicalRegion: "us-west-2"
  cluster: "cluster-name"

  # Default namespace for resource
  namespace: "self-monitoring"

  # Common labels applied to all resources
  commonLabels:
    app.kubernetes.io/part-of: "observability"

# Component enablement and configuration
components:
  # Prometheus rules configuration
  rules:
    enabled: true
  # Service monitors (regional mode only)
  monitors:
    enabled: true # Enabled by default for regional mode
    opsServer:
      enabled: true
      namespace: ops-system
      serviceName: ops-server
      interval: 30s
      path: /metrics
      scrapeTimeout: 10s
      targetLabels: []
      podTargetLabels: []

  # Grafana dashboards (global mode only)
  dashboards:
    enabled: false # Should be enabled only in global mode

    # Dashboard configuration
    operator:
      enabled: true
    victoriametricsCluster:
      enabled: true
    vmCapacityPlanning:
      enabled: true
    vmagent:
      enabled: true
    vmalert:
      enabled: true

    # Labels for Grafana dashboard discovery
    labels:
      grafana_dashboard: "1"

  # Storage classes (regional mode only)
  storage:
    enabled: true # Should be enabled only in regional mode

  # cert-manager issuers (regional mode only)
  issuers:
    enabled: false

issuers:
  items: []

# Extra PrometheusRule groups appended to the generated rule groups.
extraRuleGroups: []

# Storage class configuration
storageClass:
  # Storage class name - will be set based on cloud provider if not specified
  name: ""

  # Whether this should be the default storage class
  isDefault: false

  # Storage class parameters
  allowVolumeExpansion: true
  reclaimPolicy: "Delete"
  volumeBindingMode: "WaitForFirstConsumer"

  # AWS-specific storage class parameters
  # aws:
  #   fsType: "ext4"
  #   type: "gp3"
  #   iops: "3000"
  #   throughput: "125"
    # encrypted: "true"  # Uncomment to enable encryption

  # GCP-specific storage class parameters
  # gcp:
  #   type: "pd-balanced"
    # replicationType: "none"  # Uncomment if needed
    # fstype: "ext4"  # Uncomment if needed

  # Azure-specific storage class parameters
  # azure:
  #   kind: "Managed"
  #   fsType: "ext4"
  #   skuName: "PremiumV2_LRS"
  #   diskIOPSReadWrite: "3000"
    # diskMBpsReadWrite: "125"

  # Alicloud-specific storage class parameters
  # alicloud:
  #   fsType: "ext4"
  #   type: "cloud_essd"
    # performanceLevel: "PL1"  # Uncomment if needed

  # Additional custom parameters (will override cloud-specific ones if same key)
  parameters: {}
