chore: build
ci-api / test (push) Successful in 23m32s
ci-web / test (push) Successful in 14m7s

This commit is contained in:
Xor290
2026-09-20 18:52:09 +02:00
parent 9e11f01c2c
commit 8d857faa45
66 changed files with 3673 additions and 1564 deletions
@@ -0,0 +1,59 @@
# Cluster déjà équipé pour omnex.sbs (cert-manager + ClusterIssuers
# `letsencrypt-dns` / `letsencrypt-dns-staging` limités à la zone omnex.sbs).
# Ce fichier AJOUTE des issuers dédiés à vitrine-omnex.club, avec des noms
# distincts : rien d'existant n'est modifié ni écrasé.
#
# Ne PAS réinstaller cert-manager : il est déjà là. Vérifier :
# kubectl get pods -n cert-manager
#
# Un certificat wildcard (*.vitrine-omnex.club) ne peut être émis que via un
# challenge DNS-01 : cert-manager crée des TXT chez Cloudflare.
#
# Le Secret n'est volontairement PAS dans ce fichier (ne jamais committer un
# token). Token Cloudflare avec "Zone - DNS - Edit" ET "Zone - Zone - Read" sur la
# zone vitrine-omnex.club (Zone Read : cert-manager retrouve la zone avec)
# (https://dash.cloudflare.com/profile/api-tokens), à créer une seule fois :
# kubectl create secret generic cloudflare-api-token-vitrine -n cert-manager \
# --from-literal=api-token='<token>'
apiVersion: cert-manager.io/v1
kind: ClusterIssuer
metadata:
name: letsencrypt-dns-vitrine
spec:
acme:
server: https://acme-v02.api.letsencrypt.org/directory
email: admin@omnex.sbs # À adapter
privateKeySecretRef:
name: letsencrypt-dns-vitrine-account-key
solvers:
- dns01:
cloudflare:
apiTokenSecretRef:
name: cloudflare-api-token-vitrine
key: api-token
selector:
dnsZones:
- "vitrine-omnex.club"
---
# Issuer de test (hors rate-limit Let's Encrypt prod) : à utiliser dans
# wildcard-certificate.yml pour valider la chaîne DNS-01 avant de basculer.
apiVersion: cert-manager.io/v1
kind: ClusterIssuer
metadata:
name: letsencrypt-dns-vitrine-staging
spec:
acme:
server: https://acme-staging-v02.api.letsencrypt.org/directory
email: admin@omnex.sbs # À adapter
privateKeySecretRef:
name: letsencrypt-dns-vitrine-staging-account-key
solvers:
- dns01:
cloudflare:
apiTokenSecretRef:
name: cloudflare-api-token-vitrine
key: api-token
selector:
dnsZones:
- "vitrine-omnex.club"
@@ -0,0 +1,24 @@
# Certificat wildcard PARTAGÉ par tous les projets vitrine (un seul, renouvelé
# automatiquement par cert-manager ~30 jours avant expiration). Il vit dans le
# namespace du Traefik partagé et est servi via son TLSStore (voir
# deploy/chart-gestion/traefik : `tls.extraSecretNames`), comme
# wildcard-demo-tls pour les démos (*.omnex.sbs).
#
# Secret distinct (`wildcard-vitrine-tls`) : celui des démos n'est pas touché.
# À appliquer UNE FOIS, après cluster-issuer.yml, AVANT de référencer ce
# secret dans le TLSStore. Vérifier : kubectl get certificate -n traefik
# (premier essai : remplacer l'issuer par letsencrypt-dns-vitrine-staging).
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
name: wildcard-vitrine-tls
namespace: traefik
spec:
secretName: wildcard-vitrine-tls
issuerRef:
name: letsencrypt-dns-vitrine
kind: ClusterIssuer
commonName: "vitrine-omnex.club"
dnsNames:
- "vitrine-omnex.club"
- "*.vitrine-omnex.club"