Simon Kaiser 3 роки тому
джерело
коміт
eedd561db0

+ 22
- 0
gitops-kaisers-info/templates/cert-manager.yaml Переглянути файл

@@ -20,3 +20,25 @@ spec:
20 20
     targetRevision: 1.7.1
21 21
     helm:
22 22
       releaseName: cert-manager
23
+---
24
+apiVersion: argoproj.io/v1alpha1
25
+kind: Application
26
+metadata:
27
+  name: cert-manager-hetzner-webhook
28
+  namespace: {{ .Values.spec.namespace }}
29
+  finalizers:
30
+  - resources-finalizer.argocd.argoproj.io
31
+spec:
32
+  destination:
33
+    namespace: {{ .Values.spec.namespace }}
34
+    name: {{ .Values.spec.destination.name }}
35
+  project: {{ .Values.spec.project }}
36
+  syncPolicy:
37
+    automated:
38
+      prune: true
39
+      selfHeal: true
40
+  source:
41
+    chart: cert-manager-webhook-hetzner
42
+    repoURL: https://vadimkim.github.io/cert-manager-webhook-hetzner
43
+    helm:
44
+      releaseName: cert-manager-webhook-hetzner

+ 8
- 0
gitops-kaisers-info/templates/hetzner-secret.yaml Переглянути файл

@@ -0,0 +1,8 @@
1
+apiVersion: v1
2
+kind: Secret
3
+metadata:
4
+  name: hetzner-secret
5
+  namespace: cert-manager
6
+type: Opaque
7
+data:
8
+  api-key: M21TS3N1bzAzTVNld1JQeW12aVFpSU5TbFhPc0lBOFU=

+ 9
- 11
gitops-kaisers-info/templates/letsencrypt.yaml Переглянути файл

@@ -10,17 +10,15 @@ spec:
10 10
       name: "staging-issuer-account-key"
11 11
     server: "https://acme-staging-v02.api.letsencrypt.org/directory"
12 12
     solvers:
13
-      - http01:
14
-          ingress:
15
-            class: "traefik"
16
-            ingressTemplate:
17
-              metadata:
18
-                annotations:
19
-                  kubernetes.io/ingress.class: "traefik"
20
-                  traefik.ingress.kubernetes.io/router.tls: "true"
21
-                  traefik.ingress.kubernetes.io/frontend-entry-points: "https"
22
-                  traefik.ingress.kubernetes.io/router.entrypoints: "websecure"
23
-                  #traefik.ingress.kubernetes.io/redirect-entry-point: "https"
13
+      - dns01:
14
+        webhook:
15
+          # This group needs to be configured when installing the helm package, otherwise the webhook won't have permission to create an ACME challenge for this API group.
16
+          groupName: acme.yourdomain.tld
17
+          solverName: hetzner
18
+          config:
19
+            secretName: hetzner-secret
20
+            zoneName: kaisers.info # (Optional): When not provided the Zone will searched in Hetzner API by recursion on full domain name
21
+            apiUrl: https://dns.hetzner.com/api/v1
24 22
 ---
25 23
 apiVersion: cert-manager.io/v1
26 24
 kind: ClusterIssuer