Rendre le dry-run (--check) fiable sur les rôles applicatifs
« Vérifier » échouait faussement sur un hôte frais : les tâches « démarrer service » et les handlers restart/reload/validate touchent un paquet que --check n'installe pas vraiment → service/fichier absent → faux fatal, qui bloquait le déploiement (le dry-run doit passer pour débloquer « Déployer »). Ajout de « when: not ansible_check_mode » sur ces tâches + handlers des 13 rôles serveur_* (29 gardes). Sautées en dry-run, inchangées en réel. Validé : powerdns dry-run failed=0 ; ansible-lint 0 échec ; 19 playbooks syntax-OK. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
213724f566
commit
f82630de6c
26 changed files with 42 additions and 0 deletions
|
|
@ -15,6 +15,13 @@
|
||||||
- **Compteur « vivantes »** dans l'en-tête (depuis la sonde), à côté de actifs/planifiés.
|
- **Compteur « vivantes »** dans l'en-tête (depuis la sonde), à côté de actifs/planifiés.
|
||||||
|
|
||||||
### Corrigé
|
### Corrigé
|
||||||
|
- **« Vérifier » (dry-run `--check`) échouait faussement sur un hôte frais.** Les tâches
|
||||||
|
« démarrer service » et les handlers « redémarrer / recharger / valider » des rôles
|
||||||
|
applicatifs touchent un paquet que `--check` n'installe pas réellement → le service
|
||||||
|
(ou le fichier de zone/conf) n'existe pas encore → faux `fatal`, qui **bloquait le
|
||||||
|
déploiement** (le dry-run doit réussir pour débloquer « Déployer »). Ajout de
|
||||||
|
`when: not ansible_check_mode` sur ces tâches et handlers des 13 rôles `serveur_*`
|
||||||
|
(29 gardes). En dry-run elles sont sautées ; en vrai déploiement, inchangées.
|
||||||
- **Le bouton ⚙ « Appliquer le plan » du GUI refusait en silence** dès que le plan
|
- **Le bouton ⚙ « Appliquer le plan » du GUI refusait en silence** dès que le plan
|
||||||
divergeait de l'inventaire (il appelait `instancier appliquer` **sans** `--force`).
|
divergeait de l'inventaire (il appelait `instancier appliquer` **sans** `--force`).
|
||||||
Résultat : après une édition (disque, état, auto-actif), l'inventaire n'était jamais
|
Résultat : après une édition (disque, état, auto-actif), l'inventaire n'était jamais
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
---
|
---
|
||||||
- name: Redemarrer forgejo
|
- name: Redemarrer forgejo
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_forgejo_service }}"
|
name: "{{ serveur_forgejo_service }}"
|
||||||
state: restarted
|
state: restarted
|
||||||
|
|
|
||||||
|
|
@ -104,6 +104,7 @@
|
||||||
notify: Redemarrer forgejo
|
notify: Redemarrer forgejo
|
||||||
|
|
||||||
- name: Activer et demarrer Forgejo
|
- name: Activer et demarrer Forgejo
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_forgejo_service }}"
|
name: "{{ serveur_forgejo_service }}"
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
---
|
---
|
||||||
- name: Redemarrer grafana
|
- name: Redemarrer grafana
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_grafana_service }}"
|
name: "{{ serveur_grafana_service }}"
|
||||||
state: restarted
|
state: restarted
|
||||||
|
|
|
||||||
|
|
@ -61,6 +61,7 @@
|
||||||
notify: Redemarrer grafana
|
notify: Redemarrer grafana
|
||||||
|
|
||||||
- name: Activer et demarrer Grafana
|
- name: Activer et demarrer Grafana
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_grafana_service }}"
|
name: "{{ serveur_grafana_service }}"
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,13 @@
|
||||||
---
|
---
|
||||||
- name: Redemarrer icinga2
|
- name: Redemarrer icinga2
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_icinga_service_icinga2 }}"
|
name: "{{ serveur_icinga_service_icinga2 }}"
|
||||||
state: restarted
|
state: restarted
|
||||||
listen: Redemarrer icinga2
|
listen: Redemarrer icinga2
|
||||||
|
|
||||||
- name: Redemarrer icingadb
|
- name: Redemarrer icingadb
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_icinga_service_icingadb }}"
|
name: "{{ serveur_icinga_service_icingadb }}"
|
||||||
state: restarted
|
state: restarted
|
||||||
|
|
|
||||||
|
|
@ -65,6 +65,7 @@
|
||||||
notify: Redemarrer icinga2
|
notify: Redemarrer icinga2
|
||||||
|
|
||||||
- name: Activer et demarrer le Redis Icinga DB
|
- name: Activer et demarrer le Redis Icinga DB
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_icinga_service_redis }}"
|
name: "{{ serveur_icinga_service_redis }}"
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|
@ -91,6 +92,7 @@
|
||||||
notify: Redemarrer icingadb
|
notify: Redemarrer icingadb
|
||||||
|
|
||||||
- name: Activer et demarrer Icinga 2 et Icinga DB
|
- name: Activer et demarrer Icinga 2 et Icinga DB
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ item }}"
|
name: "{{ item }}"
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
---
|
---
|
||||||
- name: Redemarrer keycloak
|
- name: Redemarrer keycloak
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_keycloak_service }}"
|
name: "{{ serveur_keycloak_service }}"
|
||||||
state: restarted
|
state: restarted
|
||||||
|
|
|
||||||
|
|
@ -122,6 +122,7 @@
|
||||||
notify: Redemarrer keycloak
|
notify: Redemarrer keycloak
|
||||||
|
|
||||||
- name: Activer et demarrer keycloak
|
- name: Activer et demarrer keycloak
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_keycloak_service }}"
|
name: "{{ serveur_keycloak_service }}"
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
---
|
---
|
||||||
- name: Redemarrer loki
|
- name: Redemarrer loki
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_loki_service }}"
|
name: "{{ serveur_loki_service }}"
|
||||||
state: restarted
|
state: restarted
|
||||||
|
|
|
||||||
|
|
@ -45,6 +45,7 @@
|
||||||
notify: Redemarrer loki
|
notify: Redemarrer loki
|
||||||
|
|
||||||
- name: Activer et demarrer Loki
|
- name: Activer et demarrer Loki
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_loki_service }}"
|
name: "{{ serveur_loki_service }}"
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,13 @@
|
||||||
---
|
---
|
||||||
- name: Valider la configuration nginx
|
- name: Valider la configuration nginx
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.command:
|
ansible.builtin.command:
|
||||||
cmd: nginx -t
|
cmd: nginx -t
|
||||||
changed_when: false
|
changed_when: false
|
||||||
listen: Valider et recharger nginx
|
listen: Valider et recharger nginx
|
||||||
|
|
||||||
- name: Recharger nginx
|
- name: Recharger nginx
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_nginx_service_name }}"
|
name: "{{ serveur_nginx_service_name }}"
|
||||||
state: reloaded
|
state: reloaded
|
||||||
|
|
|
||||||
|
|
@ -79,6 +79,7 @@
|
||||||
notify: Valider et recharger nginx
|
notify: Valider et recharger nginx
|
||||||
|
|
||||||
- name: Activer et demarrer nginx
|
- name: Activer et demarrer nginx
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_nginx_service_name }}"
|
name: "{{ serveur_nginx_service_name }}"
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|
|
||||||
|
|
@ -41,6 +41,7 @@
|
||||||
cache_valid_time: 3600
|
cache_valid_time: 3600
|
||||||
|
|
||||||
- name: Activer et demarrer slapd
|
- name: Activer et demarrer slapd
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_openldap_service }}"
|
name: "{{ serveur_openldap_service }}"
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,12 @@
|
||||||
---
|
---
|
||||||
- name: Recharger PostgreSQL
|
- name: Recharger PostgreSQL
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_postgresql_service_name }}"
|
name: "{{ serveur_postgresql_service_name }}"
|
||||||
state: reloaded
|
state: reloaded
|
||||||
|
|
||||||
- name: Redemarrer PostgreSQL
|
- name: Redemarrer PostgreSQL
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_postgresql_service_name }}"
|
name: "{{ serveur_postgresql_service_name }}"
|
||||||
state: restarted
|
state: restarted
|
||||||
|
|
|
||||||
|
|
@ -56,6 +56,7 @@
|
||||||
notify: Recharger PostgreSQL
|
notify: Recharger PostgreSQL
|
||||||
|
|
||||||
- name: Activer et demarrer PostgreSQL
|
- name: Activer et demarrer PostgreSQL
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_postgresql_service_name }}"
|
name: "{{ serveur_postgresql_service_name }}"
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|
|
||||||
|
|
@ -3,10 +3,12 @@
|
||||||
ansible.builtin.command:
|
ansible.builtin.command:
|
||||||
cmd: "named-checkzone {{ serveur_powerdns_zone }} {{ serveur_powerdns_zone_directory }}/{{ serveur_powerdns_zone }}.zone"
|
cmd: "named-checkzone {{ serveur_powerdns_zone }} {{ serveur_powerdns_zone_directory }}/{{ serveur_powerdns_zone }}.zone"
|
||||||
changed_when: false
|
changed_when: false
|
||||||
|
when: not ansible_check_mode # en dry-run le fichier de zone n'existe pas encore
|
||||||
listen: Validate and reload PowerDNS
|
listen: Validate and reload PowerDNS
|
||||||
|
|
||||||
- name: Restart PowerDNS
|
- name: Restart PowerDNS
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_powerdns_service_name }}"
|
name: "{{ serveur_powerdns_service_name }}"
|
||||||
state: restarted
|
state: restarted
|
||||||
|
when: not ansible_check_mode # en dry-run le service n'existe pas encore
|
||||||
listen: Validate and reload PowerDNS
|
listen: Validate and reload PowerDNS
|
||||||
|
|
|
||||||
|
|
@ -46,3 +46,7 @@
|
||||||
name: "{{ serveur_powerdns_service_name }}"
|
name: "{{ serveur_powerdns_service_name }}"
|
||||||
enabled: true
|
enabled: true
|
||||||
state: started
|
state: started
|
||||||
|
# Dry-run (--check) : le paquet n'est pas reellement installe, donc le service
|
||||||
|
# n'existe pas encore et systemd echouerait. On saute en mode check seulement ;
|
||||||
|
# en vrai deploiement, la tache s'execute normalement.
|
||||||
|
when: not ansible_check_mode
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,13 @@
|
||||||
---
|
---
|
||||||
- name: Valider la configuration prometheus
|
- name: Valider la configuration prometheus
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.command:
|
ansible.builtin.command:
|
||||||
cmd: "promtool check config {{ serveur_prometheus_config }}"
|
cmd: "promtool check config {{ serveur_prometheus_config }}"
|
||||||
changed_when: false
|
changed_when: false
|
||||||
listen: Valider et recharger prometheus
|
listen: Valider et recharger prometheus
|
||||||
|
|
||||||
- name: Redemarrer prometheus
|
- name: Redemarrer prometheus
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_prometheus_service }}"
|
name: "{{ serveur_prometheus_service }}"
|
||||||
state: restarted
|
state: restarted
|
||||||
|
|
|
||||||
|
|
@ -25,6 +25,7 @@
|
||||||
notify: Valider et recharger prometheus
|
notify: Valider et recharger prometheus
|
||||||
|
|
||||||
- name: Activer et demarrer Prometheus
|
- name: Activer et demarrer Prometheus
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_prometheus_service }}"
|
name: "{{ serveur_prometheus_service }}"
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
---
|
---
|
||||||
- name: Redemarrer redis
|
- name: Redemarrer redis
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_redis_service }}"
|
name: "{{ serveur_redis_service }}"
|
||||||
state: restarted
|
state: restarted
|
||||||
|
|
|
||||||
|
|
@ -31,6 +31,7 @@
|
||||||
notify: Redemarrer redis
|
notify: Redemarrer redis
|
||||||
|
|
||||||
- name: Activer et demarrer Redis
|
- name: Activer et demarrer Redis
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_redis_service }}"
|
name: "{{ serveur_redis_service }}"
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,13 @@
|
||||||
---
|
---
|
||||||
- name: Verifier la configuration Postfix
|
- name: Verifier la configuration Postfix
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.command:
|
ansible.builtin.command:
|
||||||
cmd: postfix check
|
cmd: postfix check
|
||||||
changed_when: false
|
changed_when: false
|
||||||
listen: Valider et recharger postfix
|
listen: Valider et recharger postfix
|
||||||
|
|
||||||
- name: Recharger postfix
|
- name: Recharger postfix
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_sendmail_service_name }}"
|
name: "{{ serveur_sendmail_service_name }}"
|
||||||
state: reloaded
|
state: reloaded
|
||||||
|
|
|
||||||
|
|
@ -28,6 +28,7 @@
|
||||||
notify: Valider et recharger postfix
|
notify: Valider et recharger postfix
|
||||||
|
|
||||||
- name: Activer et demarrer Postfix
|
- name: Activer et demarrer Postfix
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_sendmail_service_name }}"
|
name: "{{ serveur_sendmail_service_name }}"
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
---
|
---
|
||||||
- name: Redemarrer step-ca
|
- name: Redemarrer step-ca
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_step_ca_service }}"
|
name: "{{ serveur_step_ca_service }}"
|
||||||
state: restarted
|
state: restarted
|
||||||
|
|
|
||||||
|
|
@ -101,6 +101,7 @@
|
||||||
notify: Redemarrer step-ca
|
notify: Redemarrer step-ca
|
||||||
|
|
||||||
- name: Activer et demarrer step-ca
|
- name: Activer et demarrer step-ca
|
||||||
|
when: not ansible_check_mode
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "{{ serveur_step_ca_service }}"
|
name: "{{ serveur_step_ca_service }}"
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue