# Configuration pour cert-manager-webhook-ovh # Ce webhook permet à cert-manager d'utiliser OVH DNS-01 challenge pour les certificats wildcard # Chart officiel: https://artifacthub.io/packages/helm/cert-manager-webhook-ovh/cert-manager-webhook-ovh cert-manager-webhook-ovh: # Version de la configuration (requis par le chart) configVersion: 0.0.2 # Nombre de replicas replicas: 1 # Configuration du webhook # Le GroupName est utilisé pour identifier votre entreprise # Ce nom doit être référencé dans chaque ClusterIssuer pour informer cert-manager # où envoyer les ChallengePayload resources pour résoudre le challenge DNS-01 groupName: acme.gkdomaine.fr # Configuration cert-manager # Ces valeurs doivent correspondre à votre déploiement cert-manager certManager: # namespace dans lequel cert-manager est déployé namespace: cert-manager-ops # nom du ServiceAccount cert-manager (par défaut: cert-manager) serviceAccountName: cert-manager # Configuration RBAC # Si le secret de l'issuer est dans un namespace différent, changez `Role` (défaut) # en `ClusterRole` pour que le webhook puisse accéder à ce secret rbac: roleType: ClusterRole # Utilisé pour accéder aux secrets dans différents namespaces # Image du webhook image: repository: ghcr.io/aureq/cert-manager-webhook-ovh # tag: "" # Laisser vide pour utiliser la version du chart pullPolicy: IfNotPresent # Configuration du Service service: type: ClusterIP port: 443 # Port du service (exposé en interne) # Port utilisé par l'application pour exposer le service # Le webhook écoute sur le port 8443 (voir les logs) port: 8443 # Resources resources: limits: cpu: 100m memory: 128Mi requests: cpu: 50m memory: 64Mi # Les ClusterIssuers sont créés séparément dans helm/certificates/ops/templates/ # Pas besoin de les créer ici car nous les gérons via le chart certificates issuers: - name: letsencrypt-dns01-prod create: true kind: ClusterIssuer # Namespace requis si kind est Issuer, optionnel pour ClusterIssuer namespace: cert-manager-ops email: gkpoubelle78@gmail.com acmeServerUrl: https://acme-v02.api.letsencrypt.org/directory # Configuration spécifique OVH reconnue par les templates du chart ovhEndpointName: ovh-eu ovhAuthenticationMethod: application # Références aux secrets (le chart s'occupe de générer le bon format) ovhAuthenticationRef: applicationKeyRef: name: cert-manager-webhook-ovh key: application-key applicationSecretRef: name: cert-manager-webhook-ovh key: application-secret applicationConsumerKeyRef: name: cert-manager-webhook-ovh key: consumer-key # Important pour vos domaines spécifiques # Note : Vérifiez si votre chart supporte les selectors via values, # sinon il faudra peut-être patcher le template. # Configuration External Secrets Operator - Stratégie Multi-Namespace # Cette configuration permet de partager les secrets OVH entre cert-manager-ops et cert-manager-webhook-ovh-ops # en utilisant un ClusterSecretStore et des ExternalSecrets dans chaque namespace externalSecret: enabled: false # Activez cette option pour utiliser External Secrets refreshInterval: "1h" # Intervalle de rafraîchissement du secret secretName: "cert-manager-webhook-ovh" # Nom du Secret créé dans chaque namespace # Références aux clés dans Vault remoteRef: applicationKey: "" # Chemin/clef dans Vault pour application-key (ex: "secret/data/ovh#application-key") applicationSecret: "" # Chemin/clef dans Vault pour application-secret (ex: "secret/data/ovh#application-secret") consumerKey: "" # Chemin/clef dans Vault pour consumer-key (ex: "secret/data/ovh#consumer-key") # Configuration HashiCorp Vault vault: secretStoreName: "vault-backend" # Nom du ClusterSecretStore à créer server: "https://vault.example.com:8200" # URL de votre serveur Vault path: "secret" # Chemin du secret engine (secret, kv, etc.) version: "v2" # Version de l'API KV (v1 ou v2) auth: # Authentification Kubernetes (recommandé pour la stratégie Multi-Namespace) kubernetes: mountPath: "kubernetes" # Chemin du mount Kubernetes dans Vault role: "" # Nom du rôle Vault configuré pour Kubernetes auth # Le ServiceAccount doit être autorisé dans les namespaces cert-manager-ops et cert-manager-webhook-ovh-ops serviceAccountRef: name: "cert-manager-webhook-ovh-sa" # ServiceAccount utilisé pour l'authentification namespace: "cert-manager-webhook-ovh-ops" # Namespace du ServiceAccount # Alternative : Authentification par token # token: # secretName: "vault-token" # Nom du Secret contenant le token # secretKey: "token" # Clé dans le Secret # Alternative : Authentification AppRole # appRole: # path: "approle" # roleId: "" # Role ID # secretRef: # name: "vault-approle-secret" # Secret contenant le Secret ID # key: "secretId"