Commit graph

27 commits

Author SHA1 Message Date
2d680cec4e Ajout snippets cloud-init
Some checks failed
CD - Deploy Infrastructure / Terraform Validation (push) Successful in 16s
CD - Deploy Infrastructure / Deploy on pve1 (push) Failing after 7s
CD - Deploy Infrastructure / Deploy on pve2 (push) Failing after 7s
CD - Deploy Infrastructure / Deploy on pve3 (push) Failing after 8s
CD - Deploy Infrastructure / Validate K3s Cluster (push) Has been skipped
CD - Deploy Infrastructure / Deployment Notification (push) Failing after 1s
2025-12-09 13:44:57 +01:00
104df8d174 Ajout des disques cloud-init dans la configuration Terraform
Some checks failed
CD - Deploy Infrastructure / Terraform Validation (push) Successful in 17s
CD - Deploy Infrastructure / Deploy on pve1 (push) Failing after 30s
CD - Deploy Infrastructure / Deploy on pve2 (push) Failing after 27s
CD - Deploy Infrastructure / Deploy on pve3 (push) Failing after 42s
CD - Deploy Infrastructure / Validate K3s Cluster (push) Has been skipped
CD - Deploy Infrastructure / Deployment Notification (push) Failing after 1s
2025-12-09 13:15:51 +01:00
3b5f1fc2d2 feat: Configuration stockage local et token K3S partagé
Some checks failed
CD - Deploy Infrastructure / Terraform Validation (push) Successful in 17s
CD - Deploy Infrastructure / Deploy on pve1 (push) Successful in 2m12s
CD - Deploy Infrastructure / Deploy on pve2 (push) Successful in 2m11s
CD - Deploy Infrastructure / Deploy on pve3 (push) Successful in 2m28s
CD - Deploy Infrastructure / Validate K3s Cluster (push) Successful in 5m3s
CD - Deploy Infrastructure / Deployment Notification (push) Failing after 1s
- Passage stockage local-nvme pour acemagician et elitedesk (40G)
- Token K3S partagé via cloud-init pour cluster HA
- Configuration FluxCD avec GitRepository Forgejo
- Déploiement Hello World via FluxCD
- Manifestes Kubernetes pour application demo
2025-12-09 11:55:19 +01:00
a818aab4be fix(terraform): VMID fixe pour VMs afin éviter duplication
Some checks failed
CD - Deploy Infrastructure / Terraform Validation (push) Successful in 17s
CD - Deploy Infrastructure / Deploy on pve1 (push) Failing after 10s
CD - Deploy Infrastructure / Deploy on pve2 (push) Failing after 7s
CD - Deploy Infrastructure / Deploy on pve3 (push) Failing after 7s
CD - Deploy Infrastructure / Validate K3s Cluster (push) Has been skipped
CD - Deploy Infrastructure / Deployment Notification (push) Failing after 1s
Assigner VMID spécifique à chaque VM :
- k3s-server-1: 1000
- k3s-server-2: 1001
- etcd-witness: 1002
2025-11-26 19:41:52 +01:00
5f6df07fbe fix(terraform): Configuration nœuds cluster et stockage 2025-11-26 19:33:19 +01:00
155de75fbf feat(terraform): Mise à jour provider Proxmox v3.0.2-rc05
Mettre à jour version provider et ajuster syntaxe ressources pour compatibilité.
2025-11-26 19:31:03 +01:00
8c738e9e19 fix(cd): Ajout étape setup OpenTofu dans tous les jobs déploiement
Jobs de déploiement échouaient avec 'tofu: commande introuvable'. Ajout étape Setup OpenTofu aux jobs deploy-pve1, deploy-pve2, and deploy-pve3 jobs.
2025-11-13 20:03:49 +01:00
8687665946 fix(cd): Remplacement workflow réutilisable par jobs CI inline
Forgejo ne supporte pas complètement les workflows réutilisables (uses:). Duplication job validation Terraform directement dans workflow CD pour éviter état bloquant.
2025-11-13 20:00:53 +01:00
83f9b4def8 fix(ci): Ajout trigger workflow_call pour intégration CD
Le workflow CI nécessite workflow_call pour être appelable par workflow CD. Sans cela, le workflow CD ne peut pas invoquer CI comme workflow réutilisable.
2025-11-13 19:56:13 +01:00
dc5fc28ff1 fix(ci): Exclusion branche main du workflow CI
Workflow CI s'exécute maintenant uniquement sur branches feature et PRs. Sur main, seul le workflow CD s'exécute (qui appelle CI en interne). Ceci évite les exécutions CI dupliquées.
2025-11-13 19:52:52 +01:00
ae0f3754ad fix(ci): Utilisation variables environnement au lieu fichier tfvars
Suppression copie terraform.tfvars.example qui écrasait valeurs secrètes. Utilisation maintenant exclusivement variables environnement TF_VAR_* pour injecter correctement secrets depuis Forgejo.
2025-11-13 19:47:47 +01:00
c26289c262 fix(terraform): Mise à jour ID token dans exemple de terraform vers opentofu
Le fichier exemple avait root@pam!terraform en dur, ce qui écrasait la valeur secrète. Mis à jour pour correspondre au nom réel du token.
2025-11-13 19:45:17 +01:00
9cb0737560 fix(ci): Renommage secrets pour éviter restriction préfixe FORGEJO_
Forgejo n'autorise pas les noms de secrets commençant par FORGEJO_. Renommés :
- FORGEJO_TOKEN -> GIT_TOKEN
- FORGEJO_REPO_URL -> GIT_REPO_URL
2025-11-13 19:41:46 +01:00
1cdc40f96e fix(ci): Downgrade upload-artifact v3 pour compatibilité Forgejo
upload-artifact@v4 n'est pas supporté sur Forgejo/GHES. Downgrade vers v3 pour assurer que uploads artifacts fonctionnent correctement.
2025-11-13 19:30:40 +01:00
2f10b93b9c feat(ci): Mise à jour workflow déploiement pour Ubuntu 24.04 et LINSTOR
All checks were successful
CI - Validation / Terraform Validation (push) Successful in 13s
CI - Validation / Ansible Validation (push) Successful in 1m3s
CI - Validation / Kubernetes Validation (push) Successful in 6s
CI - Validation / Security Scan (push) Successful in 15s
Mettre à jour tous les jobs déploiement pour utiliser template Ubuntu 24.04 LTS et backend stockage LINSTOR pour fiabilité améliorée.
2025-11-13 19:06:25 +01:00
9b40963f10 feat(terraform): Mise à jour Ubuntu 24.04 LTS et stockage LINSTOR
Mettre à jour configuration par défaut pour utiliser template Ubuntu 24.04 LTS et configurer LINSTOR comme backend stockage pour fiabilité et performance améliorées.
2025-11-13 18:54:26 +01:00
7ea5b20bb6 fix(flux): Mise à jour URL dépôt de infra vers Homelab
- Changer URL GitRepository pour correspondre au nouveau nom dépôt
- Dépôt renommé de 'infra' vers 'Homelab'
2025-11-11 11:06:16 +01:00
6041d76186 feat(ci): Ajout support HA pour pannes de nœuds
Modification workflows CI/CD pour gérer élégamment pannes nœuds Proxmox :

Workflow CI (ci.yml) :
- Terraform Plan s'exécute uniquement sur branche main (CI plus rapide sur branches feature)
- Échecs Plan sur nœuds indisponibles ne bloquent pas validation
- Ajout message avertissement quand plan échoue

Workflow Deploy (deploy.yml) :
- Ajout continue-on-error à tous les jobs déploiement (pve1, pve2, pve3)
- Modified cluster validation to require 2/3 nodes (quorum)
- Enhanced deployment summary with success counter
- Exit codes: 0 if >=2 nodes, 1 if 1 node, 1 if 0 nodes

This ensures the infrastructure remains operational even when one
Proxmox node is down, maintaining HA principles.
2025-11-07 11:32:42 +01:00
a855240c6d fix(terraform): Ajout configurations VMs manquantes dans exemple tfvars
Added VM configuration objects for all three nodes:
- k3s_server_1_config: 6 cores, 12GB RAM, 100G disk
- k3s_server_2_config: 6 cores, 12GB RAM, 100G disk
- etcd_witness_config: 2 cores, 2GB RAM, 20G disk

Removed undeclared 'management_bridge' variable that was causing
warnings in terraform plan.

This allows terraform plan to execute successfully in CI with
the example configuration file.
2025-11-07 11:24:29 +01:00
a7b03c12ff fix(terraform): Mise à jour syntaxe disque pour provider Proxmox v2.9
Changed from nested `disks` block (v3.0 syntax) to flat `disk` block
(v2.9 syntax):
- disks { scsi { scsi0 { disk {...} } } } → disk { slot = 0, ... }
- Added explicit slot, type, and iothread parameters
- Maintains same functionality with v2.9-compatible syntax
2025-11-07 11:20:07 +01:00
60e500087c fix(terraform): Downgrade provider Proxmox vers v2.9 stable
The v3.0 provider is not yet available as a stable release in the
OpenTofu/Terraform registry. Downgraded to v2.9 which is the latest
stable version.

Also fixed minor yamllint issues in flux.yml:
- Added space after comment marker
- Removed trailing blank line
2025-11-07 10:51:53 +01:00
a5283e316b fix(ansible): Résolution violations linting YAML
Fixed yamllint errors and warnings across all Ansible files:
- Reformatted long lines to stay within 80 character limit
- Standardized boolean values to use true/false instead of yes/no
- Fixed YAML folding syntax for multiline strings
- Removed erroneous triple quotes in k3s-server tasks

This resolves all yamllint issues reported by the CI pipeline.
2025-11-07 10:40:53 +01:00
44e45a0f3d feat(ci): Implémentation workflow Terraform multi-modules 2025-11-07 10:27:09 +01:00
830b7229db fix(ci): Correction problèmes outils et erreurs workflow 2025-11-07 10:21:55 +01:00
6bf15cfe3c fix(ci): Résolution problèmes dépendances dans workflow 2025-11-07 10:13:09 +01:00
bdfcaf5f46 fix: Erreurs workflow CI (OpenTofu, sudo) 2025-11-07 10:08:20 +01:00
40dc0f4184 feat: Commit initial 2025-11-07 09:33:38 +01:00