📝 Description
Hey! I'm trying to enable ExternalDNS on an existing setup, but ArgoCD won't deploy it.
Not sure how to cleanly reproduce this yet, so I included my configs below.
So far, I have found that in my generated values.yaml template, the variable external-dns.webhookImage is not set at all. The question here is what should be set in it.
🧪 Steps to Reproduce
kubara Config:
version: v1alpha4
clusters:
- name: dev-null
stage: dev
type: hub
dnsName: ske.PRIVATE_DOMAIN
ssoOrg: none
ssoTeam: none
ingressClassName: traefik
terraform:
provider: none
projectId: none
kubernetesType: edge
kubernetesVersion: "1.34"
dns:
name: ske.PRIVATE_DOMAIN
email: moin@PRIVATE_DOMAIN
argocd:
selfManaged: enabled
repo:
https:
configs:
url: http://PRIVATE_DOMAIN/alex/kubara.git
targetRevision: main
components:
url: http://PRIVATE_DOMAIN/alex/kubara.git
targetRevision: main
catalogs:
- oci://ghcr.io/kubara-io/catalogs/general:1.1.0
services:
cert-manager:
status: disabled
external-dns:
status: enabled
external-secrets:
status: enabled
homer-dashboard:
status: enabled
kube-prometheus-stack:
status: enabled
kyverno:
status: disabled
kyverno-policies:
status: disabled
kyverno-policy-reporter:
status: disabled
loki:
status: enabled
longhorn:
status: disabled
metallb:
status: disabled
metrics-server:
status: enabled
oauth2-proxy:
status: disabled
reloader:
status: disabled
traefik:
status: enabled
velero:
status: disabled
💻 Environment
- Kubara version: v0.13.0
- Kubernetes version: v1.36.0 (Talos v1.13.8)
- Helm version: v4.2.2
- Platform: Talos
- OS/Arch: 6.18.42-talos (amd64)
📎 Additional Context / Logs
ArgoCD Logs:
Failed to load target state: failed to generate manifest for source 2 of 2: rpc error: code = Unknown desc = Manifest generation error (cached): failed to execute helm template command: failed running helm: `helm template . --name-template external-dns --namespace external-dns --kube-version 1.36.0 --values <path to cached source>/platform-components/helm/external-dns/values.yaml --values <path to cached source>/platform-configs/dev-null/helm/external-dns/values.generated.yaml <api versions removed> --include-crds` failed exit status 1: Error: execution error at (external-dns/charts/external-dns/templates/deployment.yaml:193:20): ERROR: webhook provider needs an image repository and a tag Use --debug flag to render out invalid YAML
helm template logs:
Error: execution error at (external-dns/charts/external-dns/templates/deployment.yaml:193:20): ERROR: webhook provider needs an image repository and a tag
deployment.yaml:
- name: webhook
image: {{ include "external-dns.webhookImage" . }}
imagePullPolicy: {{ .image.pullPolicy }}
generated values.yaml:
---
# creates an ExternalSecret that looks for the specified remote-keys (remote secret names) to inject into webhook pod
externalSecrets: {}
namespace:
annotations: {}
labels: {}
external-dns:
sources: [ingress]
policy: sync
serviceMonitor:
enabled: false
resources:
requests:
cpu: 10m
memory: 100Mi
limits:
memory: 100Mi
podSecurityContext:
runAsNonRoot: true
fsGroup: 65534
seccompProfile:
type: RuntimeDefault
securityContext:
privileged: false
allowPrivilegeEscalation: false
readOnlyRootFilesystem: true
runAsNonRoot: true
runAsUser: 65532
runAsGroup: 65532
capabilities:
drop: [ALL]
provider:
name: webhook
webhook:
resources:
requests:
cpu: 10m
memory: 100Mi
limits:
memory: 100Mi
securityContext:
privileged: false
allowPrivilegeEscalation: false
readOnlyRootFilesystem: true
runAsNonRoot: true
runAsUser: 65534
runAsGroup: 65534
capabilities:
drop: [ALL]
livenessProbe:
httpGet:
port: http-webhook
readinessProbe:
httpGet:
port: http-webhook
✅ Checklist
📝 Description
Hey! I'm trying to enable ExternalDNS on an existing setup, but ArgoCD won't deploy it.
Not sure how to cleanly reproduce this yet, so I included my configs below.
So far, I have found that in my generated values.yaml template, the variable
external-dns.webhookImageis not set at all. The question here is what should be set in it.🧪 Steps to Reproduce
kubara Config:
💻 Environment
📎 Additional Context / Logs
ArgoCD Logs:
helm template logs:
deployment.yaml:
generated values.yaml:
✅ Checklist