From 1ff8041dbe8f72fa019234b86c082cc66a04d81a Mon Sep 17 00:00:00 2001 From: Fran Mulero Date: Fri, 18 Jul 2025 09:47:32 +0200 Subject: [PATCH] [bitnami/external-dns] chore(providers): Remove unsupported in-tree providers (#35175) * [bitnami/external-dns] chore(providers): Remove unsupported in-tree providers Signed-off-by: Fran Mulero * Update CHANGELOG.md Signed-off-by: Bitnami Bot * Update README.md with readme-generator-for-helm Signed-off-by: Bitnami Bot * Fix typo Signed-off-by: Fran Mulero * Add Webhook providers documentation Signed-off-by: Fran Mulero --------- Signed-off-by: Fran Mulero Signed-off-by: Bitnami Bot Co-authored-by: Bitnami Bot --- bitnami/external-dns/CHANGELOG.md | 8 +- bitnami/external-dns/Chart.yaml | 2 +- bitnami/external-dns/README.md | 76 +++++---- bitnami/external-dns/templates/_helpers.tpl | 58 +------ bitnami/external-dns/templates/configmap.yaml | 4 - .../external-dns/templates/deployment.yaml | 151 +----------------- bitnami/external-dns/templates/secret.yaml | 25 --- bitnami/external-dns/values.yaml | 122 +------------- 8 files changed, 53 insertions(+), 393 deletions(-) diff --git a/bitnami/external-dns/CHANGELOG.md b/bitnami/external-dns/CHANGELOG.md index 6e1406fe57..797d06b17b 100644 --- a/bitnami/external-dns/CHANGELOG.md +++ b/bitnami/external-dns/CHANGELOG.md @@ -1,8 +1,12 @@ # Changelog -## 8.9.2 (2025-07-08) +## 9.0.0 (2025-07-17) -* [bitnami/external-dns] :zap: :arrow_up: Update dependency references ([#34882](https://github.com/bitnami/charts/pull/34882)) +* [bitnami/external-dns] chore(providers): Remove unsupported in-tree providers ([#35175](https://github.com/bitnami/charts/pull/35175)) + +## 8.9.2 (2025-07-08) + +* [bitnami/external-dns] :zap: :arrow_up: Update dependency references (#34882) ([84a7516](https://github.com/bitnami/charts/commit/84a7516ae6891bbeb2134ba939408867b46a5ba0)), closes [#34882](https://github.com/bitnami/charts/issues/34882) ## 8.9.1 (2025-07-04) diff --git a/bitnami/external-dns/Chart.yaml b/bitnami/external-dns/Chart.yaml index fade3d9270..a676410645 100644 --- a/bitnami/external-dns/Chart.yaml +++ b/bitnami/external-dns/Chart.yaml @@ -30,4 +30,4 @@ maintainers: name: external-dns sources: - https://github.com/bitnami/charts/tree/main/bitnami/external-dns -version: 8.9.2 +version: 9.0.0 diff --git a/bitnami/external-dns/README.md b/bitnami/external-dns/README.md index 4ca2b0fd61..6438502a34 100644 --- a/bitnami/external-dns/README.md +++ b/bitnami/external-dns/README.md @@ -101,6 +101,44 @@ You can use the following arguments: --set podSecurityContext.fsGroup=65534 --set podSecurityContext.runAsUser=0 ``` +### Webhook Providers + +Webhook providers allow integrating ExternalDNS with DNS providers through an HTTP interface. This approach decouples ExternalDNS and the Providers code which can be running in separate processes. + +With the Bitnami ExternalDNS chart, you can deploy Webhook Providers and configure ExternalDNS easely using `sidecars` and `extraArgs` values: + +```yaml +provider: webhook + +extraArgs: + webhook-provider-url: http://localhost:8080 + txt-prefix: reg- + +sidecars: + - name: my-webhook + image: + ports: + - containerPort: 8080 + name: http + livenessProbe: + httpGet: + path: / + port: http + initialDelaySeconds: 10 + timeoutSeconds: 5 + readinessProbe: + tcpSocket: + port: http + initialDelaySeconds: 10 + timeoutSeconds: 5 + env: + - name: + value: TEST + ... +``` + +More information about these new providers can be found in the [ExternalDNS documentation](https://github.com/kubernetes-sigs/external-dns/tree/master#new-providers) + ## Tutorials Find information about the requirements for each DNS provider on the link below: @@ -241,20 +279,6 @@ helm install my-release \ | `coredns.etcdTLS.caFilename` | When using the CoreDNS provider, specify CA PEM file name from the `coredns.etcdTLS.secretName` | `ca.crt` | | `coredns.etcdTLS.certFilename` | When using the CoreDNS provider, specify cert PEM file name from the `coredns.etcdTLS.secretName` | `cert.pem` | | `coredns.etcdTLS.keyFilename` | When using the CoreDNS provider, specify private key PEM file name from the `coredns.etcdTLS.secretName` | `key.pem` | -| `designate.username` | When using the Designate provider, specify the OpenStack authentication username. (optional) | `""` | -| `designate.password` | When using the Designate provider, specify the OpenStack authentication password. (optional) | `""` | -| `designate.applicationCredentialId` | When using the Designate provider, specify the OpenStack authentication application credential ID. This conflicts with `designate.username`. (optional) | `""` | -| `designate.applicationCredentialSecret` | When using the Designate provider, specify the OpenStack authentication application credential ID. This conflicts with `designate.password`. (optional) | `""` | -| `designate.authUrl` | When using the Designate provider, specify the OpenStack authentication Url. (optional) | `""` | -| `designate.regionName` | When using the Designate provider, specify the OpenStack region name. (optional) | `""` | -| `designate.userDomainName` | When using the Designate provider, specify the OpenStack user domain name. (optional) | `""` | -| `designate.projectName` | When using the Designate provider, specify the OpenStack project name. (optional) | `""` | -| `designate.authType` | When using the Designate provider, specify the OpenStack auth type. (optional) | `""` | -| `designate.customCAHostPath` | When using the Designate provider, use a CA file already on the host to validate Openstack APIs. This conflicts with `designate.customCA.enabled` | `""` | -| `designate.customCA.enabled` | When using the Designate provider, enable a custom CA (optional) | `false` | -| `designate.customCA.content` | When using the Designate provider, set the content of the custom CA | `""` | -| `designate.customCA.mountPath` | When using the Designate provider, set the mountPath in which to mount the custom CA configuration | `/config/designate` | -| `designate.customCA.filename` | When using the Designate provider, set the custom CA configuration filename | `designate-ca.pem` | | `exoscale.apiKey` | When using the Exoscale provider, `EXTERNAL_DNS_EXOSCALE_APIKEY` to set (optional) | `""` | | `exoscale.apiToken` | When using the Exoscale provider, `EXTERNAL_DNS_EXOSCALE_APISECRET` to set (optional) | `""` | | `exoscale.secretName` | Use an existing secret with keys "exoscale_api_key" and "exoscale_api_token" defined. | `""` | @@ -266,23 +290,6 @@ helm install my-release \ | `google.serviceAccountSecretKey` | When using the Google provider with an existing secret, specify the key name (optional) | `credentials.json` | | `google.serviceAccountKey` | When using the Google provider, specify the service account key JSON file. In this case a new secret will be created holding this service account (optional) | `""` | | `google.zoneVisibility` | When using the Google provider, fiter for zones of a specific visibility (private or public) | `""` | -| `hetzner.token` | When using the Hetzner provider, specify your token here. (required when `hetzner.secretName` is not provided. In this case a new secret will be created holding the token.) | `""` | -| `hetzner.secretName` | When using the Hetzner provider, specify the existing secret which contains your token. Disables the usage of `hetzner.token` (optional) | `""` | -| `hetzner.secretKey` | When using the Hetzner provider with an existing secret, specify the key name (optional) | `hetzner_token` | -| `infoblox.wapiUsername` | When using the Infoblox provider, specify the Infoblox WAPI username | `admin` | -| `infoblox.wapiPassword` | When using the Infoblox provider, specify the Infoblox WAPI password (required when provider=infoblox) | `""` | -| `infoblox.gridHost` | When using the Infoblox provider, specify the Infoblox Grid host (required when provider=infoblox) | `""` | -| `infoblox.view` | Infoblox view | `""` | -| `infoblox.secretName` | Existing secret name, when in place wapiUsername and wapiPassword are not required | `""` | -| `infoblox.domainFilter` | When using the Infoblox provider, specify the domain (optional) | `""` | -| `infoblox.nameRegex` | When using the Infoblox provider, specify the name regex filter (optional) | `""` | -| `infoblox.noSslVerify` | When using the Infoblox provider, disable SSL verification (optional) | `false` | -| `infoblox.wapiPort` | When using the Infoblox provider, specify the Infoblox WAPI port (optional) | `""` | -| `infoblox.wapiVersion` | When using the Infoblox provider, specify the Infoblox WAPI version (optional) | `""` | -| `infoblox.wapiConnectionPoolSize` | When using the Infoblox provider, specify the Infoblox WAPI request connection pool size (optional) | `""` | -| `infoblox.wapiHttpTimeout` | When using the Infoblox provider, specify the Infoblox WAPI request timeout in seconds (optional) | `""` | -| `infoblox.maxResults` | When using the Infoblox provider, specify the Infoblox Max Results (optional) | `""` | -| `infoblox.createPtr` | When using the Infoblox provider, specify the Infoblox create PTR flag (optional) | `false` | | `linode.apiToken` | When using the Linode provider, `LINODE_TOKEN` to set (optional) | `""` | | `linode.secretName` | Use an existing secret with key "linode_api_token" defined. | `""` | | `ns1.minTTL` | When using the ns1 provider, specify minimal TTL, as an integer, for records | `10` | @@ -332,9 +339,6 @@ helm install my-release \ | `pdns.secretName` | When using the PowerDNS provider, specify as secret name containing the API Key | `""` | | `transip.account` | When using the TransIP provider, specify the account name. | `""` | | `transip.apiKey` | When using the TransIP provider, specify the API key to use. | `""` | -| `vinyldns.host` | When using the VinylDNS provider, specify the VinylDNS API host. | `""` | -| `vinyldns.accessKey` | When using the VinylDNS provider, specify the Access Key to use. | `""` | -| `vinyldns.secretKey` | When using the VinylDNS provider, specify the Secret key to use. | `""` | | `domainFilters` | Limit possible target zones by domain suffixes (optional) | `[]` | | `excludeDomains` | Exclude subdomains (optional) | `[]` | | `regexDomainFilter` | Limit possible target zones by regex domain suffixes (optional) | `""` | @@ -501,6 +505,10 @@ Find more information about how to deal with common errors related to Bitnami's ## Upgrading +### To 9.0.0 + +Unsupported in-tree providers have been removed: OpenStack Designate, Hetzner, Infoblox, VinylDNS + ### To 8.7.0 This version introduces image verification for security purposes. To disable it, set `global.security.allowInsecureImages` to `true`. More details at [GitHub issue](https://github.com/bitnami/charts/issues/30850). diff --git a/bitnami/external-dns/templates/_helpers.tpl b/bitnami/external-dns/templates/_helpers.tpl index e94f5838d6..27bba581be 100644 --- a/bitnami/external-dns/templates/_helpers.tpl +++ b/bitnami/external-dns/templates/_helpers.tpl @@ -33,20 +33,12 @@ Return true if a secret object should be created {{- true -}} {{- else if and (eq .Values.provider "cloudflare") (or .Values.cloudflare.apiToken .Values.cloudflare.apiKey) (not .Values.cloudflare.secretName) -}} {{- true -}} -{{- else if and (eq .Values.provider "designate") (or .Values.designate.username .Values.designate.password) -}} - {{- true -}} -{{- else if and (eq .Values.provider "designate") (or .Values.designate.applicationCredentialId .Values.designate.applicationCredentialSecret) -}} - {{- true -}} {{- else if and (eq .Values.provider "digitalocean") .Values.digitalocean.apiToken (not .Values.digitalocean.secretName) -}} {{- true -}} {{- else if and (eq .Values.provider "exoscale") .Values.exoscale.apiKey (not .Values.exoscale.secretName) -}} {{- true -}} {{- else if and (eq .Values.provider "google") .Values.google.serviceAccountKey (not .Values.google.serviceAccountSecret) -}} {{- true -}} -{{- else if and (eq .Values.provider "hetzner") .Values.hetzner.token (not .Values.hetzner.secretName) -}} - {{- true -}} -{{- else if and (eq .Values.provider "infoblox") (and .Values.infoblox.wapiUsername .Values.infoblox.wapiPassword) (not .Values.infoblox.secretName) -}} - {{- true -}} {{- else if and (eq .Values.provider "linode") .Values.linode.apiToken (not .Values.linode.secretName) -}} {{- true -}} {{- else if and (eq .Values.provider "oci") (or .Values.oci.privateKeyFingerprint .Values.oci.useWorkloadIdentity) (not .Values.oci.secretName) -}} @@ -61,8 +53,6 @@ Return true if a secret object should be created {{- true -}} {{- else if and (eq .Values.provider "scaleway") .Values.scaleway.scwAccessKey (not .Values.scaleway.secretName) -}} {{- true -}} -{{- else if and (eq .Values.provider "vinyldns") (or .Values.vinyldns.secretKey .Values.vinyldns.accessKey) -}} - {{- true -}} {{- else if and (eq .Values.provider "ns1") .Values.ns1.apiKey (not .Values.ns1.secretName) -}} {{- true -}} {{- else if and (eq .Values.provider "civo") .Values.civo.apiToken (not .Values.civo.secretName) -}} @@ -78,9 +68,7 @@ Return true if a secret object should be created Return true if a configmap object should be created */}} {{- define "external-dns.createConfigMap" -}} -{{- if and (eq .Values.provider "designate") .Values.designate.customCA.enabled }} - {{- true -}} -{{- else if and (eq .Values.provider "rfc2136") .Values.rfc2136.rfc3645Enabled }} +{{- if and (eq .Values.provider "rfc2136") .Values.rfc2136.rfc3645Enabled }} {{- true -}} {{- else -}} {{- end -}} @@ -106,8 +94,6 @@ Return the name of the Secret used to store the passwords {{- .Values.exoscale.secretName }} {{- else if and (eq .Values.provider "google") .Values.google.serviceAccountSecret }} {{- .Values.google.serviceAccountSecret }} -{{- else if and (eq .Values.provider "hetzner") .Values.hetzner.secretName }} -{{- .Values.hetzner.secretName }} {{- else if and (eq .Values.provider "linode") .Values.linode.secretName }} {{- .Values.linode.secretName }} {{- else if and (eq .Values.provider "oci") .Values.oci.secretName }} @@ -116,8 +102,6 @@ Return the name of the Secret used to store the passwords {{- .Values.ovh.secretName }} {{- else if and (eq .Values.provider "pdns") .Values.pdns.secretName }} {{- .Values.pdns.secretName }} -{{- else if and (eq .Values.provider "infoblox") .Values.infoblox.secretName }} -{{- .Values.infoblox.secretName }} {{- else if and (eq .Values.provider "rfc2136") .Values.rfc2136.secretName }} {{- .Values.rfc2136.secretName }} {{- else if and (eq .Values.provider "ns1") .Values.ns1.secretName }} @@ -230,8 +214,6 @@ Compile all warnings into a single message, and call fail if the validation is e {{- $messages := append $messages (include "external-dns.validateValues.akamai.clientToken" .) -}} {{- $messages := append $messages (include "external-dns.validateValues.akamai.clientSecret" .) -}} {{- $messages := append $messages (include "external-dns.validateValues.aws" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.infoblox.gridHost" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.infoblox.wapiPassword" .) -}} {{- $messages := append $messages (include "external-dns.validateValues.pdns.apiUrl" .) -}} {{- $messages := append $messages (include "external-dns.validateValues.pdns.apiKey" .) -}} {{- $messages := append $messages (include "external-dns.validateValues.azure.resourceGroupWithoutTenantId" .) -}} @@ -359,31 +341,6 @@ external-dns: aws.assumeRoleArn {{- end -}} {{- end -}} -{{/* -Validate values of External DNS: -- must provide the Grid Manager host when provider is "infoblox" -*/}} -{{- define "external-dns.validateValues.infoblox.gridHost" -}} -{{- if and (eq .Values.provider "infoblox") (not .Values.infoblox.gridHost) -}} -external-dns: infoblox.gridHost - You must provide the Grid Manager host when provider="infoblox". - Please set the gridHost parameter (--set infoblox.gridHost="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of External DNS: -- must provide a WAPI password when provider is "infoblox" -*/}} -{{- define "external-dns.validateValues.infoblox.wapiPassword" -}} -{{- if and (eq .Values.provider "infoblox") (not .Values.infoblox.wapiPassword) (not .Values.infoblox.secretName) -}} -external-dns: infoblox.wapiPassword - You must provide a WAPI password when provider="infoblox". - Please set the wapiPassword parameter (--set infoblox.wapiPassword="xxxx") - or you can provide an existing secret name via infoblox.secretName -{{- end -}} -{{- end -}} - {{/* Validate values of External DNS: - must provide the PowerDNS API URL when provider is "pdns" @@ -633,19 +590,6 @@ external-dns: transip.account {{- end -}} {{- end -}} -{{/* -Validate values of External DNS: -- must provide an API token when provider is "hetzner" -*/}} -{{- define "external-dns.validateValues.hetzner" -}} -{{- if and (eq .Values.provider "hetzner") (or (not .Values.hetzner.token) (not .Values.hetzner.secretName)) -}} -external-dns: hetzner.token - You must provide the a Hetzner API Token when provider="hetzner". - Please set the token parameter (--set hetzner.token="xxxx") - or specify a secret that contains an API token. (--set hetzner.secretName="xxxx") -{{- end -}} -{{- end -}} - {{/* Validate values of TransIP DNS: - must provide the API key when provider is "transip" diff --git a/bitnami/external-dns/templates/configmap.yaml b/bitnami/external-dns/templates/configmap.yaml index c83a35a8dd..3829a18090 100644 --- a/bitnami/external-dns/templates/configmap.yaml +++ b/bitnami/external-dns/templates/configmap.yaml @@ -14,10 +14,6 @@ metadata: annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} {{- end }} data: -{{- if .Values.designate.customCA.enabled }} - {{ .Values.designate.customCA.filename }}: | -{{ .Values.designate.customCA.content | indent 4 }} -{{- end }} {{- if .Values.rfc2136.rfc3645Enabled }} krb5.conf: | {{ .Values.rfc2136.kerberosConfig | indent 4 }} diff --git a/bitnami/external-dns/templates/deployment.yaml b/bitnami/external-dns/templates/deployment.yaml index e775ccf6b8..bbd3482d8b 100644 --- a/bitnami/external-dns/templates/deployment.yaml +++ b/bitnami/external-dns/templates/deployment.yaml @@ -24,7 +24,7 @@ spec: template: metadata: labels: {{- include "common.labels.standard" ( dict "customLabels" $podLabels "context" $ ) | nindent 8 }} - {{- if or .Values.podAnnotations (and .Values.metrics.enabled .Values.metrics.podAnnotations) (include "external-dns.createSecret" .) (and (eq .Values.provider "designate") .Values.designate.customCA.enabled) }} + {{- if or .Values.podAnnotations (and .Values.metrics.enabled .Values.metrics.podAnnotations) (include "external-dns.createSecret" .) }} annotations: {{- if or .Values.podAnnotations (and .Values.metrics.enabled .Values.metrics.podAnnotations) }} {{- $podAnnotations := include "common.tplvalues.merge" (dict "values" (list .Values.podAnnotations .Values.metrics.podAnnotations) "context" .) }} @@ -33,7 +33,7 @@ spec: {{- if (include "external-dns.createSecret" .) }} checksum/secret: {{ include (print $.Template.BasePath "/secret.yaml") . | sha256sum }} {{- end }} - {{- if and (eq .Values.provider "designate") .Values.designate.customCA.enabled }} + {{- if (include "external-dns.createConfigMap" .) }} checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }} {{- end }} {{- end }} @@ -464,64 +464,6 @@ spec: value: {{ .Values.coredns.etcdTLS.mountPath }}/{{ include "external-dns.tlsCACert" . }} {{- end }} {{- end }} - {{- if eq .Values.provider "designate" }} - # Designate environment variables - {{- if .Values.designate.customCA.enabled }} - - name: OPENSTACK_CA_FILE - value: {{ .Values.designate.customCA.mountPath }}/{{ .Values.designate.customCA.filename }} - {{- else if .Values.designate.customCAHostPath }} - - name: OPENSTACK_CA_FILE - value: {{ .Values.designate.customCAHostPath }} - {{- end }} - {{- if .Values.designate.username }} - - name: OS_USERNAME - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: designate_username - {{- end }} - {{- if .Values.designate.password }} - - name: OS_PASSWORD - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: designate_password - {{- end }} - {{- if .Values.designate.applicationCredentialId }} - - name: OS_APPLICATION_CREDENTIAL_ID - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: designate_application_credential_id - {{- end }} - {{- if .Values.designate.applicationCredentialSecret }} - - name: OS_APPLICATION_CREDENTIAL_SECRET - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: designate_application_credential_secret - {{- end }} - {{- if .Values.designate.authUrl }} - - name: OS_AUTH_URL - value: {{ .Values.designate.authUrl }} - {{- end }} - {{- if .Values.designate.regionName }} - - name: OS_REGION_NAME - value: {{ .Values.designate.regionName }} - {{- end }} - {{- if .Values.designate.userDomainName }} - - name: OS_USER_DOMAIN_NAME - value: {{ .Values.designate.userDomainName }} - {{- end }} - {{- if .Values.designate.projectName }} - - name: OS_PROJECT_NAME - value: {{ .Values.designate.projectName }} - {{- end }} - {{- if .Values.designate.authType }} - - name: OS_AUTH_TYPE - value: {{ .Values.designate.authType }} - {{- end }} - {{- end }} {{- if and (eq .Values.provider "digitalocean") (or .Values.digitalocean.apiToken .Values.digitalocean.secretName) }} # DigitalOcean environment variables - name: DO_TOKEN @@ -554,22 +496,6 @@ spec: value: /etc/secrets/service-account/credentials.json {{- end }} {{- end }} - {{- if eq .Values.provider "hetzner" }} - # Hetzner environment variables - {{- if .Values.hetzner.secretName }} - - name: HETZNER_TOKEN - valueFrom: - secretKeyRef: - name: {{ .Values.hetzner.secretName }} - key: {{ .Values.hetzner.secretKey }} - {{- else }} - - name: HETZNER_TOKEN - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: hetzner_token - {{- end }} - {{- end }} {{- if eq .Values.provider "linode" }} # Linode environment variables {{- if or (.Values.linode.apiToken) (.Values.linode.secretName) }} @@ -621,29 +547,6 @@ spec: key: scw_secret_key {{- end }} {{- end }} - {{- if eq .Values.provider "infoblox" }} - # Infloblox environment variables - {{- if .Values.infoblox.wapiConnectionPoolSize }} - - name: EXTERNAL_DNS_INFOBLOX_HTTP_POOL_CONNECTIONS - value: "{{ .Values.infoblox.wapiConnectionPoolSize }}" - {{- end }} - {{- if .Values.infoblox.wapiHttpTimeout }} - - name: EXTERNAL_DNS_INFOBLOX_HTTP_REQUEST_TIMEOUT - value: "{{ .Values.infoblox.wapiHttpTimeout }}" - {{- end }} - {{- if or (and .Values.infoblox.wapiUsername .Values.infoblox.wapiPassword) (.Values.infoblox.secretName) }} - - name: EXTERNAL_DNS_INFOBLOX_WAPI_USERNAME - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: infoblox_wapi_username - - name: EXTERNAL_DNS_INFOBLOX_WAPI_PASSWORD - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: infoblox_wapi_password - {{- end }} - {{- end }} {{- if eq .Values.provider "rfc2136" }} {{- if .Values.rfc2136.tsigSecret | or (and .Values.rfc2136.kerberosUsername .Values.rfc2136.kerberosPassword) | or .Values.rfc2136.secretName }} # RFC 2136 environment variables @@ -674,27 +577,6 @@ spec: secretKeyRef: name: {{ template "external-dns.secretName" . }} key: pdns_api_key - {{- end }} - {{- if eq .Values.provider "vinyldns" }} - # VinylDNS environment variables - {{- if .Values.vinyldns.host }} - - name: VINYLDNS_HOST - value: {{ .Values.vinyldns.host }} - {{- end }} - {{- if .Values.vinyldns.accessKey }} - - name: VINYLDNS_ACCESS_KEY - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: vinyldns-access-key - {{- end }} - {{- if .Values.vinyldns.secretKey }} - - name: VINYLDNS_SECRET_KEY - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: vinyldns-secret-key - {{- end }} {{- end }} {{- if .Values.extraEnvVars }} {{- include "common.tplvalues.render" (dict "value" .Values.extraEnvVars "context" $) | nindent 12 }} @@ -825,20 +707,6 @@ spec: - name: oci-config-file mountPath: /etc/kubernetes/ {{- end }} - {{- if eq .Values.provider "designate" }} - # Designate mountPath(s) - {{- if and (.Values.designate.customCAHostPath) (.Values.designate.customCA.enabled) }} - {{- fail "designate.customCAHostPath cannot be specified with designate.customCA.enabled set to true" }} - {{- else if .Values.designate.customCA.enabled }} - - name: designate-custom-ca - mountPath: {{ .Values.designate.customCA.mountPath }} - readOnly: true - {{- else if .Values.designate.customCAHostPath }} - - name: designate-custom-ca-hostpath - mountPath: {{ .Values.designate.customCAHostPath }} - readOnly: true - {{- end }} - {{- end }} {{- if and (eq .Values.provider "rfc2136") .Values.rfc2136.rfc3645Enabled }} - name: krb5config mountPath: /etc/krb5.conf @@ -913,21 +781,6 @@ spec: path: credentials.json {{- end }} {{- end }} - {{- if eq .Values.provider "designate" }} - # Designate volume(s) - {{- if .Values.designate.customCA.enabled }} - - name: designate-custom-ca - configMap: - name: {{ template "common.names.fullname" . }} - items: - - key: {{ .Values.designate.customCA.filename }} - path: {{ .Values.designate.customCA.filename }} - {{- else if .Values.designate.customCAHostPath }} - - name: designate-custom-ca-hostpath - hostPath: - path: {{ .Values.designate.customCAHostPath }} - {{- end }} - {{- end }} {{- if and (eq .Values.provider "rfc2136") .Values.rfc2136.rfc3645Enabled }} # Kerberos config volume - name: krb5config diff --git a/bitnami/external-dns/templates/secret.yaml b/bitnami/external-dns/templates/secret.yaml index cf86c5d6a3..09cf766396 100644 --- a/bitnami/external-dns/templates/secret.yaml +++ b/bitnami/external-dns/templates/secret.yaml @@ -34,9 +34,6 @@ data: {{- if eq .Values.provider "google" }} credentials.json: {{ .Values.google.serviceAccountKey | b64enc | quote }} {{- end }} - {{- if and (eq .Values.provider "hetzner") (not .Values.hetzner.secretName) }} - hetzner_token: {{ .Values.hetzner.token | b64enc | quote }} - {{- end }} {{- if eq .Values.provider "civo" }} apiToken: {{ .Values.civo.apiToken | b64enc | quote }} {{- end }} @@ -47,20 +44,6 @@ data: cloudflare_api_key: {{ required "cloudflare.apiKey is required if cloudflare.apiToken is not provided" .Values.cloudflare.apiKey | b64enc | quote }} {{- end }} {{- end }} - {{- if eq .Values.provider "designate" }} - {{- if .Values.designate.username }} - designate_username: {{ .Values.designate.username | b64enc | quote }} - {{- end }} - {{- if .Values.designate.password }} - designate_password: {{ .Values.designate.password | b64enc | quote }} - {{- end }} - {{- if .Values.designate.applicationCredentialId }} - designate_application_credential_id: {{ .Values.designate.applicationCredentialId | b64enc | quote }} - {{- end }} - {{- if .Values.designate.applicationCredentialSecret }} - designate_application_credential_secret: {{ .Values.designate.applicationCredentialSecret | b64enc | quote }} - {{- end }} - {{- end }} {{- if eq .Values.provider "digitalocean" }} digitalocean_api_token: {{ .Values.digitalocean.apiToken | b64enc | quote }} {{- end }} @@ -68,10 +51,6 @@ data: exoscale_api_key: {{ .Values.exoscale.apiKey | b64enc | quote }} exoscale_api_token: {{ .Values.exoscale.apiToken | b64enc | quote }} {{- end }} - {{- if eq .Values.provider "infoblox" }} - infoblox_wapi_username: {{ .Values.infoblox.wapiUsername | b64enc | quote }} - infoblox_wapi_password: {{ .Values.infoblox.wapiPassword | b64enc | quote }} - {{- end }} {{- if eq .Values.provider "linode" }} linode_api_token: {{ .Values.linode.apiToken | b64enc | quote }} {{- end }} @@ -98,10 +77,6 @@ data: scw_access_key: {{ .Values.scaleway.scwAccessKey | b64enc | quote }} scw_secret_key: {{ .Values.scaleway.scwSecretKey | b64enc | quote }} {{- end }} - {{- if eq .Values.provider "vinyldns" }} - vinyldns-access-key: {{ .Values.vinyldns.accessKey | b64enc | quote }} - vinyldns-secret-key: {{ .Values.vinyldns.secretKey | b64enc | quote }} - {{- end }} {{- if eq .Values.provider "ns1" }} ns1-api-key: {{ .Values.ns1.apiKey | b64enc | quote }} {{- end }} diff --git a/bitnami/external-dns/values.yaml b/bitnami/external-dns/values.yaml index 1fb870aff9..cc333c9e6c 100644 --- a/bitnami/external-dns/values.yaml +++ b/bitnami/external-dns/values.yaml @@ -118,7 +118,7 @@ sources: # - contour-httpproxy ## @param provider DNS provider where the DNS records will be created. ## Available providers are: -## - akamai, alibabacloud, aws, azure, azure-private-dns, cloudflare, coredns, designate, digitalocean, google, hetzner, infoblox, linode, rfc2136, transip, oci +## - akamai, alibabacloud, aws, azure, azure-private-dns, civo, cloudflare, coredns, digitalocean, exoscale, google, linode, ns1, oci, ovh, pdns, pihole, rfc2136, scaleway, transip ## provider: aws ## @param initContainers Attach additional init containers to the pod (evaluated as a template) @@ -414,52 +414,6 @@ coredns: ## Will be used by external-dns to authenticate against etcd ## keyFilename: "key.pem" -## OpenStack Designate provider configuration to be set via arguments/env. variables -## -designate: - ## Set Openstack environment variables (optional). Username and password will be saved in a kubernetes secret - ## The alternative to this is to export the necessary Openstack environment variables in the extraEnv argument - ## @param designate.username When using the Designate provider, specify the OpenStack authentication username. (optional) - ## @param designate.password When using the Designate provider, specify the OpenStack authentication password. (optional) - ## @param designate.applicationCredentialId When using the Designate provider, specify the OpenStack authentication application credential ID. This conflicts with `designate.username`. (optional) - ## @param designate.applicationCredentialSecret When using the Designate provider, specify the OpenStack authentication application credential ID. This conflicts with `designate.password`. (optional) - ## @param designate.authUrl When using the Designate provider, specify the OpenStack authentication Url. (optional) - ## @param designate.regionName When using the Designate provider, specify the OpenStack region name. (optional) - ## @param designate.userDomainName When using the Designate provider, specify the OpenStack user domain name. (optional) - ## @param designate.projectName When using the Designate provider, specify the OpenStack project name. (optional) - ## @param designate.authType When using the Designate provider, specify the OpenStack auth type. (optional) - ## e.g: - ## username: "someuser" - ## password: "p@55w0rd" - ## authUrl: "https://mykeystone.example.net:5000/v3/" - ## regionName: "dev" - ## userDomainName: "development" - ## projectName: "myteamname" - ## - username: "" - password: "" - applicationCredentialId: "" - applicationCredentialSecret: "" - authUrl: "" - regionName: "" - userDomainName: "" - projectName: "" - authType: "" - ## @param designate.customCAHostPath When using the Designate provider, use a CA file already on the host to validate Openstack APIs. This conflicts with `designate.customCA.enabled` - ## This conflicts setting the above customCA to true and chart rendering will fail if you set customCA to true and specify customCAHostPath - ## - customCAHostPath: "" - ## Use a custom CA (optional) - ## @param designate.customCA.enabled When using the Designate provider, enable a custom CA (optional) - ## @param designate.customCA.content When using the Designate provider, set the content of the custom CA - ## @param designate.customCA.mountPath When using the Designate provider, set the mountPath in which to mount the custom CA configuration - ## @param designate.customCA.filename When using the Designate provider, set the custom CA configuration filename - ## - customCA: - enabled: false - content: "" - mountPath: "/config/designate" - filename: "designate-ca.pem" ## Exoscale configuration to be set via arguments/env. variables ## exoscale: @@ -506,68 +460,6 @@ google: ## @param google.zoneVisibility When using the Google provider, fiter for zones of a specific visibility (private or public) ## zoneVisibility: "" -## Hetzner configuration to be set via arguments/env. variables -## -hetzner: - ## @param hetzner.token When using the Hetzner provider, specify your token here. (required when `hetzner.secretName` is not provided. In this case a new secret will be created holding the token.) - ## Mutually exclusive with `hetzner.secretName`. - ## - token: "" - ## @param hetzner.secretName When using the Hetzner provider, specify the existing secret which contains your token. Disables the usage of `hetzner.token` (optional) - ## - secretName: "" - ## @param hetzner.secretKey When using the Hetzner provider with an existing secret, specify the key name (optional) - ## - secretKey: "hetzner_token" -## Infoblox configuration to be set via arguments/env. variables -## -infoblox: - ## @param infoblox.wapiUsername When using the Infoblox provider, specify the Infoblox WAPI username - ## - wapiUsername: "admin" - ## @param infoblox.wapiPassword When using the Infoblox provider, specify the Infoblox WAPI password (required when provider=infoblox) - ## - wapiPassword: "" - ## @param infoblox.gridHost When using the Infoblox provider, specify the Infoblox Grid host (required when provider=infoblox) - ## - gridHost: "" - ## @param infoblox.view Infoblox view - ## - view: "" - ## Optional keys - ## - ## @param infoblox.secretName Existing secret name, when in place wapiUsername and wapiPassword are not required - ## - secretName: "" - ## - ## @param infoblox.domainFilter When using the Infoblox provider, specify the domain (optional) - ## - domainFilter: "" - ## - ## @param infoblox.nameRegex When using the Infoblox provider, specify the name regex filter (optional) - ## - nameRegex: "" - ## @param infoblox.noSslVerify When using the Infoblox provider, disable SSL verification (optional) - ## - noSslVerify: false - ## @param infoblox.wapiPort When using the Infoblox provider, specify the Infoblox WAPI port (optional) - ## - wapiPort: "" - ## @param infoblox.wapiVersion When using the Infoblox provider, specify the Infoblox WAPI version (optional) - ## - wapiVersion: "" - ## @param infoblox.wapiConnectionPoolSize When using the Infoblox provider, specify the Infoblox WAPI request connection pool size (optional) - ## - wapiConnectionPoolSize: "" - ## @param infoblox.wapiHttpTimeout When using the Infoblox provider, specify the Infoblox WAPI request timeout in seconds (optional) - ## - wapiHttpTimeout: "" - ## @param infoblox.maxResults When using the Infoblox provider, specify the Infoblox Max Results (optional) - ## - maxResults: "" - ## @param infoblox.createPtr When using the Infoblox provider, specify the Infoblox create PTR flag (optional) - ## - createPtr: false ## Linode configuration to be set via arguments/env. variables ## linode: @@ -757,18 +649,6 @@ transip: ## @param transip.apiKey When using the TransIP provider, specify the API key to use. ## apiKey: "" -## VinylDNS configuration to be set via arguments/env. variables -## -vinyldns: - ## @param vinyldns.host When using the VinylDNS provider, specify the VinylDNS API host. - ## - host: "" - ## @param vinyldns.accessKey When using the VinylDNS provider, specify the Access Key to use. - ## - accessKey: "" - ## @param vinyldns.secretKey When using the VinylDNS provider, specify the Secret key to use. - ## - secretKey: "" ## @param domainFilters Limit possible target zones by domain suffixes (optional) ## domainFilters: []