Tâche #32608
Scénario #32576: L'EAD3 devait fonctionner sur tous les modules 2.8.1
La recette EAD3/salt/dhcp considère que le service est sur le maître
100%
Description
Test squash : DHCP-05-003 - Vérification des réservations DHCP zones statiques dans l'EAD3
Le fichier template.sls est prévu pour fonctionner avec le service isc-dhcp-server installé sur le maître.
On peut le transformer en template pour ajouter %%container_path_dhcp devant le nom du fichier de configuration mais cela ne règle pas le problème du service.
Associated revisions
fix(containers): we can't always build diff
The “eole.file” state traceback when instantiating a file in a
container because the gathering of “new_lines” use an invalid
filename.
When using containers, it's not always possible to build a diff
between old and new file content.
To instantiate a file in several containers, we set the “container”
argument to “all” and we can't calculate diff.
- src/salt/states/eole.py (file): take care of “all” container case
and build the target filename to calculate diff in containers
Ref: #32608
fix(sls): “isc-dhcp-server” service is in DHCP container
- extra/dhcp/sls/eole/template.sls: instantiate file in “dhcp”
container.
Restart the service with “CreoleService”
Update to proper “sls” practices with meaningful IDs.
Ref: #32608
History
#1 Updated by Joël Cuissinat over 2 years ago
<jojo2024> il faut modifier service.running ?
<gnunux> je ne vois pas bien comment là ...
<gnunux> le plus simple serait de réécrire avec les fonctions eole
#2 Updated by Joël Cuissinat over 2 years ago
- Description updated (diff)
#3 Updated by Daniel Dehennin over 2 years ago
- Status changed from Nouveau to En cours
- Assigned To set to Daniel Dehennin
#4 Updated by Daniel Dehennin over 2 years ago
- Status changed from En cours to Résolu
- % Done changed from 0 to 100
#5 Updated by Daniel Dehennin over 2 years ago
En passant le minion EAD3 en mode debug :
echo 'log_level: debug' > /etc/ead3/salt/minion.d/log-level.conf systemctl restart salt-minion-ead3.service
On obtient dans les logs de jolis diff :
juin 02 11:21:18 amonecole salt-minion-ead3[479397]: [DEBUG ] Instantiate EOLE file '/etc/dhcp/dhcpd.conf' in 'dhcp' juin 02 11:21:18 amonecole salt-minion[479397]: salt-minion-ead3[salt.loaded.int.states.eole][DEBUG ] Instantiate EOLE file '/etc/dhcp/dhcpd.conf' in 'dhcp' juin 02 11:21:19 amonecole salt-minion-ead3[479397]: [INFO ] File changed: juin 02 11:21:19 amonecole salt-minion-ead3[479397]: --- /etc/dhcp/dhcpd.conf.orig juin 02 11:21:19 amonecole salt-minion-ead3[479397]: +++ /etc/dhcp/dhcpd.conf juin 02 11:21:19 amonecole salt-minion-ead3[479397]: @@ -22,6 +22,17 @@ juin 02 11:21:19 amonecole salt-minion-ead3[479397]: juin 02 11:21:19 amonecole salt-minion-ead3[479397]: juin 02 11:21:19 amonecole salt-minion-ead3[479397]: # déclaration des hôtes des plages statiques juin 02 11:21:19 amonecole salt-minion-ead3[479397]: +group pedago { juin 02 11:21:19 amonecole salt-minion-ead3[479397]: + option subnet-mask 255.255.255.0; juin 02 11:21:19 amonecole salt-minion-ead3[479397]: + option routers 10.3.2.1; juin 02 11:21:19 amonecole salt-minion-ead3[479397]: + option domain-name "etb3.lan"; juin 02 11:21:19 amonecole salt-minion-ead3[479397]: + option domain-name-servers 10.3.2.5; juin 02 11:21:19 amonecole salt-minion-ead3[479397]: + option wpad-url "http://wpad.etb3.lan/wpad.dat\n"; juin 02 11:21:19 amonecole salt-minion-ead3[479397]: + default-lease-time 144000; juin 02 11:21:19 amonecole salt-minion-ead3[479397]: + max-lease-time 144000; juin 02 11:21:19 amonecole salt-minion-ead3[479397]: + juin 02 11:21:19 amonecole salt-minion-ead3[479397]: + host eleves-pc-577273.pedago { hardware ethernet 02:00:0a:03:02:65; fixed-address 10.3.2.30; option host-name eleves-pc-577273;} juin 02 11:21:19 amonecole salt-minion-ead3[479397]: +} juin 02 11:21:19 amonecole salt-minion-ead3[479397]: juin 02 11:21:19 amonecole salt-minion-ead3[479397]: # déclaration des hôtes statiques hors plage statique, obsolète, préférer les plages d’adresses statiques. juin 02 11:21:19 amonecole salt-minion-ead3[479397]: juin 02 11:21:19 amonecole salt-minion-ead3[479397]: [INFO ] Completed state [/etc/dhcp/dhcpd.conf] at time 11:21:19.624683 (duration_in_ms=706.211) juin 02 11:21:19 amonecole salt-minion[479397]: salt-minion-ead3[salt.state ][INFO ] File changed: --- /etc/dhcp/dhcpd.conf.orig +++ /etc/dhcp/dhcpd.conf @@ -22,6 +22,17 @@ # déclaration des hôtes des plages statiques +group pedago { + option subnet-mask 255.255.255.0; + option routers 10.3.2.1; + option domain-name "etb3.lan"; + option domain-name-servers 10.3.2.5; + option wpad-url "http://wpad.etb3.lan/wpad.dat\n"; + default-lease-time 144000; + max-lease-time 144000; + + host eleves-pc-577273.pedago { hardware ethernet 02:00:0a:03:02:65; fixed-address 10.3.2.30; option host-name eleves-pc-577273;} +} # déclaration des hôtes statiques hors plage statique, obsolète, préférer les plages d’adresses statiques. juin 02 11:21:19 amonecole salt-minion[479397]: salt-minion-ead3[salt.state ][INFO ] Completed state [/etc/dhcp/dhcpd.conf] at time 11:21:19.624683 (duration_in_ms=706.211)
Et le redémarrage du service :
juin 02 11:21:19 amonecole salt-minion-ead3[479397]: [DEBUG ] LazyLoaded cmd.run juin 02 11:21:19 amonecole salt-minion[479397]: salt-minion-ead3[salt.utils.lazy ][DEBUG ] LazyLoaded cmd.run juin 02 11:21:19 amonecole salt-minion-ead3[479397]: [INFO ] Running state [CreoleService isc-dhcp-server restart] at time 11:21:19.628395 juin 02 11:21:19 amonecole salt-minion[479397]: salt-minion-ead3[salt.state ][INFO ] Running state [CreoleService isc-dhcp-server restart] at time 11:21:19.628395 juin 02 11:21:19 amonecole salt-minion-ead3[479397]: [INFO ] Executing state cmd.run for [CreoleService isc-dhcp-server restart] juin 02 11:21:19 amonecole salt-minion[479397]: salt-minion-ead3[salt.state ][INFO ] Executing state cmd.run for [CreoleService isc-dhcp-server restart] juin 02 11:21:19 amonecole salt-minion-ead3[479397]: [DEBUG ] LazyLoaded cmd.run_all juin 02 11:21:19 amonecole salt-minion[479397]: salt-minion-ead3[salt.utils.lazy ][DEBUG ] LazyLoaded cmd.run_all juin 02 11:21:19 amonecole salt-minion-ead3[479397]: [INFO ] Executing command 'CreoleService' in directory '/root' juin 02 11:21:19 amonecole salt-minion[479397]: salt-minion-ead3[salt.loaded.int.module.cmdmod][INFO ] Executing command 'CreoleService' in directory '/root' juin 02 11:21:21 amonecole salt-minion-ead3[479397]: [DEBUG ] stdout: Restart Systemd service isc-dhcp-server in partage [ OK ] juin 02 11:21:21 amonecole salt-minion[479397]: salt-minion-ead3[salt.loaded.int.module.cmdmod][DEBUG ] stdout: Restart Systemd service isc-dhcp-server in partage [ OK ] juin 02 11:21:21 amonecole salt-minion-ead3[479397]: [INFO ] {'pid': 479451, 'retcode': 0, 'stdout': 'Restart Systemd service isc-dhcp-server in partage [ OK ]', 'stderr': ''} juin 02 11:21:21 amonecole salt-minion[479397]: salt-minion-ead3[salt.state ][INFO ] {'pid': 479451, 'retcode': 0, 'stdout': 'Restart Systemd service isc-dhcp-server in partage [ OK ]', 'stderr': ''} juin 02 11:21:21 amonecole salt-minion-ead3[479397]: [INFO ] Completed state [CreoleService isc-dhcp-server restart] at time 11:21:21.151229 (duration_in_ms=1522.832) juin 02 11:21:21 amonecole salt-minion[479397]: salt-minion-ead3[salt.state ][INFO ] Completed state [CreoleService isc-dhcp-server restart] at time 11:21:21.151229 (duration_in_ms=1522.832)
#6 Updated by Joël Cuissinat over 2 years ago
- Status changed from Résolu to Fermé
- Remaining (hours) set to 0.0
Test repassé avec succès : https://dev-eole.ac-dijon.fr/squash/executions/12627