diff --git a/charts/hetzner-ddns/Chart.yaml b/charts/hetzner-ddns/Chart.yaml new file mode 100644 index 0000000..869c70f --- /dev/null +++ b/charts/hetzner-ddns/Chart.yaml @@ -0,0 +1,8 @@ +apiVersion: v2 +name: hetzner-ddns +description: A Helm chart for Kubernetes + +type: application +version: 0.1.0 + +appVersion: "0.0.1" diff --git a/charts/hetzner-ddns/templates/configmap.yaml b/charts/hetzner-ddns/templates/configmap.yaml new file mode 100644 index 0000000..bac6bb6 --- /dev/null +++ b/charts/hetzner-ddns/templates/configmap.yaml @@ -0,0 +1,7 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{ printf "%s-hetzner-ddns" .Release.Name }} +data: + config.yaml: | + {{- required "ddnsConfig is required" .Values.ddnsConfig | toYaml | nindent 4 }} diff --git a/charts/hetzner-ddns/templates/deployment.yaml b/charts/hetzner-ddns/templates/deployment.yaml new file mode 100644 index 0000000..6fa6641 --- /dev/null +++ b/charts/hetzner-ddns/templates/deployment.yaml @@ -0,0 +1,30 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ printf "%s-hetzner-ddns" .Release.Name }} +spec: + replicas: 1 + selector: + matchLabels: + app: hetzner-ddns + template: + metadata: + labels: + app: hetzner-ddns + spec: + containers: + - name: ddns + image: {{ required "image is required" .Values.image | quote }} + env: + - name: HETZNER_CLOUD_API_TOKEN + valueFrom: + secretKeyRef: + name: {{ printf "%s-hetzner-ddns" .Release.Name }} + key: HETZNER_CLOUD_API_TOKEN + volumeMounts: + - name: config-volume + mountPath: /config + volumes: + - name: config-volume + configMap: + name: {{ printf "%s-hetzner-ddns" .Release.Name }} diff --git a/charts/hetzner-ddns/templates/secret.yaml b/charts/hetzner-ddns/templates/secret.yaml new file mode 100644 index 0000000..126b556 --- /dev/null +++ b/charts/hetzner-ddns/templates/secret.yaml @@ -0,0 +1,7 @@ +apiVersion: v1 +kind: Secret +metadata: + name: {{ printf "%s-hetzner-ddns" .Release.Name }} +type: Opaque +stringData: + HETZNER_CLOUD_API_TOKEN: {{ required "apiToken is required" .Values.apiToken | quote }} diff --git a/charts/hetzner-ddns/values.yaml b/charts/hetzner-ddns/values.yaml new file mode 100644 index 0000000..e69de29