feat(cert-manager): Add Cloudns issuer and DNS-01 challenge support

- Introduced a new Cloudns issuer configuration for cert-manager.
- Created separate tasks for DNS-01 and HTTP-01 challenge issuers.
- Updated cert-manager tasks to include Cloudns provider and manage secrets.
- Refactored existing LetsEncrypt issuer registration to use new task structure.
- Added necessary Kubernetes resources for Cloudns integration, including RBAC and certificates.
- Updated Terraform configurations to support new DNS records and service changes.
- Adjusted deployment strategies for CoreDNS and Open WebUI applications.
This commit is contained in:
2025-06-07 20:39:38 +02:00
parent 3cda0b5624
commit 01bf71f8d2
25 changed files with 590 additions and 17396 deletions
@@ -0,0 +1,35 @@
- name: Cermanager | Create cloudns credentials
environment:
PATH: "{{ k8s_venv }}/bin:{{ ansible_env.PATH }}"
vars:
ansible_python_interpreter: "{{ k8s_venv }}/bin/python"
kubernetes.core.k8s:
state: present
kubeconfig: "{{ k8s_kubeconfig }}"
definition:
apiVersion: v1
kind: Secret
metadata:
name: cert-manager-webhook-cloudns-api-secret
namespace: cert-manager
type: Opaque
data:
auth_id: "{{ microk8s_cloudns_auth_id | b64encode }}"
auth_password: "{{ microk8s_cloudns_auth_password | b64encode }}"
- name: CertManager | Copy clouDNS issuer manifest to Kubernetes cluster
ansible.builtin.copy:
src: "cert-manager/cloudns-issuer.yaml"
dest: "{{ k8s_etc }}/k8s-certmanager-cloudns.yaml"
mode: "0600"
- name: CertManager | Apply clouDNS issuer manifests
environment:
PATH: "{{ k8s_venv }}/bin:{{ ansible_env.PATH }}"
vars:
ansible_python_interpreter: "{{ k8s_venv }}/bin/python"
kubernetes.core.k8s:
state: present
kubeconfig: "{{ k8s_kubeconfig }}"
src: "{{ k8s_etc }}/k8s-certmanager-cloudns.yaml"
wait: true