# Default values for external-dns.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.

global:
  # -- Global image pull secrets.
  imagePullSecrets: []  # @schema item: object

image:  # @schema additionalProperties: false
  # -- Image repository for the `external-dns` container.
  repository: 611388768551.dkr.ecr.us-east-1.amazonaws.com/third-party/external-dns/external-dns
  # -- Image tag for the `external-dns` container, this will default to `.Chart.AppVersion` if not set.
  tag: v0.18.0 # @schema type:[string, null]
  # -- Image pull policy for the `external-dns` container.
  pullPolicy: IfNotPresent  # @schema enum:[IfNotPresent, Always];

serviceAccount:
  # -- If `true`, create a new `ServiceAccount`.
  create: true
  # -- Labels to add to the service account.
  labels: {}
  # -- Annotations to add to the service account. Templates are allowed in both the key and the value. Example: `example.com/annotation/{{ .Values.nameOverride }}: {{ .Values.nameOverride }}`
  annotations:
    eks.amazonaws.com/role-arn: arn:aws:iam::611388768551:role/tidbcloud-o11y-control-plane-role
  # -- (string) If this is set and `serviceAccount.create` is `true` this will be used for the created `ServiceAccount` name, if set and `serviceAccount.create` is `false` then this will define an existing `ServiceAccount` to use.
  name:  # @schema type:[string, null]; default: null
  # -- Set this to `false` to [opt out of API credential automounting](https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#opt-out-of-api-credential-automounting) for the `ServiceAccount`.
  automountServiceAccountToken: true

rbac:  # @schema additionalProperties: true
  # -- If `true`, create a `ClusterRole` & `ClusterRoleBinding` with access to the Kubernetes API.
  create: true
  # -- Additional rules to add to the `ClusterRole`.
  additionalPermissions: []

# -- [Pod security context](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#podsecuritycontext-v1-core), this supports full customisation.
# @default -- See _values.yaml_
podSecurityContext:
  runAsNonRoot: true
  fsGroup: 65534
  seccompProfile:
    type: RuntimeDefault

# -- _Kubernetes_ resources to monitor for DNS entries.
sources:
  - service
  - ingress

# -- How DNS records are synchronized between sources and providers; available values are `create-only`, `sync`, & `upsert-only`.
policy: upsert-only  # @schema enum:[create-only, sync, upsert-only]; type:string; default: "upsert-only"

# -- Specify the registry for storing ownership and labels.
# Valid values are `txt`, `aws-sd`, `dynamodb` & `noop`.
registry: txt  # @schema enum:[txt, aws-sd, dynamodb, noop]; default: "txt"
# -- (string) Specify an identifier for this instance of _ExternalDNS_ when using a registry other than `noop`.
txtOwnerId: Z00709001ZM41GRZIAR9B # @schema type:[string, null]; default: null
# -- (string) Specify a prefix for the domain names of TXT records created for the `txt` registry.
# Mutually exclusive with `txtSuffix`.
txtPrefix:  # @schema type:[string, null]; default: null
# -- (string) Specify a suffix for the domain names of TXT records created for the `txt` registry.
# Mutually exclusive with `txtPrefix`.
txtSuffix:  # @schema type:[string, null]; default: null

# -- Limit possible target zones by domain suffixes.
domainFilters:
  - o11y.tidb.stackadapt.in
