This log is too long to show here, 50 KB has been skipped — click to see the complete log
#Machine aca.eolecitests : Debut ciConfigureAutomatiqueMinimale
23:26:53 Machine aca.eolecitests : Configuration déjà réalisée avec 192.168.0.253
23:26:53 Machine aca.eolecitests : hostnamectl set-hostname eolecitest
23:26:53 Machine aca.eolecitests : ciSambaRestart
23:26:53 Machine aca.eolecitests : Arret SAMBA
23:26:53 Machine aca.eolecitests : Démarrage SAMBA
23:26:53 Machine aca.eolecitests : ciSambaRestart : ok 0
23:26:53 Machine aca.eolecitests : Creation compte samba admin, nobody
23:26:53 User nobody password set to none.
23:26:53 usermod : aucun changement
23:26:53 Nouveau mot de passe : Retapez le nouveau mot de passe : passwd : le mot de passe a été mis à jour avec succès
23:26:53 Machine aca.eolecitests : Creation compte samba root
23:26:53 Machine aca.eolecitests : Début ciSambaCheckAcces localhost
23:26:53 Machine aca.eolecitests : Check smbclient
23:26:53 Machine aca.eolecitests : Check SAMBA 1 localhost
23:26:53 Sharename Type Comment
23:26:53 --------- ---- -------
23:26:53 eolecitests Disk
23:26:53 wpkg Disk
23:26:53 sauvegardes Disk
23:26:53 IPC$ IPC IPC Service (Samba Server 4.15.13-Ubuntu)
23:26:53 SMB1 disabled -- no workgroup available
23:26:53 Machine aca.eolecitests : ciSambaCheckAcces : Ok
23:26:53 Machine aca.eolecitests : Fin ciSambaConfiguration : ok
23:27:03 ############# startvms aca.pc ##########################
23:27:03 **********************
23:27:03 Configure Machine Windows : aca.pc avec l'image Windows10.22H2-amd64.vm
23:27:03 DO_SET_TIMEZONE_UTC = YES
23:27:03 ENABLE_RENAMEAUTO = YES
23:27:03 VM_METHODE = instance
23:27:03 VM_CONFIGURATION = default
23:27:03 VM_VERSIONMAJEUR = 2.10.0
23:27:03 CONTEXT : CONTEXT = [ NETWORK="YES",SSH_PUBLIC_KEY="$USER[SSH_PUBLIC_KEY]",VM_ID="$VMID",VM_OWNER="$UNAME",VM_ONE="one",DO_INITSCRIPTS="NO",DO_INSTALLSCRIPTS="NO",DO_SET_NETWORK_PRIVATE="YES",DO_SET_TIMEZONE_UTC="YES",SET_NETWORK_STATIC="NO",ENABLE_PING="NO",ENABLE_REMOTE_DESKTOP="YES",ENABLE_RENAMEAUTO="YES",ENABLE_FILE_PRINTER_SHARING="YES",DISABLE_FIREWALL_PUBLIC="NO",FILES_DS="$FILE[IMAGE=\"EoleCiTestContext.ps1\",IMAGE_UNAME=\"jenkins\"] $FILE[IMAGE=\"EoleCiTestService.ps1\",IMAGE_UNAME=\"jenkins\"] $FILE[IMAGE=\"EoleCiFunctions.ps1\",IMAGE_UNAME=\"jenkins\"] $FILE[IMAGE=\"EoleCiTestsCommon.ps1\",IMAGE_UNAME=\"jenkins\"] $FILE[IMAGE=\"run-from-context.ps1\",IMAGE_UNAME=\"jenkins\"] $FILE[IMAGE=\"install.ps1\",IMAGE_UNAME=\"jenkins\"] $FILE[IMAGE=\"start.ps1\",IMAGE_UNAME=\"jenkins\"]",VM_DAEMON="start",VM_HOSTNAME="pc-1022H2",VM_NAME="aca.pc",VM_MACHINE="aca.pc",VM_IP_EOLECITEST="192.168.0.253",VM_VERSIONMAJEUR="2.10.0",VM_METHODE="instance",VM_CONFIGURATION="default" ]
23:27:14 Attente Etat 'ACTIVE/RUNNING' (600) : PENDING/LCM_INIT. ACTIVE/RUNNING ==> Ok, Duree=8s
23:27:22 Vm démarrée : aca.pc id=1681487 on nebula81.eole.lan
23:27:22 monitorRenameComputer: vmid=1681487 fichier=/mnt/eole-ci-tests/output/jenkins2/1681487/computername
23:27:22 ...... OK
23:29:22
23:29:22 AUTOMATE : aca.pc 'dir' args=[]
23:29:22 Utilisateur authentifié : jenkins2
23:29:22 IP gw user = 192.168.0.82
23:29:22 IP VIRTFS = 192.168.0.155
23:29:22 SshJSch 'root@192.168.0.155' dir
23:29:22 do ssh(s) [Ljava.lang.String;@4bd31064 : dir
23:29:22 1:Connecting to 192.168.0.155 port 22
23:29:22 1:Connection established
23:29:22 1:Remote version string: SSH-2.0-OpenSSH_for_Windows_9.5
23:29:22 1:Local version string: SSH-2.0-JSCH_0.2.16
23:29:22 1:CheckCiphers: chacha20-poly1305@openssh.com
23:29:22 1:CheckKexes: sntrup761x25519-sha512@openssh.com,curve25519-sha256,curve25519-sha256@libssh.org,curve448-sha512
23:29:22 1:CheckSignatures: ssh-ed25519,ssh-ed448
23:29:22 0:server_host_key proposal before known_host reordering is: ssh-ed25519,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,rsa-sha2-512,rsa-sha2-256
23:29:22 0:server_host_key proposal after known_host reordering is: ssh-ed25519,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,rsa-sha2-512,rsa-sha2-256
23:29:22 1:SSH_MSG_KEXINIT sent
23:29:22 1:SSH_MSG_KEXINIT received
23:29:22 1:Doing strict KEX
23:29:22 1:server proposal: KEX algorithms: curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256,kex-strict-s-v00@openssh.com
23:29:22 1:server proposal: host key algorithms: rsa-sha2-512,rsa-sha2-256,ecdsa-sha2-nistp256,ssh-ed25519
23:29:22 1:server proposal: ciphers c2s: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com
23:29:22 1:server proposal: ciphers s2c: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com
23:29:22 1:server proposal: MACs c2s: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512
23:29:22 1:server proposal: MACs s2c: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512
23:29:22 1:server proposal: compression c2s: none,zlib@openssh.com
23:29:22 1:server proposal: compression s2c: none,zlib@openssh.com
23:29:22 1:server proposal: languages c2s:
23:29:22 1:server proposal: languages s2c:
23:29:22 1:client proposal: KEX algorithms: curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256,ext-info-c,kex-strict-c-v00@openssh.com
23:29:22 1:client proposal: host key algorithms: ssh-ed25519,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,rsa-sha2-512,rsa-sha2-256
23:29:22 1:client proposal: ciphers c2s: aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com
23:29:22 1:client proposal: ciphers s2c: aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com
23:29:22 1:client proposal: MACs c2s: hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
23:29:22 1:client proposal: MACs s2c: hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
23:29:22 1:client proposal: compression c2s: none
23:29:22 1:client proposal: compression s2c: none
23:29:22 1:client proposal: languages c2s:
23:29:22 1:client proposal: languages s2c:
23:29:22 1:kex: algorithm: curve25519-sha256
23:29:22 1:kex: host key algorithm: ssh-ed25519
23:29:22 1:kex: server->client cipher: aes128-ctr MAC: hmac-sha2-256-etm@openssh.com compression: none
23:29:22 1:kex: client->server cipher: aes128-ctr MAC: hmac-sha2-256-etm@openssh.com compression: none
23:29:22 1:SSH_MSG_KEX_ECDH_INIT sent
23:29:22 1:expecting SSH_MSG_KEX_ECDH_REPLY
23:29:22 1:ssh_eddsa_verify: ssh-ed25519 signature true
23:29:22 2:Permanently added '192.168.0.155' (EDDSA) to the list of known hosts.
23:29:22 1:Reset outgoing sequence number after sending SSH_MSG_NEWKEYS for strict KEX
23:29:22 1:SSH_MSG_NEWKEYS sent
23:29:22 1:SSH_MSG_NEWKEYS received
23:29:22 1:Reset incoming sequence number after receiving SSH_MSG_NEWKEYS for strict KEX
23:29:22 1:SSH_MSG_SERVICE_REQUEST sent
23:29:22 1:SSH_MSG_EXT_INFO received
23:29:22 1:server-sig-algs=<ssh-ed25519,sk-ssh-ed25519@openssh.com,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,sk-ecdsa-sha2-nistp256@openssh.com,webauthn-sk-ecdsa-sha2-nistp256@openssh.com,ssh-dss,ssh-rsa,rsa-sha2-256,rsa-sha2-512>
23:29:22 1:SSH_MSG_SERVICE_ACCEPT received
23:29:22 1:Authentications that can continue: publickey,keyboard-interactive,password
23:29:22 1:Next authentication method: publickey
23:29:22 1:Authentications that can continue: keyboard-interactive,password
23:29:22 1:Next authentication method: keyboard-interactive
23:29:22 1:Authentications that can continue: password
23:29:22 1:Next authentication method: password
23:29:22 promptPassword : Password for pcadmin@192.168.0.1551:Authentication succeeded (password).
23:29:22 The session 0 has been established to pcadmin%eole@192.168.0.155:22
23:29:23 Le volume dans le lecteur C n'a pas de nom.
23:29:23 Le num�ro de s�rie du volume est 361C-17B0
23:29:23
23:29:23 R�pertoire de C:\Users\pcadmin
23:29:23
23:29:23 29/11/2022 15:05 <DIR> .
23:29:23 29/11/2022 15:05 <DIR> ..
23:29:23 29/11/2022 15:05 <DIR> .config
23:29:23 17/06/2021 14:04 <DIR> 3D Objects
23:29:23 17/06/2021 14:04 <DIR> Contacts
23:29:23 17/06/2021 15:25 <DIR> Desktop
23:29:23 26/06/2021 02:32 <DIR> Documents
23:29:23 17/06/2021 14:04 <DIR> Downloads
23:29:23 17/06/2021 14:04 <DIR> Favorites
23:29:23 17/06/2021 14:04 <DIR> Links
23:29:23 17/06/2021 14:04 <DIR> Music
23:29:23 29/11/2022 15:02 <DIR> OneDrive
23:29:23 17/06/2021 14:04 <DIR> Pictures
23:29:23 17/06/2021 14:04 <DIR> Saved Games
23:29:23 29/11/2022 15:05 <DIR> scoop
23:29:23 17/06/2021 14:04 <DIR> Searches
23:29:23 17/06/2021 14:04 <DIR> Videos
23:29:23 0 fichier(s) 0 octets
23:29:23 17 R�p(s) 759�697�408 octets libres
23:29:23
23:29:23 Exit: 0
23:29:23 1:Disconnecting from 192.168.0.155 port 22
23:29:23 Pas de 'setUp:' pour aca-dc1-joineole-win10
23:29:23 MACHINES ACTIVES PRETES A ETRE UTILISEES
23:29:23 ======== stage: tests
23:29:23 1:Caught an exception, leaving main loop due to Socket closed
23:29:23 Test install-workstation
23:29:23
23:29:23 AUTOMATE : aca.dc1 'prepare-acadc1-workstation.sh' args=[admin]
23:29:43 Machine aca.dc1 2.10.0 : /mnt/eole-ci-tests/depots/2.10.0.last : dernière maj = 2026-03-17 11:50:17
23:29:43 Machine aca.dc1 2.10.0 : ciEstCeQueLImageEstAJour : - 6h 21m et 39s, Différence inférieure à 1000 secondes : pas besoin de mise à jour !!!
23:29:43 Machine aca.dc1 2.10.0 : Image à jour: je ne fais rien
23:29:43 Machine aca.dc1 2.10.0 : Installation paquets : eole-workstation
23:29:43 Action install pour root
23:29:43 Lecture des listes de paquets...
23:29:43 Construction de l'arbre des dépendances...
23:29:43 Lecture des informations d'état...
23:29:43 Les paquets supplémentaires suivants seront installés :
23:29:43 eole-workstation-binaries eole-workstation-ead3 eole-workstation-manager
23:29:43 python3-ldap
23:29:43 Les NOUVEAUX paquets suivants seront installés :
23:29:43 eole-workstation eole-workstation-binaries eole-workstation-ead3
23:29:43 eole-workstation-manager python3-ldap
23:29:43 AUTOMATE : detect 'mise à jour,' => 0
23:29:43 AUTOMATE : detect 'nouvellement installés,' => 5
23:29:43 0 mis à jour, 5 nouvellement installés, 0 à enlever et 0 non mis à jour.
23:29:43 Il est nécessaire de prendre 12,2 Mo dans les archives.
23:29:43 Après cette opération, 18,9 Mo d'espace disque supplémentaires seront utilisés.
23:29:43 Réception de :1 http://eole.ac-dijon.fr/ubuntu noble-security/main amd64 python3-ldap amd64 3.4.4-1ubuntu0.24.04.1 [92,4 kB]
23:29:43 Réception de :2 http://test-eole.ac-dijon.fr/eole eole-2.10.0/main amd64 eole-workstation-ead3 all 2.9.0-4 [12,0 MB]
23:29:43 Réception de :3 http://test-eole.ac-dijon.fr/eole eole-2.10.0-proposed-updates/main amd64 eole-workstation-manager all 2.10.0-6 [60,7 kB]
23:29:43 Réception de :4 http://test-eole.ac-dijon.fr/eole eole-2.10.0/main amd64 eole-workstation-binaries all 2.9.0-1 [26,4 kB]
23:29:43 Réception de :5 http://test-eole.ac-dijon.fr/eole eole-2.10.0-proposed-updates/main amd64 eole-workstation all 2.10.0-6 [10,4 kB]
23:29:48 12,2 Mo réceptionnés en 0s (71,2 Mo/s)
23:29:48 Sélection du paquet python3-ldap précédemment désélectionné.
23:29:48 (Lecture de la base de données...
23:29:48 (Lecture de la base de données... 173798 fichiers et répertoires déjà installés.)
23:29:48 Préparation du dépaquetage de .../python3-ldap_3.4.4-1ubuntu0.24.04.1_amd64.deb ...
23:29:48 Dépaquetage de python3-ldap (3.4.4-1ubuntu0.24.04.1) ...
23:29:48 Sélection du paquet eole-workstation-ead3 précédemment désélectionné.
23:29:48 Préparation du dépaquetage de .../eole-workstation-ead3_2.9.0-4_all.deb ...
23:29:48 Dépaquetage de eole-workstation-ead3 (2.9.0-4) ...
23:29:48 Sélection du paquet eole-workstation-manager précédemment désélectionné.
23:29:48 Préparation du dépaquetage de .../eole-workstation-manager_2.10.0-6_all.deb ...
23:29:48 Dépaquetage de eole-workstation-manager (2.10.0-6) ...
23:29:48 Sélection du paquet eole-workstation-binaries précédemment désélectionné.
23:29:48 Préparation du dépaquetage de .../eole-workstation-binaries_2.9.0-1_all.deb ...
23:29:48 Dépaquetage de eole-workstation-binaries (2.9.0-1) ...
23:29:48 Sélection du paquet eole-workstation précédemment désélectionné.
23:29:48 Préparation du dépaquetage de .../eole-workstation_2.10.0-6_all.deb ...
23:29:48 Dépaquetage de eole-workstation (2.10.0-6) ...
23:29:48 Paramétrage de python3-ldap (3.4.4-1ubuntu0.24.04.1) ...
23:29:48 Paramétrage de eole-workstation-manager (2.10.0-6) ...
23:29:48 Paramétrage de eole-workstation-ead3 (2.9.0-4) ...
23:29:48 Paramétrage de eole-workstation (2.10.0-6) ...
23:29:48 Paramétrage de eole-workstation-binaries (2.9.0-1) ...
23:29:53 Machine aca.dc1 2.10.0 : ----
23:29:53 *********************************************
23:29:53 Machine aca.dc1 2.10.0 : (py3) ciMonitor reconfigure
23:29:53 MONITOR: reconfigure
23:29:53 --------------------------------------------------------------------------------
23:29:53 Début de configuration
23:29:53 --------------------------------------------------------------------------------
23:29:53 --------------------------------------------------------------------------------
23:29:53 Préparation pour reconfigure
23:29:53 --------------------------------------------------------------------------------
23:29:53 Restart Systemd service creoled
23:29:58 [ OK ]
23:29:58 --------------------------------------------------------------------------------
23:29:58 Gestion des paquets
23:29:58 --------------------------------------------------------------------------------
23:29:58 Suppression des paquets
23:29:58 Action remove pour root
23:29:58 Pas de paquet pour l'action remove
23:29:58 Installation des paquets
23:29:58 Vérification des paquets pour le conteneur root: eole-ntp-server-pkg eole-antivirus-pkg eole-dhcp-pkg eole-workstation-pkg eole-ad-dc-pkg eole-ad-dc-scripts eole-exim-pkg
23:29:58 Action install pour root
23:29:58 Lecture des listes de paquets...
23:29:58 Construction de l'arbre des dépendances...
23:29:58 Lecture des informations d'état...
23:29:58 Les paquets supplémentaires suivants seront installés :
23:29:58 eole-ad-formula eole-pam-mount-formula eole-workstation-formula
23:29:58 eole-workstation-joineole eole-workstation-manager-salt
23:29:58 eole-workstation-minion eole-workstation-veyon
23:29:58 Les NOUVEAUX paquets suivants seront installés :
23:29:58 eole-ad-formula eole-pam-mount-formula eole-workstation-formula
23:29:58 eole-workstation-joineole eole-workstation-manager-salt
23:29:58 eole-workstation-minion eole-workstation-pkg eole-workstation-veyon
23:29:58 AUTOMATE : detect 'mise à jour,' => 5
23:29:58 AUTOMATE : detect 'nouvellement installés,' => 13
23:29:58 0 mis à jour, 8 nouvellement installés, 0 à enlever et 0 non mis à jour.
23:29:58 Il est nécessaire de prendre 141 Mo dans les archives.
23:29:58 Après cette opération, 142 Mo d'espace disque supplémentaires seront utilisés.
23:29:58 Réception de :1 http://test-eole.ac-dijon.fr/eole eole-2.10.0-updates/main amd64 eole-ad-formula all 2.8.0-4 [33,5 kB]
23:29:58 Réception de :2 http://test-eole.ac-dijon.fr/eole eole-2.10.0-updates/main amd64 eole-pam-mount-formula all 2.10.0-2 [32,6 kB]
23:29:58 Réception de :3 http://test-eole.ac-dijon.fr/eole eole-2.10.0-proposed-updates/main amd64 eole-workstation-formula all 2.17.1-1 [99,6 kB]
23:29:58 Réception de :4 http://test-eole.ac-dijon.fr/eole eole-2.10.0-proposed-updates/main amd64 eole-workstation-joineole all 2.10.0-15 [337 kB]
23:29:58 Réception de :5 http://test-eole.ac-dijon.fr/eole eole-2.10.0-proposed-updates/main amd64 eole-workstation-manager-salt all 2.10.0-6 [18,4 kB]
23:29:58 Réception de :6 http://test-eole.ac-dijon.fr/eole eole-2.10.0-updates/main amd64 eole-workstation-minion all 2.10.0-4 [110 MB]
23:29:58 Réception de :7 http://test-eole.ac-dijon.fr/eole eole-2.10.0/main amd64 eole-workstation-veyon all 2.10.0-1 [31,3 MB]
23:30:03 Réception de :8 http://test-eole.ac-dijon.fr/eole eole-2.10.0-proposed-updates/main amd64 eole-workstation-pkg all 2.10.0-6 [10,6 kB]
23:30:03 141 Mo réceptionnés en 2s (91,8 Mo/s)
23:30:03 Sélection du paquet eole-ad-formula précédemment désélectionné.
23:30:03 (Lecture de la base de données...
23:30:03 (Lecture de la base de données... 176367 fichiers et répertoires déjà installés.)
23:30:03 Préparation du dépaquetage de .../0-eole-ad-formula_2.8.0-4_all.deb ...
23:30:03 Dépaquetage de eole-ad-formula (2.8.0-4) ...
23:30:03 Sélection du paquet eole-pam-mount-formula précédemment désélectionné.
23:30:03 Préparation du dépaquetage de .../1-eole-pam-mount-formula_2.10.0-2_all.deb ...
23:30:03 Dépaquetage de eole-pam-mount-formula (2.10.0-2) ...
23:30:03 Sélection du paquet eole-workstation-formula précédemment désélectionné.
23:30:03 Préparation du dépaquetage de .../2-eole-workstation-formula_2.17.1-1_all.deb ...
23:30:03 Dépaquetage de eole-workstation-formula (2.17.1-1) ...
23:30:03 Sélection du paquet eole-workstation-joineole précédemment désélectionné.
23:30:03 Préparation du dépaquetage de .../3-eole-workstation-joineole_2.10.0-15_all.deb ...
23:30:03 Dépaquetage de eole-workstation-joineole (2.10.0-15) ...
23:30:03 Sélection du paquet eole-workstation-manager-salt précédemment désélectionné.
23:30:03 Préparation du dépaquetage de .../4-eole-workstation-manager-salt_2.10.0-6_all.deb ...
23:30:03 Dépaquetage de eole-workstation-manager-salt (2.10.0-6) ...
23:30:03 Sélection du paquet eole-workstation-minion précédemment désélectionné.
23:30:03 Préparation du dépaquetage de .../5-eole-workstation-minion_2.10.0-4_all.deb ...
23:30:03 Dépaquetage de eole-workstation-minion (2.10.0-4) ...
23:30:03 Sélection du paquet eole-workstation-veyon précédemment désélectionné.
23:30:03 Préparation du dépaquetage de .../6-eole-workstation-veyon_2.10.0-1_all.deb ...
23:30:03 Dépaquetage de eole-workstation-veyon (2.10.0-1) ...
23:30:03 Sélection du paquet eole-workstation-pkg précédemment désélectionné.
23:30:03 Préparation du dépaquetage de .../7-eole-workstation-pkg_2.10.0-6_all.deb ...
23:30:03 Dépaquetage de eole-workstation-pkg (2.10.0-6) ...
23:30:03 Paramétrage de eole-pam-mount-formula (2.10.0-2) ...
23:30:03 Paramétrage de eole-workstation-manager-salt (2.10.0-6) ...
23:30:03 Paramétrage de eole-workstation-veyon (2.10.0-1) ...
23:30:03 Paramétrage de eole-workstation-joineole (2.10.0-15) ...
23:30:03 Paramétrage de eole-workstation-minion (2.10.0-4) ...
23:30:03 Paramétrage de eole-ad-formula (2.8.0-4) ...
23:30:03 Paramétrage de eole-workstation-formula (2.17.1-1) ...
23:30:03 Paramétrage de eole-workstation-pkg (2.10.0-6) ...
23:30:13 Running kernel seems to be up-to-date.
23:30:13 No services need to be restarted.
23:30:13 No containers need to be restarted.
23:30:13 No user sessions are running outdated binaries.
23:30:13 No VM guests are running outdated hypervisor (qemu) binaries on this host.
23:30:18 --------------------------------------------------------------------------------
23:30:18 Exécution des scripts preservice
23:30:18 --------------------------------------------------------------------------------
23:30:18 run-parts: executing /usr/share/eole/preservice/00-acertif reconfigure
23:30:18 run-parts: executing /usr/share/eole/preservice/00-anetwork reconfigure
23:30:23 run-parts: executing /usr/share/eole/preservice/00-snap-proxy reconfigure
23:30:23 Exécuter la configuration du point d'accroche du paquet Snap "core" /
23:30:23 25hESCAPE<[0[[>K
23:30:23 Exécuter la configuration du point d'accroche du paquet Snap "core" /
23:30:23 25hESCAPE<[0[[>K--------------------------------------------------------------------------------
23:30:23 Arrêt des services
23:30:23 --------------------------------------------------------------------------------
23:30:23 Stop Systemd services [|] /] -] \] |] /] -]
23:30:28 \] |] /] -] \] |]
23:30:28 Service z_stats is not running [ OK ]
23:30:28 Service bastion is not running [ OK ]
23:30:28 Service nginx is not running [ OK ]
23:30:28 Service eoleflask is not running [ OK ]
23:30:28 Service exim4 is not running [ OK ]
23:30:28 Service winbind is not running [ OK ]
23:30:28 Service nmbd is not running [ OK ]
23:30:28 Service smbd is not running [ OK ]
23:30:28 Service samba-ad-dc is not running [ OK ]
23:30:28 Service ead-web is not running [ OK ]
23:30:28 Service ead-server is not running [ OK ]
23:30:28 Service eole-workstation-manager is not running [ OK ]
23:30:28 Service salt-minion-ead3 is not running [ OK ]
23:30:28 Service salt-master-ead3 is not running [ OK ]
23:30:28 Service salt-api-ead3 is not running [ OK ]
23:30:28 Service nut-monitor is not running [ OK ]
23:30:28 Service nut-driver-enumerator is not running [ OK ]
23:30:28 Service nut-driver-enumerator.path is not running [ OK ]
23:30:28 Service nut-driver.target is not running [ OK ]
23:30:28 Service nut-server is not running [ OK ]
23:30:28 Service isc-dhcp-server6 is not running [ OK ]
23:30:28 Service isc-dhcp-server is not running [ OK ]
23:30:28 Service clamav-daemon is not running [ OK ]
23:30:28 Service clamav-freshclam is not running [ OK ]
23:30:28 Service ntpsec is not running [ OK ]
23:30:28 Service rng-tools is not running [ OK ]
23:30:28 --------------------------------------------------------------------------------
23:30:28 Exécution des scripts pretemplate
23:30:28 --------------------------------------------------------------------------------
23:30:28 run-parts: executing /usr/share/eole/pretemplate/00-letsencrypt reconfigure
23:30:33 run-parts: executing /usr/share/eole/pretemplate/00-network reconfigure
23:30:33 run-parts: executing /usr/share/eole/pretemplate/00-partitioning reconfigure
23:30:33 run-parts: executing /usr/share/eole/pretemplate/00-resolvconf reconfigure
23:30:33 run-parts: executing /usr/share/eole/pretemplate/00-reverseproxy reconfigure
23:30:33 run-parts: executing /usr/share/eole/pretemplate/00-saltstack reconfigure
23:30:33 run-parts: executing /usr/share/eole/pretemplate/00-timezone reconfigure
23:30:33 run-parts: executing /usr/share/eole/pretemplate/01-fix-home-fstab reconfigure
23:30:38 run-parts: executing /usr/share/eole/pretemplate/01-uucp reconfigure
23:30:38 usermod : aucun changement
23:30:38 run-parts: executing /usr/share/eole/pretemplate/30-eole-workstation-manager reconfigure
23:30:38 run-parts: executing /usr/share/eole/pretemplate/50-ad_certificates reconfigure
23:30:38 --------------------------------------------------------------------------------
23:30:38 Redémarrage du réseau
23:30:38 --------------------------------------------------------------------------------
23:30:38 Purge de toutes les interfaces...
23:30:38 Désactivation de l’interface 'enp4s0'...OK
23:30:38 Purge des adresses IP de l’interface 'enp4s0'...OK
23:30:43 Restart Systemd service systemd-networkd [ OK ]
23:30:43 enp4s0 configured routable
23:30:43 --------------------------------------------------------------------------------
23:30:43 Génération des fichiers de configuration.
23:30:43 --------------------------------------------------------------------------------
23:30:43 --------------------------------------------------------------------------------
23:30:43 Configuration des services
23:30:43 --------------------------------------------------------------------------------
23:30:43 Enable Restart only service cron systemd-resolved ssh rsyslog named
23:30:53 Disable Systemd service rng-tools clamav-freshclam clamav-daemon isc-dhcp-server isc-dhcp-server6 nut-server nut-driver.target nut-driver-enumerator.path nut-driver-enumerator nut-monitor smbd nmbd winbind
23:30:58 Enable Systemd service ntpsec salt-api-ead3 salt-master-ead3 salt-minion-ead3 eole-workstation-manager ead-server ead-web samba-ad-dc exim4 eoleflask nginx bastion z_stats
23:31:03 --------------------------------------------------------------------------------
23:31:03 Génération des certificats
23:31:03 --------------------------------------------------------------------------------
23:31:03 Updating certificates in /etc/ssl/certs...
23:31:08 0 added, 0 removed; done.
23:31:08 Running hooks in /etc/ca-certificates/update.d...
23:31:08 done.
23:31:08 --------------------------------------------------------------------------------
23:31:08 Exécution des scripts posttemplate
23:31:08 --------------------------------------------------------------------------------
23:31:08 run-parts: executing /usr/share/eole/posttemplate/00-alogs reconfigure
23:31:08 run-parts: executing /usr/share/eole/posttemplate/00-antivirus reconfigure
23:31:08 run-parts: executing /usr/share/eole/posttemplate/00-backport-patches reconfigure
23:31:08 run-parts: executing /usr/share/eole/posttemplate/00-eole-common reconfigure
23:31:08 Purge log files with non-conventional names
23:31:08 Erased files:
23:31:08 Renamed files:
23:31:08 Untouched files:
23:31:13 Génération des règles de pare-feu
23:31:13 Activation du mode forteresse sur enp4s0
23:31:13 Le serveur est protégé. Pour relancer le pare-feu, exécuter "CreoleService bastion restart"
23:31:13 run-parts: executing /usr/share/eole/posttemplate/00-eole-workstation-binaries reconfigure
23:31:13 run-parts: executing /usr/share/eole/posttemplate/00-filter-motd reconfigure
23:31:13 run-parts: executing /usr/share/eole/posttemplate/00-systemd-resolved reconfigure
23:31:13 run-parts: executing /usr/share/eole/posttemplate/00-upgrade-messages reconfigure
23:31:13 run-parts: executing /usr/share/eole/posttemplate/01-ad_certificates reconfigure
23:31:18 run-parts: executing /usr/share/eole/posttemplate/01-avscanner reconfigure
23:31:18 run-parts: executing /usr/share/eole/posttemplate/01-bind-apparmor reconfigure
23:31:18 run-parts: executing /usr/share/eole/posttemplate/01-ead reconfigure
23:31:18 run-parts: executing /usr/share/eole/posttemplate/01-eoleflask-nginx reconfigure
23:31:23 run-parts: executing /usr/share/eole/posttemplate/02-partages reconfigure
23:31:23 run-parts: executing /usr/share/eole/posttemplate/03-mail reconfigure
23:31:28 run-parts: executing /usr/share/eole/posttemplate/05-dhcp reconfigure
23:31:28 run-parts: executing /usr/share/eole/posttemplate/10-eole-salt-dependencies reconfigure
23:31:28 Install creole library to salt extras modules
23:31:33 run-parts: executing /usr/share/eole/posttemplate/30-ewt-portal reconfigure
23:31:33 run-parts: executing /usr/share/eole/posttemplate/51-ead3fileserver reconfigure
23:31:33 run-parts: executing /usr/share/eole/posttemplate/70-eoleflask reconfigure
23:31:33 --------------------------------------------------------------------------------
23:31:33 Application des paramètres Noyau
23:31:33 --------------------------------------------------------------------------------
23:31:33 --------------------------------------------------------------------------------
23:31:33 Démarrage des services
23:31:33 --------------------------------------------------------------------------------
23:31:33 Start Restart only services [|] /]
23:31:38 -]
23:31:38 Service cron is running [ OK ]
23:31:38 Service systemd-resolved is running [ OK ]
23:31:38 Service ssh is running [ OK ]
23:31:38 Service rsyslog is running [ OK ]
23:31:38 Service named is running [ OK ]
23:31:38 Start Systemd services [|] /] -] \] |] /] -]
23:31:38 Service ntpsec is running [ OK ]
23:31:38 Service salt-api-ead3 is running [ OK ]
23:31:38 Service salt-master-ead3 is running [ OK ]
23:31:38 Service salt-minion-ead3 is running [ OK ]
23:31:38 Service eole-workstation-manager is running [ OK ]
23:31:38 Service ead-server is running [ OK ]
23:31:38 Service ead-web is running [ OK ]
23:31:38 Service samba-ad-dc is running [ OK ]
23:31:38 Service exim4 is running [ OK ]
23:31:38 Service eoleflask is running [ OK ]
23:31:38 Service nginx is running [ OK ]
23:31:38 Service bastion is running [ OK ]
23:31:38 Service z_stats is running [ OK ]
23:31:38 --------------------------------------------------------------------------------
23:31:38 Gestion des utilisateurs systèmes
23:31:38 --------------------------------------------------------------------------------
23:31:38 --------------------------------------------------------------------------------
23:31:38 Exécution des scripts postservice
23:31:38 --------------------------------------------------------------------------------
23:31:38 run-parts: executing /usr/share/eole/postservice/00-eole-common reconfigure
23:31:43 run-parts: executing /usr/share/eole/postservice/00-letsencrypt reconfigure
23:31:43 run-parts: executing /usr/share/eole/postservice/00-snapd_maintenance reconfigure
23:31:43 Aucun snap installé pour le moment. Essayez « snap install hello-world ».
23:31:43 Exécuter la configuration du point d'accroche du paquet Snap "core" /
23:31:43 25hESCAPE<[0[[>Krun-parts: executing /usr/share/eole/postservice/00-systemd-networkd reconfigure
23:31:43 run-parts: executing /usr/share/eole/postservice/00-ubuntu-motd reconfigure
23:31:43 run-parts: executing /usr/share/eole/postservice/05-tftp reconfigure
23:31:43 run-parts: executing /usr/share/eole/postservice/24-test-synchro-with-time-reference reconfigure
23:31:43 run-parts: executing /usr/share/eole/postservice/25-manage-samba reconfigure
23:31:48 Samba/Seth reconfigure
23:31:48 * Mise à jour du backend DNS
23:31:48 Reading domain information
23:31:48 DNS accounts already exist
23:31:48 No zone file /var/lib/samba/bind-dns/dns/DOMSETH.AC-TEST.FR.zone (normal)
23:31:48 DNS partitions already exist
23:31:48 dns-dc1 account already exists
23:31:48 See /var/lib/samba/bind-dns/named.conf for an example configuration include file for BIND
23:31:48 and /var/lib/samba/bind-dns/named.txt for further documentation required for secure DNS updates
23:31:48 Finished upgrading DNS
23:31:48 Gestion des Zones DNS Inversées
23:31:48 Zone : 0.168.192.in-addr.arpa existe déjà
23:31:48 Entrée PTR pour 192.168.0.5 existe.
23:31:48 Zone : 1.1.10.in-addr.arpa existe déjà
23:31:53 Zone : 2.1.10.in-addr.arpa existe déjà
23:31:53 Gestion des DNS
23:31:53 Entrée A pour isatap existe.
23:31:53 Entrée A pour wpad existe.
23:31:53 Changed password OK
23:31:53 Export one principal to /var/lib/samba/private/managed_account/gpo-dc1.keytab
23:31:58 Changed password OK
23:31:58 Export one principal to /var/lib/samba/private/managed_account/gpo-dc1.keytab
23:31:58 * Active Directory est initialisé, reload la configuration
23:31:58 Samba/Seth reconfigure end
23:31:58 run-parts: executing /usr/share/eole/postservice/26-actions reconfigure
23:31:58 ## Acceptation de la clé du minion local ##
23:31:58 ## Synchronisation des modules SaltStack ##
23:32:03 local:
23:32:03 - modules.ead.saltkey.__init__
23:32:03 run-parts: executing /usr/share/eole/postservice/26-partages reconfigure
23:32:08 run-parts: executing /usr/share/eole/postservice/27-dbcheck reconfigure
23:32:08 run-parts: executing /usr/share/eole/postservice/30-eole-workstation-manager reconfigure
23:32:08 Résolution du nom d'hôte "salt" en 192.168.0.5 : Record added successfully
23:32:13 Ajout du compte de jonction au domaine 'eole-workstation-manager'...
23:32:13 User 'eole-workstation-manager' added successfully
23:32:13 Mise en conformité de l’utilisateur 'eole-workstation-manager'...
23:32:13 Expiry for user 'eole-workstation-manager' disabled.
23:32:13 Changed password OK
23:32:18 Délégation pour 'eole-workstation-manager' absentes sur CN=Computers
23:32:18 Délégation pour 'eole-workstation-manager' activée sur CN=Computers
23:32:18 Ajout du compte de lecture 'eole-workstation-reader'...
23:32:23 User 'eole-workstation-reader' added successfully
23:32:23 Mise en conformité de l’utilisateur 'eole-workstation-reader'...
23:32:23 Expiry for user 'eole-workstation-reader' disabled.
23:32:23 Changed password OK
23:32:23 Restart Systemd service eole-workstation-manager
23:32:28 [ OK ]
23:32:28 run-parts: executing /usr/share/eole/postservice/30-gposcript reconfigure
23:32:33 * 'eole_script' existe, rebuild demandé
23:32:33 * Import GPO
23:32:33 * Version différente, positionne à 393229
23:32:38 * Check sysvol ACL : Ok
23:32:38 * Import GPO eole_script : OK
23:32:38 run-parts: executing /usr/share/eole/postservice/40-password_management reconfigure
23:32:48 run-parts: executing /usr/share/eole/postservice/99-check-console-setup reconfigure
23:32:48 --------------------------------------------------------------------------------
23:32:48 Planificateur de tâche
23:32:48 --------------------------------------------------------------------------------
23:32:48 Tâches planifiées EOLE :
23:32:48 * les tâches journalières se feront tous les jours à 05:34 (hors sauvegarde)
23:32:48 - avant sauvegarde
23:32:48 + Export des quotas (quota)
23:32:48 - après sauvegarde
23:32:48 + Purge des corbeilles Samba (adtrash)
23:32:48 * les tâches hebdomadaires se feront le vendredi à 05:34 (hors sauvegarde)
23:32:48 - après sauvegarde
23:32:48 + Mise à jour du serveur (majauto)
23:32:48 Tâches désactivées EOLE :
23:32:48 + Créer une archive de sauvegarde Samba (samba_backup)
23:32:48 + Liste des mises à jour disponibles (queryauto)
23:32:48 + Arrêt du serveur (z_shutdownauto)
23:32:48 + Reconfigure du serveur (y_reconfigureauto)
23:32:48 + Redémarrage du serveur (z_rebootauto)
23:32:48 + Renouvellement du certificat Let's Encrypt (renew_lets_encrypt)
23:32:48 --------------------------------------------------------------------------------
23:32:48 Finalisation de la configuration
23:32:48 --------------------------------------------------------------------------------
23:32:48 --------------------------------------------------------------------------------
23:32:48 Reconfiguration OK
23:32:48 --------------------------------------------------------------------------------
23:32:48 Machine aca.dc1 2.10.0 : ciMonitor python3 ==> RESULT=0
23:32:48 * Désactive home profile 'admin'
23:32:53 Modified CN=admin,CN=Users,DC=domseth,DC=ac-test,DC=fr
23:32:53 Modified 1 records successfully
23:32:53 * Inject BGInfo
23:32:53 * samba-tool ntacl sysvolcheck
23:32:53 * ls -lR /home/sysvol/domseth.ac-test.fr/Policies/
23:32:53 /home/sysvol/domseth.ac-test.fr/Policies/:
23:32:53 total 24
23:32:53 drwxrwx---+ 4 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 18:25 {31B2F340-016D-11D2-945F-00C04FB984F9}
23:32:53 drwxrwx---+ 4 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 18:25 {6AC1786C-016F-11D2-945F-00C04FB984F9}
23:32:53 drwxrwx---+ 4 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 {9998852C-537D-45DB-A862-62B4E4DD5C29}
23:32:53 /home/sysvol/domseth.ac-test.fr/Policies/{31B2F340-016D-11D2-945F-00C04FB984F9}:
23:32:53 total 24
23:32:53 -rwxrwx---+ 1 DOMSETH/domain admins DOMSETH/domain admins 20 mars 17 18:25 GPT.INI
23:32:53 drwxrwx---+ 2 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 18:25 MACHINE
23:32:53 drwxrwx---+ 2 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 18:25 USER
23:32:53 /home/sysvol/domseth.ac-test.fr/Policies/{31B2F340-016D-11D2-945F-00C04FB984F9}/MACHINE:
23:32:53 total 0
23:32:53 /home/sysvol/domseth.ac-test.fr/Policies/{31B2F340-016D-11D2-945F-00C04FB984F9}/USER:
23:32:53 total 0
23:32:53 /home/sysvol/domseth.ac-test.fr/Policies/{6AC1786C-016F-11D2-945F-00C04FB984F9}:
23:32:53 total 24
23:32:53 -rwxrwx---+ 1 DOMSETH/domain admins DOMSETH/domain admins 20 mars 17 18:25 GPT.INI
23:32:53 drwxrwx---+ 2 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 18:25 MACHINE
23:32:53 drwxrwx---+ 2 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 18:25 USER
23:32:53 /home/sysvol/domseth.ac-test.fr/Policies/{6AC1786C-016F-11D2-945F-00C04FB984F9}/MACHINE:
23:32:53 total 0
23:32:53 /home/sysvol/domseth.ac-test.fr/Policies/{6AC1786C-016F-11D2-945F-00C04FB984F9}/USER:
23:32:53 total 0
23:32:53 /home/sysvol/domseth.ac-test.fr/Policies/{9998852C-537D-45DB-A862-62B4E4DD5C29}:
23:32:53 total 24
23:32:53 -rwxr-----+ 1 DOMSETH/domain admins DOMSETH/domain admins 76 mars 17 23:32 GPT.INI
23:32:53 drwxr-x---+ 4 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 Machine
23:32:53 drwxr-x---+ 3 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 User
23:32:53 /home/sysvol/domseth.ac-test.fr/Policies/{9998852C-537D-45DB-A862-62B4E4DD5C29}/Machine:
23:32:53 total 32
23:32:53 -rwxr-----+ 1 DOMSETH/domain admins DOMSETH/domain admins 546 mars 17 23:32 comment.cmtx
23:32:53 drwxr-x---+ 3 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 Preferences
23:32:53 -rwxr-----+ 1 DOMSETH/domain admins DOMSETH/domain admins 486 mars 17 23:32 Registry.pol
23:32:53 drwxr-x---+ 3 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 Scripts
23:32:53 /home/sysvol/domseth.ac-test.fr/Policies/{9998852C-537D-45DB-A862-62B4E4DD5C29}/Machine/Preferences:
23:32:53 total 8
23:32:53 drwxr-x---+ 2 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 Registry
23:32:53 /home/sysvol/domseth.ac-test.fr/Policies/{9998852C-537D-45DB-A862-62B4E4DD5C29}/Machine/Preferences/Registry:
23:32:53 total 8
23:32:53 -rwxr-----+ 1 DOMSETH/domain admins DOMSETH/domain admins 556 mars 17 23:32 Registry.xml
23:32:53 /home/sysvol/domseth.ac-test.fr/Policies/{9998852C-537D-45DB-A862-62B4E4DD5C29}/Machine/Scripts:
23:32:53 total 20
23:32:53 -rwxr-----+ 1 DOMSETH/domain admins DOMSETH/domain admins 112 mars 17 23:32 psscripts.ini
23:32:53 -rwxr-----+ 1 DOMSETH/domain admins DOMSETH/domain admins 0 mars 17 23:32 scripts.ini
23:32:53 drwxr-x---+ 2 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 Startup
23:32:53 /home/sysvol/domseth.ac-test.fr/Policies/{9998852C-537D-45DB-A862-62B4E4DD5C29}/Machine/Scripts/Startup:
23:32:53 total 24
23:32:53 -rwxr-----+ 1 DOMSETH/domain admins DOMSETH/domain admins 20466 mars 17 23:32 installMinion.ps1
23:32:53 /home/sysvol/domseth.ac-test.fr/Policies/{9998852C-537D-45DB-A862-62B4E4DD5C29}/User:
23:32:53 total 8
23:32:53 drwxr-x---+ 3 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 Scripts
23:32:53 /home/sysvol/domseth.ac-test.fr/Policies/{9998852C-537D-45DB-A862-62B4E4DD5C29}/User/Scripts:
23:32:53 total 20
23:32:53 drwxr-x---+ 2 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 Logon
23:32:53 -rwxr-----+ 1 DOMSETH/domain admins DOMSETH/domain admins 86 mars 17 23:32 psscripts.ini
23:32:53 -rwxr-----+ 1 DOMSETH/domain admins DOMSETH/domain admins 0 mars 17 23:32 scripts.ini
23:32:53 /home/sysvol/domseth.ac-test.fr/Policies/{9998852C-537D-45DB-A862-62B4E4DD5C29}/User/Scripts/Logon:
23:32:53 total 16
23:32:53 -rwxr-----+ 1 DOMSETH/domain admins DOMSETH/domain admins 11929 mars 17 23:32 ps.ps1
23:32:53 * ls -lR /usr/share/eole/workstation
23:32:53 /usr/share/eole/workstation:
23:32:53 total 296
23:32:53 drwxr-xr-x 2 root root 4096 mars 17 23:29 bootstrap-salt
23:32:53 -rw-r--r-- 1 root root 602 mars 11 11:44 index.html
23:32:53 -rwxr-xr-x 1 root root 77 mars 11 11:44 installMinion.conf
23:32:53 -rwxr-xr-x 1 root root 118272 mars 11 11:44 installMinion.exe
23:32:53 -rw-r--r-- 1 root root 27942 mars 11 11:44 installMinion.ps1
23:32:53 -rw-r--r-- 1 root root 10762 mars 11 11:44 installMinion.sh
23:32:53 -rwxr-xr-x 1 root root 117760 mars 11 11:44 installMinion-x64.exe
23:32:53 drwxr-xr-x 2 root root 4096 mars 17 23:30 saltstack
23:32:53 -rw-r--r-- 1 root root 172 mars 11 11:44 SHA256SUMS
23:32:53 drwxr-xr-x 2 root root 4096 mars 17 23:30 veyon
23:32:53 /usr/share/eole/workstation/bootstrap-salt:
23:32:53 total 312
23:32:53 -rw-r--r-- 1 root root 315185 mars 11 11:44 bootstrap-salt.sh
23:32:53 -rw-r--r-- 1 root root 84 mars 11 11:44 bootstrap-salt.sh.sha256
23:32:53 /usr/share/eole/workstation/saltstack:
23:32:53 total 107160
23:32:53 -rw-r--r-- 1 root root 62336088 août 26 2025 Salt-Minion-3007.5-Py3-AMD64-Setup.exe
23:32:53 -rw-r--r-- 1 root root 105 août 26 2025 Salt-Minion-3007.5-Py3-AMD64-Setup.exe.sha256
23:32:53 -rw-r--r-- 1 root root 47382680 août 26 2025 Salt-Minion-3007.5-Py3-x86-Setup.exe
23:32:53 -rw-r--r-- 1 root root 103 août 26 2025 Salt-Minion-3007.5-Py3-x86-Setup.exe.sha256
23:32:53 /usr/share/eole/workstation/veyon:
23:32:53 total 30628
23:32:53 -rw-r--r-- 1 root root 15727592 mars 31 2025 veyon-4.9.4.0-win32-setup.exe
23:32:53 -rw-r--r-- 1 root root 96 mars 31 2025 veyon-4.9.4.0-win32-setup.exe.sha256
23:32:53 -rw-r--r-- 1 root root 15625320 mars 31 2025 veyon-4.9.4.0-win64-setup.exe
23:32:53 -rw-r--r-- 1 root root 96 mars 31 2025 veyon-4.9.4.0-win64-setup.exe.sha256
23:32:53 * cat /usr/share/eole/workstation/installMinion.conf
23:32:53 #debug=1
23:32:53 salt-version-amd64=3007.5-Py3-AMD64
23:32:53 salt-version-x86=3007.5-Py3-x86
23:32:53 * check installMinion.ps1
23:32:53 < = /home/sysvol/domseth.ac-test.fr/Policies/{9998852C-537D-45DB-A862-62B4E4DD5C29}/Machine/Scripts/Startup/installMinion.ps1
23:32:53 > = /usr/share/eole/workstation/installMinion.ps1
23:32:53 1,3c1,22
23:32:53 < param(
23:32:53 < [switch]$debug=$false
23:32:53 < )
23:32:53 ---
23:32:53 > # Do not use Requires -RunAsAdministrator
23:32:53 > # Do not use requires -Version 5.1 # For [<TYPE>] syntax
23:32:53 > # They are not logged by Start-Transcript
23:32:53 >
23:32:53 > # Use Common parameters
23:32:53 > # https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_commonparameters
23:32:53 > [CmdletBinding()]
23:32:53 > param()
23:32:53 >
23:32:53 > Set-StrictMode -Version 3
23:32:53 >
23:32:53 > [cultureinfo]::CurrentUICulture = "en-US"
23:32:53 >
23:32:53 > # Used to compute SHA256
23:32:53 > # Contains script path when running .ps1 directly
23:32:53 > # Contains script content when running .exe
23:32:53 > $self = $MyInvocation.MyCommand.Definition
23:32:53 >
23:32:53 > $LogFile = Join-Path -Path $env:TEMP -childPath "install-minion.log"
23:32:53 > $LogPrefix = "installMinion:"
23:32:53 > $config = @{}
23:32:53 > $installedMinion = @{}
23:32:53 5c24
23:32:53 < function log($t)
23:32:53 ---
23:32:53 > function main()
23:32:53 7,8c26
23:32:53 < Write-Host "installMinion: $t"
23:32:53 < }
23:32:53 ---
23:32:53 > setupLogging
23:32:53 10,12c28,32
23:32:53 < function logDebug($t)
23:32:53 < {
23:32:53 < if ( $debug )
23:32:53 ---
23:32:53 > $selfHash = sha256 $self
23:32:53 > $fileVersion = ( Get-Item -Path ( getSelfPath ) ).VersionInfo.FileVersion
23:32:53 >
23:32:53 > log "------------------------------------------"
23:32:53 > if ( $fileVersion )
23:32:53 14c34
23:32:53 < log "DEBUG: $t"
23:32:53 ---
23:32:53 > log "Version: $fileVersion"
23:32:53 16,27c36
23:32:53 < }
23:32:53 <
23:32:53 < # tips: https://stackoverflow.com/questions/35260354/powershell-wget-protocol-violation
23:32:53 < function Set-UseUnsafeHeaderParsing
23:32:53 < {
23:32:53 < param(
23:32:53 < [Parameter(Mandatory,ParameterSetName='Enable')]
23:32:53 < [switch]$Enable,
23:32:53 <
23:32:53 < [Parameter(Mandatory,ParameterSetName='Disable')]
23:32:53 < [switch]$Disable
23:32:53 < )
23:32:53 ---
23:32:53 > log "SHA256: $selfHash"
23:32:53 29c38,39
23:32:53 < $ShouldEnable = $PSCmdlet.ParameterSetName -eq 'Enable'
23:32:53 ---
23:32:53 > checkEnvironment
23:32:53 > Set-ExecutionPolicy Bypass -Scope Process -Force
23:32:53 31c41,42
23:32:53 < $netAssembly = [Reflection.Assembly]::GetAssembly([System.Net.Configuration.SettingsSection])
23:32:53 ---
23:32:53 > $config = getConfig
23:32:53 > $installedMinion = getInstalledMinion
23:32:53 33c44
23:32:53 < if($netAssembly)
23:32:53 ---
23:32:53 > if ( $installedMinion["version"] )
23:32:53 35,40c46,48
23:32:53 < $bindingFlags = [Reflection.BindingFlags] 'Static,GetProperty,NonPublic'
23:32:53 < $settingsType = $netAssembly.GetType('System.Net.Configuration.SettingsSectionInternal')
23:32:53 <
23:32:53 < $instance = $settingsType.InvokeMember('Section', $bindingFlags, $null, $null, @())
23:32:53 <
23:32:53 < if($instance)
23:32:53 ---
23:32:53 > log "------------------------------------------"
23:32:53 > log "Check if installed minion is up-to-date..."
23:32:53 > if ( $config["version"].toString().startsWith($installedMinion["version"]) )
23:32:53 42,48c50,62
23:32:53 < $bindingFlags = 'NonPublic','Instance'
23:32:53 < $useUnsafeHeaderParsingField = $settingsType.GetField('useUnsafeHeaderParsing', $bindingFlags)
23:32:53 <
23:32:53 < if($useUnsafeHeaderParsingField)
23:32:53 < {
23:32:53 < $useUnsafeHeaderParsingField.SetValue($instance, $ShouldEnable)
23:32:53 < }
23:32:53 ---
23:32:53 > throw [InstallMinionNotForMeException]::new(
23:32:53 > "The version '$($installedMinion['version'])' is already installed"
23:32:53 > )
23:32:53 > }
23:32:53 > elseif ( $config["version"] -lt $installedMinion["version"] )
23:32:53 > {
23:32:53 > throw [InstallMinionConfigException]::new(
23:32:53 > "The version '$($installedMinion['version'])' can't be downgraded to older version '$($config['version'])'"
23:32:53 > )
23:32:53 > }
23:32:53 > else
23:32:53 > {
23:32:53 > log "The version '$($installedMinion['version'])' must be upgraded to new version '$($config['version'])'"
23:32:53 50,51d63
23:32:53 < }
23:32:53 < }
23:32:53 53,59c65
23:32:53 < function doDownload( $url1, $file1)
23:32:53 < {
23:32:53 < [string]$url = $url1.ToString()
23:32:53 < [string]$file = $file1.ToString()
23:32:53 < if( Test-Path $file )
23:32:53 < {
23:32:53 < Remove-Item -Path $file
23:32:53 ---
23:32:53 > unInstallMinion $installedMinion
23:32:53 61,62c67
23:32:53 <
23:32:53 < try
23:32:53 ---
23:32:53 > elseif ( $installedMinion["service"] )
23:32:53 64,71c69,70
23:32:53 < $global:ProgressPreference = 'SilentlyContinue'
23:32:53 < [System.Net.ServicePointManager]::ServerCertificateValidationCallback = {$true}
23:32:53 < $wc = New-Object Net.WebClient
23:32:53 < $wc.UseDefaultCredentials = $true
23:32:53 < $wc.Proxy = $null
23:32:53 < #$wc.Proxy.Credentials = $wc.Credentials
23:32:53 < $wc.Encoding = [System.Text.Encoding]::UTF8
23:32:53 < $wc.CachePolicy = New-Object Net.Cache.HttpRequestCachePolicy([System.Net.Cache.HttpRequestCacheLevel]::NoCacheNoStore)
23:32:53 ---
23:32:53 > $serviceName = $installedMinion["service"].getValue("DisplayName")
23:32:53 > log "The service '$serviceName' exists without installer => remove!"
23:32:53 73,87c72,76
23:32:53 < log "Download WebClient $url"
23:32:53 < $wc.DownloadFile($url, $file)
23:32:53 < }
23:32:53 < catch
23:32:53 < {
23:32:53 < $_ | Out-Host # Output the thread pipeline error
23:32:53 < $StatusCode = $_.Exception.Response.StatusCode.value__
23:32:53 < log "StatusCode = $StatusCode"
23:32:53 < log "ERROR: download WebClient '$url'. Stop!"
23:32:53 < }
23:32:53 <
23:32:53 < if( !(Test-Path $file ))
23:32:53 < {
23:32:53 < # Win 7, 8, 2012 ... <= Win 10 !
23:32:53 < try
23:32:53 ---
23:32:53 > # Try to uninstall properly with uninst.exe
23:32:53 > # uninst.exe may be in same directory as ssm.exe or in parent directory
23:32:53 > # See: https://github.com/saltstack/salt/issues/67949
23:32:53 > $servicePath = ( $installedMinion["service"].getValue("ImagePath") ) -replace "[`"']",""
23:32:53 > foreach ( $uninstPath in ( Split-Path -parent $servicePath ), ( ( Split-Path -parent $servicePath ) | Split-Path -parent ) )
23:32:53 89,93c78,83
23:32:53 < # avec DisableKeepAlive !
23:32:53 < log "Invoke-WebRequest $url"
23:32:53 < $r = Invoke-WebRequest -Uri $url -OutFile $file -Method Get -DisableKeepAlive -UseDefaultCredentials -useBasicParsing
23:32:53 < $StatusCode = $Response.StatusCode
23:32:53 < log "StatusCode = $StatusCode"
23:32:53 ---
23:32:53 > $uninst = Join-Path -Path $uninstPath -childPath "uninst.exe"
23:32:53 > verbose "Lookup 'uninst.exe' in '$uninstPath'"
23:32:53 > if ( Test-Path $uninst ) {
23:32:53 > verbose "Uninstaller '$uninst' found"
23:32:53 > $installedMinion["UninstallString"] = $uninst
23:32:53 > }
23:32:53 95c85,87
23:32:53 < catch
23:32:53 ---
23:32:53 >
23:32:53 > $config_dir = Join-Path -path $env:ProgramData -childPath "Salt Project\Salt\conf"
23:32:53 > if ( Test-Path $config_dir )
23:32:53 97,100c89,90
23:32:53 < $_ | Out-Host # Output the thread pipeline error
23:32:53 < $StatusCode = $_.Exception.Response.StatusCode.value__
23:32:53 < log "StatusCode = $StatusCode"
23:32:53 < log "ERROR: download Invoke-WebRequest '$url'. Stop!"
23:32:53 ---
23:32:53 > verbose "Salt configuration dir '$config_dir' found"
23:32:53 > $installedMinion["config_dir"] = $config_dir
23:32:53 101a92
23:32:53 > unInstallMinion $installedMinion
23:32:53 103,112c94,99
23:32:53 <
23:32:53 < if( !(Test-Path $file ))
23:32:53 < {
23:32:53 < log "ERROR: download '$url'. Stop!"
23:32:53 < return 1
23:32:53 < }
23:32:53 < else
23:32:53 < {
23:32:53 < log "'$file1' downloaded"
23:32:53 < return 0
23:32:53 ---
23:32:53 >
23:32:53 > downloadInstaller $config
23:32:53 > $newMinion = installMinion $config
23:32:53 >
23:32:53 > if ( $installedMinion.containsKey("version") -and $installedMinion["version"] -lt "3004.0" -and $newMinion["version"] -ge "3004.0" ) {
23:32:53 > moveMinionDirs $newMinion $installedMinion
23:32:53 113a101,102
23:32:53 >
23:32:53 > configMinion $newMinion
23:32:53 116c105
23:32:53 < function doInstallMinion()
23:32:53 ---
23:32:53 > function checkEnvironment()
23:32:53 118,122c107,109
23:32:53 < Set-ExecutionPolicy Bypass -Scope Process -Force
23:32:53 <
23:32:53 < #############################################################################
23:32:53 < # Phase 1 : check environement
23:32:53 < #############################################################################
23:32:53 ---
23:32:53 > log "------------------------------------------"
23:32:53 > log "Check environment compatibility..."
23:32:53 >
23:32:53 125c112
23:32:53 < if ($Major -le 4)
23:32:53 ---
23:32:53 > if ( $Major -le 4 )
23:32:53 127,128c114,116
23:32:53 < log "You must use PowerShell 4.0 or above."
23:32:53 < return -1
23:32:53 ---
23:32:53 > throw [InstallMinionEnvironmentException]::new(
23:32:53 > "You must use PowerShell 4.0 or above instead of '$Major'"
23:32:53 > )
23:32:53 133,134c121,124
23:32:53 < log "Attention: Install Minion 2023-06-29"
23:32:53 <
23:32:53 ---
23:32:53 >
23:32:53 > #############################################################################
23:32:53 > # .Net Framework
23:32:53 > #############################################################################
23:32:53 138,150c128,141
23:32:53 < switch ($release) {
23:32:53 < ({ $_ -ge 528040 }) { '4.8'; break }
23:32:53 < ({ $_ -ge 461808 }) { '4.7.2'; break }
23:32:53 < ({ $_ -ge 461308 }) { '4.7.1'; break }
23:32:53 < ({ $_ -ge 460798 }) { '4.7'; break }
23:32:53 < ({ $_ -ge 394802 }) { '4.6.2'; break }
23:32:53 < ({ $_ -ge 394254 }) { '4.6.1'; break }
23:32:53 < ({ $_ -ge 393295 }) { '4.6'; break }
23:32:53 < ({ $_ -ge 379893 }) { '4.5.2'; break }
23:32:53 < ({ $_ -ge 378675 }) { '4.5.1'; break }
23:32:53 < ({ $_ -ge 378389 }) { '4.5'; break }
23:32:53 < default { '4.5+ not installed.' }
23:32:53 < }
23:32:53 ---
23:32:53 > switch ($release) {
23:32:53 > ({ $_ -ge 533320 }) { '4.8.1'; break }
23:32:53 > ({ $_ -ge 528040 }) { '4.8'; break }
23:32:53 > ({ $_ -ge 461808 }) { '4.7.2'; break }
23:32:53 > ({ $_ -ge 461308 }) { '4.7.1'; break }
23:32:53 > ({ $_ -ge 460798 }) { '4.7'; break }
23:32:53 > ({ $_ -ge 394802 }) { '4.6.2'; break }
23:32:53 > ({ $_ -ge 394254 }) { '4.6.1'; break }
23:32:53 > ({ $_ -ge 393295 }) { '4.6'; break }
23:32:53 > ({ $_ -ge 379893 }) { '4.5.2'; break }
23:32:53 > ({ $_ -ge 378675 }) { '4.5.1'; break }
23:32:53 > ({ $_ -ge 378389 }) { '4.5'; break }
23:32:53 > default { '4.5+ not installed.' }
23:32:53 > }
23:32:53 152c143
23:32:53 <
23:32:53 ---
23:32:53 >
23:32:53 154,156c145
23:32:53 <
23:32:53 < Set-Location $env:TEMP
23:32:53 <
23:32:53 ---
23:32:53 >
23:32:53 158c147
23:32:53 < # Phase 1b : check os
23:32:53 ---
23:32:53 > # OS
23:32:53 163c152
23:32:53 < log "Check is os type ?"
23:32:53 ---
23:32:53 > log "Check if os type is workstation..."
23:32:53 169,172c158,162
23:32:53 < log "La machine n'est pas une station de travail, je l'ignore. exit=0"
23:32:53 < return 0
23:32:53 < }
23:32:53 <
23:32:53 ---
23:32:53 > throw [InstallMinionNotForMeException]::new(
23:32:53 > "Computer is not a workstation, abort!"
23:32:53 > )
23:32:53 > }
23:32:53 >
23:32:53 174c164
23:32:53 < # Phase 1c : check elevated
23:32:53 ---
23:32:53 > # Elevated privileged is required
23:32:53 176,178c166,168
23:32:53 < log "check is elevated session ?"
23:32:53 < $isAdmin=([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)
23:32:53 < if ( -Not( $isAdmin ) )
23:32:53 ---
23:32:53 > log "Check if session is elevated..."
23:32:53 > $isAdmin=( [Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent() ).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)
23:32:53 > if ( -Not $isAdmin )
23:32:53 180,181c170,172
23:32:53 < log "Vous n'êtes pas 'Administrateur' ou dans une session 'Elevated', exit=-2"
23:32:53 < return -2
23:32:53 ---
23:32:53 > throw [InstallMinionEnvironmentException]::new(
23:32:53 > "You are not 'Administrator' or 'Elevated' session"
23:32:53 > )
23:32:53 185c176
23:32:53 < log "Vous êtes dans une session 'Elevated', Ok"
23:32:53 ---
23:32:53 > log "You are in 'Elevated' session, OK"
23:32:53 187c178
23:32:53 <
23:32:53 ---
23:32:53 >
23:32:53 189c180
23:32:53 < # Phase 2 : check Slat dns
23:32:53 ---
23:32:53 > # DNS query must find `salt`
23:32:53 191c182
23:32:53 < log "check 'salt' dns resolution ?"
23:32:53 ---
23:32:53 > log "Check 'salt' dns resolution..."
23:32:53 194c185
23:32:53 < while( $i -le 3 -and -Not( $testConnection ))
23:32:53 ---
23:32:53 > while( $i -le 3 -and -Not $testConnection )
23:32:53 197c188
23:32:53 < log "La résolution du nom 'salt' n'est pas fonctionnelle, (essai = $i)"
23:32:53 ---
23:32:53 > log "DNS lookup of 'salt' does not work (try $i/3)"
23:32:53 203c194
23:32:53 < log "La résolution du nom 'salt' est fonctionnelle, Ok"
23:32:53 ---
23:32:53 > log "DNS lookup of 'salt' is working"
23:32:53 207,208c198,200
23:32:53 < log "La résolution du nom 'salt' n'est pas fonctionnelle. Configurer l'enregistrement DNS sur le serveur DNS. exit=-3"
23:32:53 < return -3
23:32:53 ---
23:32:53 > throw [InstallMinionException]::new(
23:32:53 > "DNS lookup of 'salt' does not work. Check your DNS configuration or DNS record."
23:32:53 > )
23:32:53 213c205
23:32:53 < if( -Not ($ipSaltMaster) )
23:32:53 ---
23:32:53 > if ( -Not $ipSaltMaster )
23:32:53 215,216c207,209
23:32:53 < log "L'adresse ip du nom 'salt' n'est pas correcte. exit=-3"
23:32:53 < return -3
23:32:53 ---
23:32:53 > throw [InstallMinionException]::new(
23:32:53 > "DNS lookup of 'salt' has incorrect IP address"
23:32:53 > )
23:32:53 220a214
23:32:53 > $config["saltMasterIP"] = $ipSaltMaster
23:32:53 224c218
23:32:53 < # Préparation Invoke hhtprequest pour avoir un debug
23:32:53 ---
23:32:53 > # Prepare Invoke httprequest for debug
23:32:53 227,240c221,231
23:32:53 <
23:32:53 < #############################################################################
23:32:53 < # Phase 3 : téléchargement de 'installMinion.conf' depuis le scribe
23:32:53 < #############################################################################
23:32:53 < log "---"
23:32:53 < $saltMinionConfFile="$env:TEMP\installMinion.conf"
23:32:53 < $saltMinionConfUrl="http://$ipSaltMaster/joineole/installMinion.conf"
23:32:53 < $cdu = doDownload -url1 $saltMinionConfUrl -file1 $saltMinionConfFile
23:32:53 < if( $cdu -eq 1)
23:32:53 < {
23:32:53 < return -4
23:32:53 < }
23:32:53 <
23:32:53 < # protection si le firewall/filtrage renvoi autre chose ...
23:32:53 ---
23:32:53 > }
23:32:53 >
23:32:53 > function getConfig()
23:32:53 > {
23:32:53 > log "------------------------------------------"
23:32:53 > log "Load installMinion configuration..."
23:32:53 > $saltMinionConfFile = Join-Path -Path $env:TEMP -childPath "installMinion.conf"
23:32:53 > $saltMinionConfUrl = "http://$($config['saltMasterIP'])/joineole/installMinion.conf"
23:32:53 > doDownload -url $saltMinionConfUrl -file $saltMinionConfFile
23:32:53 >
23:32:53 > # Be carefull if firewall/proxy return something else...
23:32:53 245,250c236,243
23:32:53 < log "La réponse du serveur n'est pas la bonne"
23:32:53 < log "Vérifier votre configuration de filtrage. exit=-4"
23:32:53 < return -4
23:32:53 < }
23:32:53 <
23:32:53 < $context = @{}
23:32:53 ---
23:32:53 > throw [DownloadProxyError]::new(@"
23:32:53 > Bad reply from server.
23:32:53 > Check your firewall configuration.
23:32:53 > "@)
23:32:53 > }
23:32:53 >
23:32:53 > # Initialize with current config
23:32:53 > $context = $config
23:32:53 258c251
23:32:53 < log "context $name = $value"
23:32:53 ---
23:32:53 > log "config $name = $value"
23:32:53 261,268c254,258
23:32:53 <
23:32:53 < [string]$debugCtx = $context["debug"]
23:32:53 < if ( $debugCtx -eq "1" )
23:32:53 < {
23:32:53 < $debug = $true
23:32:53 < Set-PSDebug -Trace 1
23:32:53 < }
23:32:53 <
23:32:53 ---
23:32:53 >
23:32:53 > $VerbosePreference = if ( $context["verbose"] -eq "1" ) { "Continue" } else { $VerbosePreference }
23:32:53 > $DebugPreference = if ( $context["debug"] -eq "1" ) { "Continue" } else { $DebugPreference }
23:32:53 > setDebug
23:32:53 >
23:32:53 270c260
23:32:53 < # Phase 4 : identification de l'éxécutable à télécharger
23:32:53 ---
23:32:53 > # Build installer file name and URL
23:32:53 272,276c262,265
23:32:53 < # salt-version contient la version + l'architecture
23:32:53 < if( [System.Environment]::Is64BitOperatingSystem )
23:32:53 < {
23:32:53 < [string]$saltVersion = $context["salt-version-amd64"]
23:32:53 < if ( -Not ( $saltVersion ) )
23:32:53 ---
23:32:53 > if ( [System.Environment]::Is64BitOperatingSystem )
23:32:53 > {
23:32:53 > $arch = "AMD64"
23:32:53 > if ( -Not $context["salt-version-amd64"] )
23:32:53 278,279c267,269
23:32:53 < log "La variable de configuration 'salt-version-amd64' n'existe pas. exit=-2"
23:32:53 < return -2
23:32:53 ---
23:32:53 > throw [InstallMinionConfigException]::new(
23:32:53 > "Configuration variable 'salt-version-amd64' does not exist."
23:32:53 > )
23:32:53 281c271,273
23:32:53 < $saltInstallDir="c:\Program Files\Salt Project\Salt"
23:32:53 ---
23:32:53 > # salt-version-amd64 must be mangled to became a `[version]`
23:32:53 > [version]$context["version"] = $context["salt-version-amd64"] -replace '-.*',''
23:32:53 > [string]$context["installer_version"] = $context["salt-version-amd64"] -replace '-Py.*',''
23:32:53 284,286c276,317
23:32:53 < {
23:32:53 < [string]$saltVersion = $context["salt-version-x86"]
23:32:53 < if ( -Not ( $saltVersion ) )
23:32:53 ---
23:32:53 > {
23:32:53 > $arch = "x86"
23:32:53 > if ( -Not $context["salt-version-x86"] )
23:32:53 > {
23:32:53 > throw [InstallMinionConfigException]::new(
23:32:53 > "Configuration variable 'salt-version-x86' does not exist."
23:32:53 > )
23:32:53 > }
23:32:53 > # salt-version-x86 must be mangled to became a `[version]`
23:32:53 > [version]$context["version"] = $context["salt-version-x86"] -replace '-.*',''
23:32:53 > [string]$context["installer_version"] = $context["salt-version-x86"] -replace '-Py.*',''
23:32:53 > }
23:32:53 >
23:32:53 > log "Wanted Salt version: $($context['version'])"
23:32:53 > $context["setupName"] = "Salt-Minion-$($context['installer_version'])-Py3-$arch-Setup.exe"
23:32:53 > $context["setupUrl"] = "http://$($context['saltMasterIP'])/joineole/saltstack/$($context['SetupName'])"
23:32:53 > $context["setupFile"] = Join-Path -Path $env:TEMP -childPath $context["SetupName"]
23:32:53 >
23:32:53 > verbose "New minion configuration"
23:32:53 > verbose ( $context | Out-String )
23:32:53 >
23:32:53 > return $context
23:32:53 > }
23:32:53 >
23:32:53 > function getInstalledMinion()
23:32:53 > {
23:32:53 > log "------------------------------------------"
23:32:53 > log "Check installed minion..."
23:32:53 >
23:32:53 > $context = @{}
23:32:53 > $installerSalt = getInstaller "Salt Minion"
23:32:53 >
23:32:53 > if ( $installerSalt )
23:32:53 > {
23:32:53 > verbose "Installed minion installer"
23:32:53 > verbose ( regDump $installerSalt | Out-String )
23:32:53 >
23:32:53 > $context["installer"] = $installerSalt
23:32:53 > [version]$context["version"] = $installerSalt.GetValue("DisplayVersion") -replace '-.*',''
23:32:53 > $context["UninstallString"] = $installerSalt.GetValue("UninstallString")
23:32:53 >
23:32:53 > if ( $context["version"] -lt "3004.0" )
23:32:53 288,289c319,320
23:32:53 < log "La variable de configuration 'salt-version-x86' n'existe pas. exit=-2"
23:32:53 < return -2
23:32:53 ---
23:32:53 > $context["install_dir"] = $context["UninstallString"].Substring(0, $context["UninstallString"].lastIndexOf("\"))
23:32:53 > $context["root_dir"] = $context["install_dir"]
23:32:53 291c322,338
23:32:53 < $saltInstallDir="c:\Program Files (x86)\Salt Project\Salt"
23:32:53 ---
23:32:53 > else
23:32:53 > {
23:32:53 > $context["install_dir"] = expandPath ( regGetItemProperty -path "HKLM:Software\Salt Project\Salt" -value "install_dir" )
23:32:53 > $context["root_dir"] = expandPath ( regGetItemProperty -path "HKLM:Software\Salt Project\Salt" -value "root_dir" )
23:32:53 > }
23:32:53 >
23:32:53 > if ( Test-Path ( Join-Path -Path $context["install_dir"] -childPath "salt-call.exe" ) )
23:32:53 > {
23:32:53 > $context["salt_call"] = Join-Path -Path $context["install_dir"] -childPath "salt-call.exe"
23:32:53 > }
23:32:53 > elseif ( Test-Path ( Join-Path -Path $context["install_dir"] -childPath "salt-call.bat" ) )
23:32:53 > {
23:32:53 > $context["salt_call"] = Join-Path -Path $context["install_dir"] -childPath "salt-call.bat"
23:32:53 > }
23:32:53 >
23:32:53 > $context["config_dir"] = Join-Path -Path $context["root_dir"] -childPath "conf"
23:32:53 > $context["var_dir"] = Join-Path -Path $context["root_dir"] -childPath "var"
23:32:53 293,294c340
23:32:53 < log "saltVersion= $saltVersion"
23:32:53 < if ( $saltVersion -gt "3004" )
23:32:53 ---
23:32:53 > else
23:32:53 296,297c342,350
23:32:53 < log "salt APRES 3004"
23:32:53 < $saltRootDir=$env:ProgramData + "\Salt Project\Salt"
23:32:53 ---
23:32:53 > log "No minion package installed"
23:32:53 > }
23:32:53 >
23:32:53 > $serviceSalt = getService "salt-minion"
23:32:53 > if ( $serviceSalt )
23:32:53 > {
23:32:53 > verbose "Installed minion service"
23:32:53 > verbose ( regDump $serviceSalt | Out-String )
23:32:53 > $context["service"] = $serviceSalt
23:32:53 301,303c354
23:32:53 < log "Salt AVANT 3004"
23:32:53 < $saltInstallDir="c:\salt"
23:32:53 < $saltRootDir="c:\salt"
23:32:53 ---
23:32:53 > log "No minion service found"
23:32:53 305,315c356,357
23:32:53 < log "saltInstallDir=$saltInstallDir"
23:32:53 < log "saltRootDir=$saltRootDir"
23:32:53 <
23:32:53 < #############################################################################
23:32:53 < # Phase 5 : identification du minion installé (s'il existe)
23:32:53 < #############################################################################
23:32:53 < $doUninstall = $false
23:32:53 < $doInstall = $false
23:32:53 < $installersSalt = ((Get-ChildItem "HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall") |
23:32:53 < Where-Object { $_.GetValue( "DisplayName" ) -like "*Salt Minion*" } );
23:32:53 < if ( $installersSalt.Length -eq 0 )
23:32:53 ---
23:32:53 >
23:32:53 > if ( $context.ContainsKey("installer") )
23:32:53 317,321c359
23:32:53 < if ( $env:PROCESSOR_ARCHITECTURE -eq 'AMD64' )
23:32:53 < {
23:32:53 < $installersSalt = ((Get-ChildItem "HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall") |
23:32:53 < Where-Object { $_.GetValue( "DisplayName" ) -like "*Salt Minion*" } );
23:32:53 < }
23:32:53 ---
23:32:53 > log "Installed minion version: $($context['installer'].getValue('DisplayVersion'))"
23:32:53 323,324c361,362
23:32:53 <
23:32:53 < if ( $installersSalt.Length -eq 0 )
23:32:53 ---
23:32:53 >
23:32:53 > if ( $context.Count -ne 0 )
23:32:53 326,343c364,401
23:32:53 < $installedSaltVersion = $null
23:32:53 < log "salt-minion n'est pas installé d'après Uninstall"
23:32:53 < $doInstall = $true
23:32:53 <
23:32:53 < #############################################################################
23:32:53 < # nous allons tester s'il reste des scories d'un ancien Salt
23:32:53 < $serviceSalt = ((Get-ChildItem "HKLM:\SYSTEM\CurrentControlSet\services" -ErrorAction SilentlyContinue) |
23:32:53 < Where-Object { $_.GetValue( "DisplayName" ) -like "*Salt*" } );
23:32:53 < if ( $serviceSalt.Length -ne 0 )
23:32:53 < {
23:32:53 < log "le service salt-minion existe, mais je ne connais pas l'installeur !"
23:32:53 < if (!(Test-Path $saltInstallDir))
23:32:53 < {
23:32:53 < log "le service salt-minion existe, mais pas de répertoire $saltInstallDir ==> sc delete !"
23:32:53 < CMD.EXE /C "sc delete salt-minion"
23:32:53 < }
23:32:53 < }
23:32:53 < else
23:32:53 ---
23:32:53 > verbose "Installed minion configuration"
23:32:53 > verbose ( $context | Out-String )
23:32:53 > }
23:32:53 >
23:32:53 > return $context
23:32:53 > }
23:32:53 >
23:32:53 > function getInstaller( [string] $name )
23:32:53 > {
23:32:53 > debug "getInstaller for $name"
23:32:53 > return regGetItemProperty -path "HKLM:Software\Microsoft\Windows\CurrentVersion\Uninstall\$name"
23:32:53 > }
23:32:53 >
23:32:53 > function getService( [string] $name )
23:32:53 > {
23:32:53 > debug "getService for $name"
23:32:53 > return regGetItemProperty -path "HKLM:System\CurrentControlSet\services\$name"
23:32:53 > }
23:32:53 >
23:32:53 > function unInstallMinion( [hashtable] $minion )
23:32:53 > {
23:32:53 > log "------------------------------------------"
23:32:53 > log "Uninstall minion '$($minion['version'])' with '$($minion['UninstallString'])'..."
23:32:53 >
23:32:53 > try
23:32:53 > {
23:32:53 > $minion_file = Join-Path -Path $minion["config_dir"] -childPath "minion"
23:32:53 > $minion_d = Join-Path -Path $minion["config_dir"] -childPath "minion.d"
23:32:53 >
23:32:53 > $serviceName = $minion["service"].getValue("DisplayName") -replace "[`"']",""
23:32:53 > $servicePath = $minion["service"].getValue("ImagePath") -replace "[`"']",""
23:32:53 >
23:32:53 > # Spawn uninstaller and wait for termination
23:32:53 > Start-Process -FilePath $minion["UninstallString"] -ArgumentList "/S" -Wait
23:32:53 >
23:32:53 > log "Uninstall done"
23:32:53 >
23:32:53 > if ( Test-Path $servicePath )
23:32:53 345c403,404
23:32:53 < log "le service salt-minion n'existe pas dans le registre."
23:32:53 ---
23:32:53 > log "Remove orphan service '$serviceName'"
23:32:53 > sc.exe delete $serviceName
23:32:53 346a406,413
23:32:53 >
23:32:53 > log "Clean minion configuration"
23:32:53 >
23:32:53 > log "Remove '$minion_file' file"
23:32:53 > Remove-Item -path $minion_file -ErrorAction SilentlyContinue
23:32:53 >
23:32:53 > log "Remove '$minion_d' directory"
23:32:53 > Remove-Item -recurse -path $minion_d -ErrorAction SilentlyContinue
23:32:53 348c415
23:32:53 < else
23:32:53 ---
23:32:53 > catch
23:32:53 350c417,431
23:32:53 < if ( $debug )
23:32:53 ---
23:32:53 > throw [InstallMinionUninstallException]::new(
23:32:53 > "Error during uninstall: $($PSItem.ToString())",
23:32:53 > $PSItem.Exception
23:32:53 > )
23:32:53 > }
23:32:53 > }
23:32:53 >
23:32:53 > function moveMinionDirs( [hashtable] $newMinion, [hashtable] $oldMinion )
23:32:53 > {
23:32:53 > log "------------------------------------------"
23:32:53 > log "Move '$($oldMinion['version'])' directories..."
23:32:53 >
23:32:53 > try
23:32:53 > {
23:32:53 > if ( -Not ( Test-Path $newMinion["root_dir"] ) )
23:32:53 352c433,434
23:32:53 < $installersSalt[0] | Out-Host
23:32:53 ---
23:32:53 > log "Create new installation root directory '$($newMinion['root_dir'])'"
23:32:53 > verbose ( md $newMinion["root_dir"] | Out-String )
23:32:53 354,358c436,438
23:32:53 < [string]$installedSaltVersion = $installersSalt[0].GetValue( "DisplayVersion" )
23:32:53 < [string]$uninstallMinion = $installersSalt[0].GetValue( "UninstallString" )
23:32:53 < log "installedSaltVersion = $installedSaltVersion"
23:32:53 < log "uninstallMinion = $uninstallMinion"
23:32:53 < if ( $saltVersion.startsWith($installedSaltVersion) )
23:32:53 ---
23:32:53 >
23:32:53 > log "Move '$($oldMinion['config_dir'])' to '$($newMinion['config_dir'])'"
23:32:53 > if ( Test-Path $newMinion["config_dir"] )
23:32:53 360c440,441
23:32:53 < log "la version de salt est déjà installée"
23:32:53 ---
23:32:53 > verbose "Remove '$($newMinion['config_dir'])'"
23:32:53 > Remove-Item -Recurse -Force -Path $newMinion["config_dir"]
23:32:53 362c443,446
23:32:53 < else
23:32:53 ---
23:32:53 > Move-Item -Force -Path $oldMinion["config_dir"] -Destination $newMinion["config_dir"]
23:32:53 >
23:32:53 > log "Move '$($oldMinion['var_dir'])' to '$($newMinion['var_dir'])'"
23:32:53 > if ( Test-Path $newMinion["var_dir"] )
23:32:53 364,366c448,449
23:32:53 < log "la version de salt doit être upgradée"
23:32:53 < $doUninstall = $true
23:32:53 < $doInstall = $true
23:32:53 ---
23:32:53 > verbose "Remove '$($newMinion['var_dir'])'"
23:32:53 > Remove-Item -Recurse -Force -Path $newMinion["var_dir"]
23:32:53 368c451
23:32:53 < }
23:32:53 ---
23:32:53 > Move-Item -Force -Path $oldMinion["var_dir"] -Destination $newMinion["var_dir"]
23:32:53 370,379c453
23:32:53 < if ( $doInstall )
23:32:53 < {
23:32:53 < #############################################################################
23:32:53 < # Phase 6 : téléchargemenet de l'éxécutable
23:32:53 < #############################################################################
23:32:53 < $saltMinionSetupName="Salt-Minion-$saltVersion-Setup.exe"
23:32:53 < $saltMinionSetupUrl="http://$ipSaltMaster/joineole/saltstack/$saltMinionSetupName"
23:32:53 < $saltMinionSetupFile="$env:TEMP\$saltMinionSetupName"
23:32:53 <
23:32:53 < if (!(Test-Path $saltMinionSetupFile))
23:32:53 ---
23:32:53 > if ( -Not ( Test-Path "$($oldMinion['root_dir'])\*" ) )
23:32:53 381,388c455,456
23:32:53 < log "download '$saltMinionSetupUrl' ..."
23:32:53 < $cdu = doDownload -url1 $saltMinionSetupUrl -file1 $saltMinionSetupFile
23:32:53 < if( $cdu -eq 1)
23:32:53 < {
23:32:53 < log "Impossible de télécharger '$saltMinionSetupUrl'. exit=-5"
23:32:53 < return -5
23:32:53 < }
23:32:53 < Unblock-File $saltMinionSetupFile
23:32:53 ---
23:32:53 > log "Clean old empty directory '$($oldMinion['root_dir'])'"
23:32:53 > Remove-Item $oldMinion["root_dir"]
23:32:53 390a459,465
23:32:53 > catch
23:32:53 > {
23:32:53 > throw [InstallMinionUninstallException]::new(
23:32:53 > "Can't move old directories: $($PSItem.ToString())"
23:32:53 > )
23:32:53 > }
23:32:53 > }
23:32:53 392c467,471
23:32:53 < if ( $doUninstall )
23:32:53 ---
23:32:53 > function downloadInstaller( [hashtable] $minion )
23:32:53 > {
23:32:53 > log "------------------------------------------"
23:32:53 > log "Download salt installer..."
23:32:53 > if ( Test-Path $minion["setupFile"] )
23:32:53 394,422c473,480
23:32:53 < #############################################################################
23:32:53 < # Phase 7 : uninstall du service ?
23:32:53 < #############################################################################
23:32:53 < log "uninstall $uninstallMinion..."
23:32:53 < try
23:32:53 < {
23:32:53 < # l'uninstaller démarre lance un autre exe et s'arrete tout de suite ....
23:32:53 < CMD.EXE /C "$uninstallMinion" /S
23:32:53 <
23:32:53 < # il faut donc attendre un peu
23:32:53 < $i=1
23:32:53 < Do
23:32:53 < {
23:32:53 < if ( $debug )
23:32:53 < {
23:32:53 < $installersSalt[0] | Out-Host
23:32:53 < }
23:32:53 < [string]$uninstalledSaltVersion = $installersSalt[0].GetValue( "DisplayVersion" )
23:32:53 < if ( -Not( $uninstalledSaltVersion ))
23:32:53 < {
23:32:53 < break
23:32:53 < }
23:32:53 < Write-Host "attente uninstall $i"
23:32:53 < $i++
23:32:53 < Start-Sleep -s 10
23:32:53 < }
23:32:53 < while ($i -le 10)
23:32:53 <
23:32:53 < log "uninstall done"
23:32:53 ---
23:32:53 > log "File '$($minion['setupFile'])' already downloaded"
23:32:53 > }
23:32:53 > else
23:32:53 > {
23:32:53 > doDownload -url $minion["setupUrl"] -file $minion["setupFile"]
23:32:53 > Unblock-File -Path $minion["setupFile"]
23:32:53 > }
23:32:53 > }
23:32:53 424,428c482,485
23:32:53 < log "Clean minion configuration"
23:32:53 < if ( $installedSaltVersion -gt "3004" )
23:32:53 < {
23:32:53 < logDebug "Remove $saltRootDir\conf\minion file"
23:32:53 < Remove-Item -path "$saltRootDir\conf\minion"
23:32:53 ---
23:32:53 > function installMinion( [hashtable] $minion )
23:32:53 > {
23:32:53 > log "------------------------------------------"
23:32:53 > log "Install minion with '$($minion['setupFile'])'..."
23:32:53 430,436c487
23:32:53 < logDebug "Remove $saltRootDir\conf\minion.d directory"
23:32:53 < Remove-Item -recurse -path "$saltRootDir\conf\minion.d\"
23:32:53 < }
23:32:53 < else
23:32:53 < {
23:32:53 < logDebug "Remove c:\salt\conf\minion file"
23:32:53 < Remove-Item -path "c:\salt\conf\minion"
23:32:53 ---
23:32:53 > Start-Process -FilePath $minion["setupFile"] -ArgumentList "/S /start-minion=0" -Wait
23:32:53 438,440c489
23:32:53 < logDebug "Remove c:\salt\conf\minion.d directory"
23:32:53 < Remove-Item -recurse -path "c:\salt\conf\minion.d\"
23:32:53 < }
23:32:53 ---
23:32:53 > $newMinion = getInstalledMinion
23:32:53 442,479c491,583
23:32:53 < log "Move minion configuration ?"
23:32:53 < if ( $installedSaltVersion -lt "3004" )
23:32:53 < {
23:32:53 < if ( $saltVersion -gt "3004" )
23:32:53 < {
23:32:53 < log "version actuelle $installedSaltVersion, et nouvelle $saltVersion --> déplacement conf"
23:32:53 < if ( -Not( Test-Path( $saltRootDir )) )
23:32:53 < {
23:32:53 < New-Item -Path $saltRootDir -ItemType Directory -ErrorAction SilentlyContinue
23:32:53 < }
23:32:53 < $conf = Move-Item -Path C:\salt\conf\ -Destination $saltRootDir -PassThru
23:32:53 < if ( $conf )
23:32:53 < {
23:32:53 < log "conf déplacée dans '$conf'"
23:32:53 < }
23:32:53 < else
23:32:53 < {
23:32:53 < log "ERREUR: 'conf' n'est pas déplacé !"
23:32:53 < }
23:32:53 < $var = Move-Item -Path C:\salt\var\ -Destination $saltRootDir -PassThru
23:32:53 < if ( $var )
23:32:53 < {
23:32:53 < log "var déplacé dans '$var'"
23:32:53 < }
23:32:53 < else
23:32:53 < {
23:32:53 < log "ERREUR: 'var' n'est pas déplacée !"
23:32:53 < }
23:32:53 < }
23:32:53 < else
23:32:53 < {
23:32:53 < log "version actuelle $installedSaltVersion, et nouvelle $saltVersion --> pas de déplacement conf"
23:32:53 < }
23:32:53 < }
23:32:53 < else
23:32:53 < {
23:32:53 < log "version actuelle $installedSaltVersion --> Pas de déplacement du répertoire de conf Salt"
23:32:53 < }
23:32:53 ---
23:32:53 > if ( -Not $newMinion )
23:32:53 > {
23:32:53 > throw [InstallMinionInstallException]::new(
23:32:53 > "Critical error: salt-minion service does not exist after installation."
23:32:53 > )
23:32:53 > }
23:32:53 >
23:32:53 > log "Service 'salt-minion' exists"
23:32:53 >
23:32:53 > if ( Test-Path "$($newMinion['salt_call'])" )
23:32:53 > {
23:32:53 > log "salt-call path '$($newMinion['salt_call'])'."
23:32:53 > }
23:32:53 > else
23:32:53 > {
23:32:53 > throw [InstallMinionInstallException]::new(
23:32:53 > "'$($newMinion['salt_call'])' does not exist."
23:32:53 > )
23:32:53 > }
23:32:53 >
23:32:53 > return $newMinion
23:32:53 > }
23:32:53 >
23:32:53 > function configMinion( [hashtable] $minion )
23:32:53 > {
23:32:53 > log "------------------------------------------"
23:32:53 > log "Configure salt-minion..."
23:32:53 > $grainsConfPath = Join-Path -Path $minion["config_dir"] -childPath "grains"
23:32:53 >
23:32:53 > if ( -Not ( Test-Path $grainsConfPath ) )
23:32:53 > {
23:32:53 > log "Add roles 'ad/member', 'veyon/master' and 'veyon/client'"
23:32:53 > & "$($minion['salt_call'])" --local grains.append roles '["ad/member", "veyon/master", "veyon/client"]'
23:32:53 > }
23:32:53 > else
23:32:53 > {
23:32:53 > log "salt-minion is already configured."
23:32:53 > }
23:32:53 >
23:32:53 > log "Lookup 'roles' grain"
23:32:53 > & "$($minion['salt_call'])" --local grains.get roles | Write-Host
23:32:53 >
23:32:53 > log "Read '$grainsConfPath'"
23:32:53 > log ( Get-Content "$grainsConfPath" | Out-String )
23:32:53 >
23:32:53 > $serviceName = $minion["service"].getValue("DisplayName")
23:32:53 > log "Set service to automatic startup"
23:32:53 > Set-Service -StartupType Automatic $serviceName
23:32:53 > Start-Service $serviceName
23:32:53 >
23:32:53 > log "salt-minion configured"
23:32:53 > }
23:32:53 >
23:32:53 > function doDownload( [string] $url, [string] $file )
23:32:53 > {
23:32:53 > debug "Download '$url' to '$file'"
23:32:53 >
23:32:53 > if ( Test-Path $file ) {
23:32:53 > Remove-Item -Path $file
23:32:53 > }
23:32:53 >
23:32:53 > try
23:32:53 > {
23:32:53 > $global:ProgressPreference = 'SilentlyContinue'
23:32:53 > [System.Net.ServicePointManager]::ServerCertificateValidationCallback = {$true}
23:32:53 > $wc = New-Object Net.WebClient
23:32:53 > $wc.UseDefaultCredentials = $true
23:32:53 > $wc.Proxy = $null
23:32:53 > #$wc.Proxy.Credentials = $wc.Credentials
23:32:53 > $wc.Encoding = [System.Text.Encoding]::UTF8
23:32:53 > $wc.CachePolicy = New-Object Net.Cache.HttpRequestCachePolicy([System.Net.Cache.HttpRequestCacheLevel]::NoCacheNoStore)
23:32:53 >
23:32:53 > log "Download WebClient $url"
23:32:53 > $wc.DownloadFile($url, $file)
23:32:53 > }
23:32:53 > catch
23:32:53 > {
23:32:53 > $_ | Out-Host # Output the thread pipeline error
23:32:53 > $StatusCode = $_.Exception.Response.StatusCode.value__
23:32:53 > log "StatusCode = $StatusCode"
23:32:53 > log "ERROR: download WebClient '$url'. Stop!"
23:32:53 > }
23:32:53 >
23:32:53 > if ( -Not ( Test-Path $file ) )
23:32:53 > {
23:32:53 > # Win 7, 8, 2012 ... <= Win 10 !
23:32:53 > try
23:32:53 > {
23:32:53 > # avec DisableKeepAlive !
23:32:53 > log "Invoke-WebRequest $url"
23:32:53 > $r = Invoke-WebRequest -Uri $url -OutFile $file -Method Get -DisableKeepAlive -UseDefaultCredentials -useBasicParsing
23:32:53 > $StatusCode = $Response.StatusCode
23:32:53 > log "StatusCode = $StatusCode"
23:32:53 484,485c588,590
23:32:53 < log "ERROR: uninstall failed"
23:32:53 < return -9
23:32:53 ---
23:32:53 > $StatusCode = $_.Exception.Response.StatusCode.value__
23:32:53 > log "StatusCode = $StatusCode"
23:32:53 > log "ERROR: download Invoke-WebRequest '$url'. Stop!"
23:32:53 489c594
23:32:53 < if ( $doInstall )
23:32:53 ---
23:32:53 > if ( -Not ( Test-Path $file ) )
23:32:53 491,495c596,609
23:32:53 < #############################################################################
23:32:53 < # Phase 7 : install du service ?
23:32:53 < #############################################################################
23:32:53 < $pss = Get-Service 'salt-minion' -ErrorAction SilentlyContinue
23:32:53 < if ( $pss -eq $null )
23:32:53 ---
23:32:53 > throw [InstallMinionDownloadException]::new("Unable to download '$url'. Stop!")
23:32:53 > }
23:32:53 >
23:32:53 > log "'$file' downloaded"
23:32:53 > }
23:32:53 >
23:32:53 > function regGetItemProperty( [string] $path, [string] $value )
23:32:53 > {
23:32:53 > debug "regGetItemProperty lookup -path '$path' -value '$value'"
23:32:53 >
23:32:53 > if ( [System.Environment]::Is64BitProcess )
23:32:53 > {
23:32:53 > $regObject = regGetItemProperty64($path)
23:32:53 > if ( $regObject -eq $null )
23:32:53 497,504c611,612
23:32:53 < log "service salt-minion n'existe pas, je l'installe ..."
23:32:53 < CMD.EXE /C "$saltMinionSetupFile" /S
23:32:53 < $pss = Get-Service 'salt-minion' -ErrorAction SilentlyContinue
23:32:53 < if ( $pss -eq $null )
23:32:53 < {
23:32:53 < log "Le service salt-minion n'existe pas après l'installation. C'est une erreur grave. exit=-6"
23:32:53 < return -6
23:32:53 < }
23:32:53 ---
23:32:53 > debug "regGetItemProperty: no 64 bits native '$path', lookup in 32 bits hive"
23:32:53 > $regObject = regGetItemProperty32($path)
23:32:53 506c614,618
23:32:53 < else
23:32:53 ---
23:32:53 > }
23:32:53 > elseif ( [System.Environment]::Is64BitOperatingSystem )
23:32:53 > {
23:32:53 > $regObject = regGetItemProperty64($path)
23:32:53 > if ( $regObject -eq $null )
23:32:53 508c620,621
23:32:53 < log "service salt-minion existe !"
23:32:53 ---
23:32:53 > debug "regGetItemProperty: no WOW6432 bits '$path', lookup in 64 bits hive"
23:32:53 > $regObject = regGetItemProperty32($path)
23:32:53 509a623,627
23:32:53 > }
23:32:53 > else {
23:32:53 > debug "regGetItemProperty: 32 bits process on 32 bits system"
23:32:53 > regGetItemProperty32($path)
23:32:53 > }
23:32:53 510a629,633
23:32:53 > if ( $regObject -and $value )
23:32:53 > {
23:32:53 > $ret = $regObject.getValue($value, $null, 1)
23:32:53 > debug "regGetItemProperty: '$path' '$value' = '$ret'"
23:32:53 > return $ret
23:32:53 512,517c635,658
23:32:53 <
23:32:53 < #############################################################################
23:32:53 < # Phase 7c : check présence salt-call.bat/exe
23:32:53 < #############################################################################
23:32:53 < $saltCallPath="$saltInstallDir\salt-call.bat"
23:32:53 < if (!(Test-Path "$saltCallPath" ))
23:32:53 ---
23:32:53 > else
23:32:53 > {
23:32:53 > return $regObject
23:32:53 > }
23:32:53 > }
23:32:53 >
23:32:53 > function regGetItemProperty32( [string] $path )
23:32:53 > {
23:32:53 > $noHivePath = $path -replace '^HKLM:\\?',''
23:32:53 > $HKLM32 = [Microsoft.Win32.RegistryKey]::OpenBaseKey([Microsoft.Win32.RegistryHive]::LocalMachine, [Microsoft.Win32.RegistryView]::Registry32)
23:32:53 > return $HKLM32.OpenSubKey($noHivePath)
23:32:53 > }
23:32:53 >
23:32:53 > function regGetItemProperty64( [string] $path )
23:32:53 > {
23:32:53 > $noHivePath = $path -replace '^HKLM:\\?',''
23:32:53 > $HKLM64 = [Microsoft.Win32.RegistryKey]::OpenBaseKey([Microsoft.Win32.RegistryHive]::LocalMachine, [Microsoft.Win32.RegistryView]::Registry64)
23:32:53 > return $HKLM64.OpenSubKey($noHivePath)
23:32:53 > }
23:32:53 >
23:32:53 > function regDump( $regObject )
23:32:53 > {
23:32:53 > $object = @{}
23:32:53 > if ( $regObject -ne $null )
23:32:53 519,520c660
23:32:53 < $saltCallPath="$saltInstallDir\salt-call.exe"
23:32:53 < if (!(Test-Path "$saltCallPath" ))
23:32:53 ---
23:32:53 > foreach ( $valueName in $regObject.getValueNames() )
23:32:53 522,523c662
23:32:53 < log "Le script '$saltInstallDir\salt-call.exe/bat' n'existe pas. exit=-2"
23:32:53 < return -2
23:32:53 ---
23:32:53 > $object[$valueName] = $regObject.getValue($valueName)
23:32:53 525c664,674
23:32:53 < else
23:32:53 ---
23:32:53 > }
23:32:53 >
23:32:53 > return $object
23:32:53 > }
23:32:53 >
23:32:53 > function expandPath( [string] $path )
23:32:53 > {
23:32:53 > $expandedPath = $path
23:32:53 > foreach ( $program_files in "ProgramFiles", "ProgramFiles(x86)", "ProgramW6432" )
23:32:53 > {
23:32:53 > if ( Test-Path ( $path -replace "%ProgramFiles%",[Environment]::GetEnvironmentVariable($program_files) ) )
23:32:53 527c676
23:32:53 < log "Le script '$saltInstallDir\salt-call.exe' existe."
23:32:53 ---
23:32:53 > $expandedPath = $expandedPath -replace "%ProgramFiles%",[Environment]::GetEnvironmentVariable($program_files)
23:32:53 530c679,695
23:32:53 < else
23:32:53 ---
23:32:53 > return $expandedPath -replace "%ProgramData%",${env:ProgramData}
23:32:53 > }
23:32:53 >
23:32:53 > function getSelfPath()
23:32:53 > {
23:32:53 > if ( $PSCommandPath -ne "" ) {
23:32:53 > $psScriptPath = $PSCommandPath
23:32:53 > } else {
23:32:53 > # This enables the script to be compiles and get the directory of it.
23:32:53 > $psScriptPath = [System.Diagnostics.Process]::GetCurrentProcess().MainModule.FileName
23:32:53 > }
23:32:53 > return $psScriptPath
23:32:53 > }
23:32:53 >
23:32:53 > function sha256( $string )
23:32:53 > {
23:32:53 > if ( Test-Path($string) )
23:32:53 532c697,698
23:32:53 < log "Le script '$saltInstallDir\salt-call.bat' existe."
23:32:53 ---
23:32:53 > $hash = Get-FileHash -Algorithm SHA256 -Path $string
23:32:53 > return $hash.Hash
23:32:53 534,539c700
23:32:53 <
23:32:53 < #############################################################################
23:32:53 < # Phase 8 : configuration du minion avant re démarrage
23:32:53 < #############################################################################
23:32:53 < $startupConfPath="$saltRootDir\conf\minion.d\startup.conf"
23:32:53 < if (!(Test-Path $startupConfPath ))
23:32:53 ---
23:32:53 > else
23:32:53 541,543c702,706
23:32:53 < log "---"
23:32:53 < log "Ecriture de '$startupConfPath'"
23:32:53 < & "$saltCallPath" --local file.write "$startupConfPath" 'startup_states: hightstate'
23:32:53 ---
23:32:53 > $hasher = [System.Security.Cryptography.HashAlgorithm]::Create('sha256')
23:32:53 > $hashBytes = $hasher.ComputeHash([System.Text.Encoding]::UTF8.GetBytes($string + "`n" -replace "`r"))
23:32:53 > return [BitConverter]::ToString($hashBytes) -replace '-',''
23:32:53 > }
23:32:53 > }
23:32:53 545,546c708,712
23:32:53 < log "Ajout des rôles ad/member, veyon/master et veyon/client"
23:32:53 < & "$saltCallPath" --local grains.append roles '["ad/member", "veyon/master", "veyon/client"]'
23:32:53 ---
23:32:53 > function setupLogging()
23:32:53 > {
23:32:53 > setDebug
23:32:53 > Start-Transcript -Path $LogFile
23:32:53 > }
23:32:53 548,554c714,718
23:32:53 < #############################################################################
23:32:53 < # Phase 9 : redémarrage
23:32:53 < #############################################################################
23:32:53 < log "stop salt-minion..."
23:32:53 < Stop-Service -Name 'salt-minion' -ErrorAction SilentlyContinue
23:32:53 < log "start salt-minion..."
23:32:53 < Restart-Service 'salt-minion' -ErrorAction SilentlyContinue
23:32:53 ---
23:32:53 > function setDebug()
23:32:53 > {
23:32:53 > if ( $DebugPreference -ne "SilentlyContinue" )
23:32:53 > {
23:32:53 > Set-PSDebug -Trace 1
23:32:53 556c720,737
23:32:53 < else
23:32:53 ---
23:32:53 > }
23:32:53 >
23:32:53 > # tips: https://stackoverflow.com/a/35260673
23:32:53 > function Set-UseUnsafeHeaderParsing
23:32:53 > {
23:32:53 > param(
23:32:53 > [Parameter(Mandatory,ParameterSetName="Enable")]
23:32:53 > [switch]$Enable,
23:32:53 >
23:32:53 > [Parameter(Mandatory,ParameterSetName="Disable")]
23:32:53 > [switch]$Disable
23:32:53 > )
23:32:53 >
23:32:53 > $ShouldEnable = $PSCmdlet.ParameterSetName -eq "Enable"
23:32:53 >
23:32:53 > $netAssembly = [Reflection.Assembly]::GetAssembly([System.Net.Configuration.SettingsSection])
23:32:53 >
23:32:53 > if ( $netAssembly )
23:32:53 558c739,753
23:32:53 < log "salt-minion est déjà configuré."
23:32:53 ---
23:32:53 > $bindingFlags = [Reflection.BindingFlags] "Static,GetProperty,NonPublic"
23:32:53 > $settingsType = $netAssembly.GetType("System.Net.Configuration.SettingsSectionInternal")
23:32:53 >
23:32:53 > $instance = $settingsType.InvokeMember("Section", $bindingFlags, $null, $null, @())
23:32:53 >
23:32:53 > if ( $instance )
23:32:53 > {
23:32:53 > $bindingFlags = "NonPublic","Instance"
23:32:53 > $useUnsafeHeaderParsingField = $settingsType.GetField("useUnsafeHeaderParsing", $bindingFlags)
23:32:53 >
23:32:53 > if ( $useUnsafeHeaderParsingField )
23:32:53 > {
23:32:53 > $useUnsafeHeaderParsingField.SetValue($instance, $ShouldEnable)
23:32:53 > }
23:32:53 > }
23:32:53 559a755
23:32:53 > }
23:32:53 561,565c757,760
23:32:53 < #############################################################################
23:32:53 < # Phase 10 : vérification
23:32:53 < #############################################################################
23:32:53 < log "Lecture de '$startupConfPath'"
23:32:53 < & "$saltCallPath" --local file.read "$startupConfPath" | Write-Host
23:32:53 ---
23:32:53 > function log {
23:32:53 > Param([string] $message)
23:32:53 > Write-Host "$logPrefix $message" @Args
23:32:53 > }
23:32:53 567,568c762,765
23:32:53 < log "Get-Content '$startupConfPath'"
23:32:53 < Get-Content "$startupConfPath" | Write-Host
23:32:53 ---
23:32:53 > function verbose {
23:32:53 > Param([string] $message)
23:32:53 > Write-Verbose -Message "$logPrefix $message" @Args
23:32:53 > }
23:32:53 570,571c767,769
23:32:53 < log "salt-minion ok"
23:32:53 < return 0
23:32:53 ---
23:32:53 > function warning {
23:32:53 > Param([string] $message)
23:32:53 > Write-Warning -Message "$logPrefix $message" @Args
23:32:53 574c772,777
23:32:53 < if ( $debug )
23:32:53 ---
23:32:53 > function debug {
23:32:53 > Param([string] $message)
23:32:53 > Write-Debug -Message "$logPrefix $message" @Args
23:32:53 > }
23:32:53 >
23:32:53 > class InstallMinionException : Exception
23:32:53 576c779,781
23:32:53 < Set-PSDebug -Trace 1
23:32:53 ---
23:32:53 > InstallMinionException() : base() {}
23:32:53 > InstallMinionException([string] $message) : base($message) {}
23:32:53 > InstallMinionException([string] $message, [Exception] $inner) : base($message, $inner) {}
23:32:53 578c783,784
23:32:53 < else
23:32:53 ---
23:32:53 >
23:32:53 > class InstallMinionNotForMeException : InstallMinionException
23:32:53 580c786,788
23:32:53 < Set-PSDebug -Trace 0
23:32:53 ---
23:32:53 > InstallMinionNotForMeException() : base() {}
23:32:53 > InstallMinionNotForMeException([string] $message) : base($message) {}
23:32:53 > InstallMinionNotForMeException([string] $message, [Exception] $inner) : base($message, $inner) {}
23:32:53 582,584c790,791
23:32:53 < Start-Transcript -Path "$env:TEMP\install-minion.log"
23:32:53 < $cdu = 255
23:32:53 < try
23:32:53 ---
23:32:53 >
23:32:53 > class InstallMinionEnvironmentException : InstallMinionException
23:32:53 586c793,795
23:32:53 < $cdu = doInstallMinion
23:32:53 ---
23:32:53 > InstallMinionEnvironmentException() : base() {}
23:32:53 > InstallMinionEnvironmentException([string] $message) : base($message) {}
23:32:53 > InstallMinionEnvironmentException([string] $message, [Exception] $inner) : base($message, $inner) {}
23:32:53 588c797,798
23:32:53 < catch
23:32:53 ---
23:32:53 >
23:32:53 > class InstallMinionConfigException : InstallMinionException
23:32:53 590c800,802
23:32:53 < $_ | Out-Host # Output the thread pipeline error
23:32:53 ---
23:32:53 > InstallMinionConfigException() : base() {}
23:32:53 > InstallMinionConfigException([string] $message) : base($message) {}
23:32:53 > InstallMinionConfigException([string] $message, [Exception] $inner) : base($message, $inner) {}
23:32:53 592c804,843
23:32:53 < finally
23:32:53 ---
23:32:53 >
23:32:53 > class InstallMinionUninstallException : InstallMinionException
23:32:53 > {
23:32:53 > InstallMinionUninstallException() : base() {}
23:32:53 > InstallMinionUninstallException([string] $message) : base($message) {}
23:32:53 > InstallMinionUninstallException([string] $message, [Exception] $inner) : base($message, $inner) {}
23:32:53 > }
23:32:53 >
23:32:53 > class InstallMinionDownloadException : InstallMinionException
23:32:53 > {
23:32:53 > InstallMinionDownloadException() : base() {}
23:32:53 > InstallMinionDownloadException([string] $message) : base($message) {}
23:32:53 > InstallMinionDownloadException([string] $message, [Exception] $inner) : base($message, $inner) {}
23:32:53 > }
23:32:53 >
23:32:53 > class InstallMinionDownloadProxyException : InstallMinionDownloadException
23:32:53 > {
23:32:53 > InstallMinionDownloadProxyException() : base() {}
23:32:53 > InstallMinionDownloadProxyException([string] $message) : base($message) {}
23:32:53 > InstallMinionDownloadProxyException([string] $message, [Exception] $inner) : base($message, $inner) {}
23:32:53 > }
23:32:53 >
23:32:53 > class InstallMinionInstallException : InstallMinionException
23:32:53 > {
23:32:53 > InstallMinionInstallException() : base() {}
23:32:53 > InstallMinionInstallException([string] $message) : base($message) {}
23:32:53 > InstallMinionInstallException([string] $message, [Exception] $inner) : base($message, $inner) {}
23:32:53 > }
23:32:53 >
23:32:53 >
23:32:53 > ####
23:32:53 > #### Execute main
23:32:53 > ####
23:32:53 > try
23:32:53 > {
23:32:53 > Push-Location
23:32:53 > Set-Location $env:TEMP
23:32:53 > main
23:32:53 > }
23:32:53 > catch [InstallMinionNotForMeException]
23:32:53 594c845,856
23:32:53 < Set-PSDebug -Trace 0
23:32:53 ---
23:32:53 > log $PSItem.ToString()
23:32:53 > exit 0
23:32:53 > }
23:32:53 > catch
23:32:53 > {
23:32:53 > log $PSItem.ToString()
23:32:53 > exit -1
23:32:53 > }
23:32:53 > finally {
23:32:53 > Pop-Location
23:32:53 > Set-PSDebug -Off
23:32:53 >
23:32:53 597d858
23:32:53 < exit $cdu
23:32:53 WARNING: Diff installMinion.ps1 / GPO installMinion.ps1
23:33:08
23:33:08 AUTOMATE : aca.dc2 'force-synchro-sysvol-dc2.sh' args=[]
23:33:38 * Force synchro dc2 pour actualiser la GPO
23:33:43 * samba-tool ntacl sysvolcheck : ERREUR
23:33:43 Dans URL : https://dev-eole.ac-dijon.fr/jenkins/job/2.10.0/job/test-aca-dc1-joineole-win10-2.10.0-amd64/ws/ws/aca.dc2-1681484/JobSynchro.log
23:33:43 * ls -lR /home/sysvol/domseth.ac-test.fr/Policies/
23:33:43 ATTENTION: samba-tool ntacl sysvolreset
23:33:48 * diff (ls -lR /home/sysvol/domseth.ac-test.fr/Policies/)
23:33:48 33,35c33,35
23:33:48 < -rwxr-----+ 1 DOMSETH/domain admins DOMSETH/domain admins 76 mars 17 23:32 GPT.INI
23:33:48 < drwxr-x---+ 4 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 Machine
23:33:48 < drwxr-x---+ 3 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 User
23:33:48 ---
23:33:48 > -rwxrwx---+ 1 DOMSETH/domain admins DOMSETH/domain admins 76 mars 17 23:32 GPT.INI
23:33:48 > drwxrwx---+ 4 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 Machine
23:33:48 > drwxrwx---+ 3 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 User
23:33:48 39,42c39,42
23:33:48 < -rwxr-----+ 1 DOMSETH/domain admins DOMSETH/domain admins 546 mars 17 23:32 comment.cmtx
23:33:48 < drwxr-x---+ 3 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 Preferences
23:33:48 < -rwxr-----+ 1 DOMSETH/domain admins DOMSETH/domain admins 486 mars 17 23:32 Registry.pol
23:33:48 < drwxr-x---+ 3 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 Scripts
23:33:48 ---
23:33:48 > -rwxrwx---+ 1 DOMSETH/domain admins DOMSETH/domain admins 546 mars 17 23:32 comment.cmtx
23:33:48 > drwxrwx---+ 3 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 Preferences
23:33:48 > -rwxrwx---+ 1 DOMSETH/domain admins DOMSETH/domain admins 486 mars 17 23:32 Registry.pol
23:33:48 > drwxrwx---+ 3 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 Scripts
23:33:48 46c46
23:33:48 < drwxr-x---+ 2 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 Registry
23:33:48 ---
23:33:48 > drwxrwx---+ 2 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 Registry
23:33:48 50c50
23:33:48 < -rwxr-----+ 1 DOMSETH/domain admins DOMSETH/domain admins 556 mars 17 23:32 Registry.xml
23:33:48 ---
23:33:48 > -rwxrwx---+ 1 DOMSETH/domain admins DOMSETH/domain admins 556 mars 17 23:32 Registry.xml
23:33:48 54,56c54,56
23:33:48 < -rwxr-----+ 1 DOMSETH/domain admins DOMSETH/domain admins 112 mars 17 23:32 psscripts.ini
23:33:48 < -rwxr-----+ 1 DOMSETH/domain admins DOMSETH/domain admins 0 mars 17 23:32 scripts.ini
23:33:48 < drwxr-x---+ 2 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 Startup
23:33:48 ---
23:33:48 > -rwxrwx---+ 1 DOMSETH/domain admins DOMSETH/domain admins 112 mars 17 23:32 psscripts.ini
23:33:48 > -rwxrwx---+ 1 DOMSETH/domain admins DOMSETH/domain admins 0 mars 17 23:32 scripts.ini
23:33:48 > drwxrwx---+ 2 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 Startup
23:33:48 60c60
23:33:48 < -rwxr-----+ 1 DOMSETH/domain admins DOMSETH/domain admins 20466 mars 17 23:32 installMinion.ps1
23:33:48 ---
23:33:48 > -rwxrwx---+ 1 DOMSETH/domain admins DOMSETH/domain admins 20466 mars 17 23:32 installMinion.ps1
23:33:48 64c64
23:33:48 < drwxr-x---+ 3 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 Scripts
23:33:48 ---
23:33:48 > drwxrwx---+ 3 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 Scripts
23:33:48 68,70c68,70
23:33:48 < drwxr-x---+ 2 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 Logon
23:33:48 < -rwxr-----+ 1 DOMSETH/domain admins DOMSETH/domain admins 86 mars 17 23:32 psscripts.ini
23:33:48 < -rwxr-----+ 1 DOMSETH/domain admins DOMSETH/domain admins 0 mars 17 23:32 scripts.ini
23:33:48 ---
23:33:48 > drwxrwx---+ 2 DOMSETH/domain admins DOMSETH/domain admins 4096 mars 17 23:32 Logon
23:33:48 > -rwxrwx---+ 1 DOMSETH/domain admins DOMSETH/domain admins 86 mars 17 23:32 psscripts.ini
23:33:48 > -rwxrwx---+ 1 DOMSETH/domain admins DOMSETH/domain admins 0 mars 17 23:32 scripts.ini
23:33:48 74c74
23:33:48 < -rwxr-----+ 1 DOMSETH/domain admins DOMSETH/domain admins 11929 mars 17 23:32 ps.ps1
23:33:48 ---
23:33:48 > -rwxrwx---+ 1 DOMSETH/domain admins DOMSETH/domain admins 11929 mars 17 23:32 ps.ps1
23:33:48 * samba_dnsupdate from DC1
23:33:48 IPs: ['192.168.0.6']
23:33:48 Looking for DNS entry A dc2.domseth.ac-test.fr 192.168.0.6 as dc2.domseth.ac-test.fr.
23:33:48 Looking for DNS entry CNAME 12ca1cba-0caf-4032-a812-441d5dd53156._msdcs.domseth.ac-test.fr dc2.domseth.ac-test.fr as 12ca1cba-0caf-4032-a812-441d5dd53156._msdcs.domseth.ac-test.fr.
23:33:48 Looking for DNS entry NS domseth.ac-test.fr dc2.domseth.ac-test.fr as domseth.ac-test.fr.
23:33:48 Looking for DNS entry NS _msdcs.domseth.ac-test.fr dc2.domseth.ac-test.fr as _msdcs.domseth.ac-test.fr.
23:33:48 Looking for DNS entry A domseth.ac-test.fr 192.168.0.6 as domseth.ac-test.fr.
23:33:48 Looking for DNS entry SRV _ldap._tcp.domseth.ac-test.fr dc2.domseth.ac-test.fr 389 as _ldap._tcp.domseth.ac-test.fr.
23:33:48 Checking 0 100 389 dc2.domseth.ac-test.fr. against SRV _ldap._tcp.domseth.ac-test.fr dc2.domseth.ac-test.fr 389
23:33:48 Looking for DNS entry SRV _ldap._tcp.dc._msdcs.domseth.ac-test.fr dc2.domseth.ac-test.fr 389 as _ldap._tcp.dc._msdcs.domseth.ac-test.fr.
23:33:48 Checking 0 100 389 dc2.domseth.ac-test.fr. against SRV _ldap._tcp.dc._msdcs.domseth.ac-test.fr dc2.domseth.ac-test.fr 389
23:33:48 Looking for DNS entry SRV _ldap._tcp.c323423b-3c1c-4382-abfc-9d4e54337ad8.domains._msdcs.domseth.ac-test.fr dc2.domseth.ac-test.fr 389 as _ldap._tcp.c323423b-3c1c-4382-abfc-9d4e54337ad8.domains._msdcs.domseth.ac-test.fr.
23:33:48 Checking 0 100 389 dc1.domseth.ac-test.fr. against SRV _ldap._tcp.c323423b-3c1c-4382-abfc-9d4e54337ad8.domains._msdcs.domseth.ac-test.fr dc2.domseth.ac-test.fr 389
23:33:48 Checking 0 100 389 dc2.domseth.ac-test.fr. against SRV _ldap._tcp.c323423b-3c1c-4382-abfc-9d4e54337ad8.domains._msdcs.domseth.ac-test.fr dc2.domseth.ac-test.fr 389
23:33:48 Looking for DNS entry SRV _kerberos._tcp.domseth.ac-test.fr dc2.domseth.ac-test.fr 88 as _kerberos._tcp.domseth.ac-test.fr.
23:33:48 Checking 0 100 88 dc2.domseth.ac-test.fr. against SRV _kerberos._tcp.domseth.ac-test.fr dc2.domseth.ac-test.fr 88
23:33:48 Looking for DNS entry SRV _kerberos._udp.domseth.ac-test.fr dc2.domseth.ac-test.fr 88 as _kerberos._udp.domseth.ac-test.fr.
23:33:48 Checking 0 100 88 dc1.domseth.ac-test.fr. against SRV _kerberos._udp.domseth.ac-test.fr dc2.domseth.ac-test.fr 88
23:33:48 Checking 0 100 88 dc2.domseth.ac-test.fr. against SRV _kerberos._udp.domseth.ac-test.fr dc2.domseth.ac-test.fr 88
23:33:48 Looking for DNS entry SRV _kerberos._tcp.dc._msdcs.domseth.ac-test.fr dc2.domseth.ac-test.fr 88 as _kerberos._tcp.dc._msdcs.domseth.ac-test.fr.
23:33:48 Checking 0 100 88 dc1.domseth.ac-test.fr. against SRV _kerberos._tcp.dc._msdcs.domseth.ac-test.fr dc2.domseth.ac-test.fr 88
23:33:48 Checking 0 100 88 dc2.domseth.ac-test.fr. against SRV _kerberos._tcp.dc._msdcs.domseth.ac-test.fr dc2.domseth.ac-test.fr 88
23:33:48 Looking for DNS entry SRV _kpasswd._tcp.domseth.ac-test.fr dc2.domseth.ac-test.fr 464 as _kpasswd._tcp.domseth.ac-test.fr.
23:33:48 Checking 0 100 464 dc2.domseth.ac-test.fr. against SRV _kpasswd._tcp.domseth.ac-test.fr dc2.domseth.ac-test.fr 464
23:33:48 Looking for DNS entry SRV _kpasswd._udp.domseth.ac-test.fr dc2.domseth.ac-test.fr 464 as _kpasswd._udp.domseth.ac-test.fr.
23:33:48 Checking 0 100 464 dc1.domseth.ac-test.fr. against SRV _kpasswd._udp.domseth.ac-test.fr dc2.domseth.ac-test.fr 464
23:33:48 Checking 0 100 464 dc2.domseth.ac-test.fr. against SRV _kpasswd._udp.domseth.ac-test.fr dc2.domseth.ac-test.fr 464
23:33:48 Looking for DNS entry SRV _ldap._tcp.Default-First-Site-Name._sites.domseth.ac-test.fr dc2.domseth.ac-test.fr 389 as _ldap._tcp.Default-First-Site-Name._sites.domseth.ac-test.fr.
23:33:48 Checking 0 100 389 dc1.domseth.ac-test.fr. against SRV _ldap._tcp.Default-First-Site-Name._sites.domseth.ac-test.fr dc2.domseth.ac-test.fr 389
23:33:48 Checking 0 100 389 dc2.domseth.ac-test.fr. against SRV _ldap._tcp.Default-First-Site-Name._sites.domseth.ac-test.fr dc2.domseth.ac-test.fr 389
23:33:48 Looking for DNS entry SRV _ldap._tcp.Default-First-Site-Name._sites.dc._msdcs.domseth.ac-test.fr dc2.domseth.ac-test.fr 389 as _ldap._tcp.Default-First-Site-Name._sites.dc._msdcs.domseth.ac-test.fr.
23:33:48 Checking 0 100 389 dc1.domseth.ac-test.fr. against SRV _ldap._tcp.Default-First-Site-Name._sites.dc._msdcs.domseth.ac-test.fr dc2.domseth.ac-test.fr 389
23:33:48 Checking 0 100 389 dc2.domseth.ac-test.fr. against SRV _ldap._tcp.Default-First-Site-Name._sites.dc._msdcs.domseth.ac-test.fr dc2.domseth.ac-test.fr 389
23:33:48 Looking for DNS entry SRV _kerberos._tcp.Default-First-Site-Name._sites.domseth.ac-test.fr dc2.domseth.ac-test.fr 88 as _kerberos._tcp.Default-First-Site-Name._sites.domseth.ac-test.fr.
23:33:48 Checking 0 100 88 dc2.domseth.ac-test.fr. against SRV _kerberos._tcp.Default-First-Site-Name._sites.domseth.ac-test.fr dc2.domseth.ac-test.fr 88
23:33:48 Looking for DNS entry SRV _kerberos._tcp.Default-First-Site-Name._sites.dc._msdcs.domseth.ac-test.fr dc2.domseth.ac-test.fr 88 as _kerberos._tcp.Default-First-Site-Name._sites.dc._msdcs.domseth.ac-test.fr.
23:33:48 Checking 0 100 88 dc2.domseth.ac-test.fr. against SRV _kerberos._tcp.Default-First-Site-Name._sites.dc._msdcs.domseth.ac-test.fr dc2.domseth.ac-test.fr 88
23:33:48 Looking for DNS entry A gc._msdcs.domseth.ac-test.fr 192.168.0.6 as gc._msdcs.domseth.ac-test.fr.
23:33:48 Looking for DNS entry SRV _gc._tcp.domseth.ac-test.fr dc2.domseth.ac-test.fr 3268 as _gc._tcp.domseth.ac-test.fr.
23:33:48 Checking 0 100 3268 dc1.domseth.ac-test.fr. against SRV _gc._tcp.domseth.ac-test.fr dc2.domseth.ac-test.fr 3268
23:33:48 Checking 0 100 3268 dc2.domseth.ac-test.fr. against SRV _gc._tcp.domseth.ac-test.fr dc2.domseth.ac-test.fr 3268
23:33:48 Looking for DNS entry SRV _ldap._tcp.gc._msdcs.domseth.ac-test.fr dc2.domseth.ac-test.fr 3268 as _ldap._tcp.gc._msdcs.domseth.ac-test.fr.
23:33:48 Checking 0 100 3268 dc2.domseth.ac-test.fr. against SRV _ldap._tcp.gc._msdcs.domseth.ac-test.fr dc2.domseth.ac-test.fr 3268
23:33:48 Looking for DNS entry SRV _gc._tcp.Default-First-Site-Name._sites.domseth.ac-test.fr dc2.domseth.ac-test.fr 3268 as _gc._tcp.Default-First-Site-Name._sites.domseth.ac-test.fr.
23:33:48 Checking 0 100 3268 dc1.domseth.ac-test.fr. against SRV _gc._tcp.Default-First-Site-Name._sites.domseth.ac-test.fr dc2.domseth.ac-test.fr 3268
23:33:48 Checking 0 100 3268 dc2.domseth.ac-test.fr. against SRV _gc._tcp.Default-First-Site-Name._sites.domseth.ac-test.fr dc2.domseth.ac-test.fr 3268
23:33:48 Looking for DNS entry SRV _ldap._tcp.Default-First-Site-Name._sites.gc._msdcs.domseth.ac-test.fr dc2.domseth.ac-test.fr 3268 as _ldap._tcp.Default-First-Site-Name._sites.gc._msdcs.domseth.ac-test.fr.
23:33:48 Checking 0 100 3268 dc2.domseth.ac-test.fr. against SRV _ldap._tcp.Default-First-Site-Name._sites.gc._msdcs.domseth.ac-test.fr dc2.domseth.ac-test.fr 3268
23:33:48 Looking for DNS entry A DomainDnsZones.domseth.ac-test.fr 192.168.0.6 as DomainDnsZones.domseth.ac-test.fr.
23:33:48 Looking for DNS entry SRV _ldap._tcp.DomainDnsZones.domseth.ac-test.fr dc2.domseth.ac-test.fr 389 as _ldap._tcp.DomainDnsZones.domseth.ac-test.fr.
23:33:48 Checking 0 100 389 dc1.domseth.ac-test.fr. against SRV _ldap._tcp.DomainDnsZones.domseth.ac-test.fr dc2.domseth.ac-test.fr 389
23:33:48 Checking 0 100 389 dc2.domseth.ac-test.fr. against SRV _ldap._tcp.DomainDnsZones.domseth.ac-test.fr dc2.domseth.ac-test.fr 389
23:33:48 Looking for DNS entry SRV _ldap._tcp.Default-First-Site-Name._sites.DomainDnsZones.domseth.ac-test.fr dc2.domseth.ac-test.fr 389 as _ldap._tcp.Default-First-Site-Name._sites.DomainDnsZones.domseth.ac-test.fr.
23:33:48 Checking 0 100 389 dc1.domseth.ac-test.fr. against SRV _ldap._tcp.Default-First-Site-Name._sites.DomainDnsZones.domseth.ac-test.fr dc2.domseth.ac-test.fr 389
23:33:48 Checking 0 100 389 dc2.domseth.ac-test.fr. against SRV _ldap._tcp.Default-First-Site-Name._sites.DomainDnsZones.domseth.ac-test.fr dc2.domseth.ac-test.fr 389
23:33:48 Looking for DNS entry A ForestDnsZones.domseth.ac-test.fr 192.168.0.6 as ForestDnsZones.domseth.ac-test.fr.
23:33:48 Looking for DNS entry SRV _ldap._tcp.ForestDnsZones.domseth.ac-test.fr dc2.domseth.ac-test.fr 389 as _ldap._tcp.ForestDnsZones.domseth.ac-test.fr.
23:33:48 Checking 0 100 389 dc1.domseth.ac-test.fr. against SRV _ldap._tcp.ForestDnsZones.domseth.ac-test.fr dc2.domseth.ac-test.fr 389
23:33:48 Checking 0 100 389 dc2.domseth.ac-test.fr. against SRV _ldap._tcp.ForestDnsZones.domseth.ac-test.fr dc2.domseth.ac-test.fr 389
23:33:48 Looking for DNS entry SRV _ldap._tcp.Default-First-Site-Name._sites.ForestDnsZones.domseth.ac-test.fr dc2.domseth.ac-test.fr 389 as _ldap._tcp.Default-First-Site-Name._sites.ForestDnsZones.domseth.ac-test.fr.
23:33:48 Checking 0 100 389 dc1.domseth.ac-test.fr. against SRV _ldap._tcp.Default-First-Site-Name._sites.ForestDnsZones.domseth.ac-test.fr dc2.domseth.ac-test.fr 389
23:33:48 Checking 0 100 389 dc2.domseth.ac-test.fr. against SRV _ldap._tcp.Default-First-Site-Name._sites.ForestDnsZones.domseth.ac-test.fr dc2.domseth.ac-test.fr 389
23:33:48 No DNS updates needed
23:33:48 * samba-tool drs replicate DC2 DC1
23:33:48 Replicate from DC1 to DC2 was successful.
23:33:48 Replicate from DC1 to DC2 was successful.
23:33:48 Replicate from DC1 to DC2 was successful.
23:33:48 Replicate from DC1 to DC2 was successful.
23:33:53 Replicate from DC1 to DC2 was successful.
23:33:53 * samba-tool drs showrepl
23:33:53 Default-First-Site-Name\DC2
23:33:53 DSA Options: 0x00000001
23:33:53 DSA object GUID: 12ca1cba-0caf-4032-a812-441d5dd53156
23:33:53 DSA invocationId: 1fc34e6c-8acf-4994-af5f-dd86ba690230
23:33:53 ==== INBOUND NEIGHBORS ====
23:33:53 CN=Configuration,DC=domseth,DC=ac-test,DC=fr
23:33:53 Default-First-Site-Name\DC1 via RPC
23:33:53 DSA object GUID: 8235e401-14b5-42f6-947b-c5b70a386812
23:33:53 Last attempt @ Tue Mar 17 23:33:46 2026 CET was successful
23:33:53 0 consecutive failure(s).
23:33:53 Last success @ Tue Mar 17 23:33:46 2026 CET
23:33:53 DC=DomainDnsZones,DC=domseth,DC=ac-test,DC=fr
23:33:53 Default-First-Site-Name\DC1 via RPC
23:33:53 DSA object GUID: 8235e401-14b5-42f6-947b-c5b70a386812
23:33:53 Last attempt @ Tue Mar 17 23:33:47 2026 CET was successful
23:33:53 0 consecutive failure(s).
23:33:53 Last success @ Tue Mar 17 23:33:47 2026 CET
23:33:53 CN=Schema,CN=Configuration,DC=domseth,DC=ac-test,DC=fr
23:33:53 Default-First-Site-Name\DC1 via RPC
23:33:53 DSA object GUID: 8235e401-14b5-42f6-947b-c5b70a386812
23:33:53 Last attempt @ Tue Mar 17 23:33:48 2026 CET was successful
23:33:53 0 consecutive failure(s).
23:33:53 Last success @ Tue Mar 17 23:33:48 2026 CET
23:33:53 DC=domseth,DC=ac-test,DC=fr
23:33:53 Default-First-Site-Name\DC1 via RPC
23:33:53 DSA object GUID: 8235e401-14b5-42f6-947b-c5b70a386812
23:33:53 Last attempt @ Tue Mar 17 23:33:45 2026 CET was successful
23:33:53 0 consecutive failure(s).
23:33:53 Last success @ Tue Mar 17 23:33:45 2026 CET
23:33:53 DC=ForestDnsZones,DC=domseth,DC=ac-test,DC=fr
23:33:53 Default-First-Site-Name\DC1 via RPC
23:33:53 DSA object GUID: 8235e401-14b5-42f6-947b-c5b70a386812
23:33:53 Last attempt @ Tue Mar 17 23:33:46 2026 CET was successful
23:33:53 0 consecutive failure(s).
23:33:53 Last success @ Tue Mar 17 23:33:46 2026 CET
23:33:53 ==== OUTBOUND NEIGHBORS ====
23:33:53 CN=Configuration,DC=domseth,DC=ac-test,DC=fr
23:33:53 Default-First-Site-Name\DC1 via RPC
23:33:53 DSA object GUID: 8235e401-14b5-42f6-947b-c5b70a386812
23:33:53 Last attempt @ NTTIME(0) was successful
23:33:53 0 consecutive failure(s).
23:33:53 Last success @ NTTIME(0)
23:33:53 DC=DomainDnsZones,DC=domseth,DC=ac-test,DC=fr
23:33:53 Default-First-Site-Name\DC1 via RPC
23:33:53 DSA object GUID: 8235e401-14b5-42f6-947b-c5b70a386812
23:33:53 Last attempt @ NTTIME(0) was successful
23:33:53 0 consecutive failure(s).
23:33:53 Last success @ NTTIME(0)
23:33:53 CN=Schema,CN=Configuration,DC=domseth,DC=ac-test,DC=fr
23:33:53 Default-First-Site-Name\DC1 via RPC
23:33:53 DSA object GUID: 8235e401-14b5-42f6-947b-c5b70a386812
23:33:53 Last attempt @ NTTIME(0) was successful
23:33:53 0 consecutive failure(s).
23:33:53 Last success @ NTTIME(0)
23:33:53 DC=domseth,DC=ac-test,DC=fr
23:33:53 Default-First-Site-Name\DC1 via RPC
23:33:53 DSA object GUID: 8235e401-14b5-42f6-947b-c5b70a386812
23:33:53 Last attempt @ NTTIME(0) was successful
23:33:53 0 consecutive failure(s).
23:33:53 Last success @ NTTIME(0)
23:33:53 DC=ForestDnsZones,DC=domseth,DC=ac-test,DC=fr
23:33:53 Default-First-Site-Name\DC1 via RPC
23:33:53 DSA object GUID: 8235e401-14b5-42f6-947b-c5b70a386812
23:33:53 Last attempt @ NTTIME(0) was successful
23:33:53 0 consecutive failure(s).
23:33:53 Last success @ NTTIME(0)
23:33:53 ==== KCC CONNECTION OBJECTS ====
23:33:53 Connection --
23:33:53 Connection name: 5f1beda6-65d5-4d8e-a7de-0542c2cddcd3
23:33:53 Enabled : TRUE
23:33:53 Server DNS name : dc1.domseth.ac-test.fr
23:33:53 Server DN name : CN=NTDS Settings,CN=DC1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=domseth,DC=ac-test,DC=fr
23:33:53 TransportType: RPC
23:33:53 options: 0x00000001
23:33:53 Warning: No NC replicated for Connection!
23:33:53 * samba_kcc export topology
23:33:53 Dans URL : https://dev-eole.ac-dijon.fr/jenkins/job/2.10.0/job/test-aca-dc1-joineole-win10-2.10.0-amd64/ws/ws/aca.dc2-1681484/kcc/NTDS Settings,CN=DC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=domseth,DC=ac-test,DC=fr.dot
23:33:53 Dans URL : https://dev-eole.ac-dijon.fr/jenkins/job/2.10.0/job/test-aca-dc1-joineole-win10-2.10.0-amd64/ws/ws/aca.dc2-1681484/kcc/NTDS Settings,CN=DC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=domseth,DC=ac-test,DC=fr.dot
23:33:53 Dans URL : https://dev-eole.ac-dijon.fr/jenkins/job/2.10.0/job/test-aca-dc1-joineole-win10-2.10.0-amd64/ws/ws/aca.dc2-1681484/kcc/NTDS Settings,CN=DC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=domseth,DC=ac-test,DC=fr.dot
23:33:53 Dans URL : https://dev-eole.ac-dijon.fr/jenkins/job/2.10.0/job/test-aca-dc1-joineole-win10-2.10.0-amd64/ws/ws/aca.dc2-1681484/kcc/NTDS Settings,CN=DC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=domseth,DC=ac-test,DC=fr.dot
23:33:53 Dans URL : https://dev-eole.ac-dijon.fr/jenkins/job/2.10.0/job/test-aca-dc1-joineole-win10-2.10.0-amd64/ws/ws/aca.dc2-1681484/kcc/NTDS Settings,CN=DC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=domseth,DC=ac-test,DC=fr.dot
23:33:53 Dans URL : https://dev-eole.ac-dijon.fr/jenkins/job/2.10.0/job/test-aca-dc1-joineole-win10-2.10.0-amd64/ws/ws/aca.dc2-1681484/kcc/NTDS Settings,CN=DC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=domseth,DC=ac-test,DC=fr.dot
23:33:53 Dans URL : https://dev-eole.ac-dijon.fr/jenkins/job/2.10.0/job/test-aca-dc1-joineole-win10-2.10.0-amd64/ws/ws/aca.dc2-1681484/kcc/NTDS Settings,CN=DC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=domseth,DC=ac-test,DC=fr.dot
23:34:08
23:34:08 AUTOMATE : aca.gateway 'prepare-gateway-domseth.sh' args=[]
23:34:23 * Verification 'salt.domseth.ac-test.fr' doit être connu du Domaine
23:34:23 192.168.0.5
23:34:23 * Vérification résolution 'salt'
23:34:23 192.168.0.5
23:34:23 * Vérification du Forward de la GW vers les DC
23:34:23 192.168.0.6
23:34:23 192.168.0.5
23:34:33 Sauvegarde forcée...
23:34:33 Sauvegarde dans : https://dev-eole.ac-dijon.fr/jenkins/job/2.10.0/job/test-aca-dc1-joineole-win10-2.10.0-amd64/ws/ws/aca.dc2-1681484
23:34:33 Sauvegarde forcée...
23:34:33 Sauvegarde dans : https://dev-eole.ac-dijon.fr/jenkins/job/2.10.0/job/test-aca-dc1-joineole-win10-2.10.0-amd64/ws/ws/aca.dc2-1681484
23:34:33 FIN install-workstation : OK
23:34:33 ================================================
23:34:33 Fin Test install-workstation Duree=310s
23:34:33 Test joinad
23:34:33
23:34:33 AUTOMATE : aca.pc 'test-setdns.ps1' args=[domseth, 2.10.0]
23:34:48 Ouverture /mnt/eole-ci-tests/output/jenkins2/1681487/done/1.log
23:34:48
23:34:48 0
23:34:48 Repertoire partage Vm : Z:\output\jenkins2\1681487
23:34:48 initializeContextDomain [vmConfiguration = domseth, vmVersionMajeurCible = 2.10.0]
23:34:48 * Exception 5 : 2.10.0 DOMSETH -> pwdAdmin=Eole12345!, pwdUser=Eole12345!
23:34:48 * utilise dns=192.168.0.5 192.168.0.6, domain=domseth.ac-test.fr
23:34:48 * Disable ipV6 ! -------------------
23:34:48 Name DisplayName ComponentID Enabled
23:34:48 ---- ----------- ----------- -------
23:34:48 Ethernet 3 Protocole Internet version 6 (TCP/IPv6) ms_tcpip6 False
23:34:48 * Disable ipV6 ---------------------
23:34:48 DHCPEnabled : True
23:34:48 IPAddress : {192.168.0.155}
23:34:48 DefaultIPGateway : {192.168.0.1}
23:34:53 DNSDomain : domseth.ac-test.fr
23:34:53 ServiceName : RTL8023x64
23:34:53 Description : Realtek RTL8139C+ Fast Ethernet NIC #3
23:34:53 Index : 2
23:34:53 -------------------------------
23:34:53 Configuring Network Settings: + Realtek RTL8139C+ Fast Ethernet NIC #3
23:34:53 * Set dns to '192.168.0.5 192.168.0.6'
23:34:53 ... Success
23:34:58 - Primary DNS Domain est déjà 'domseth.ac-test.fr'
23:34:58 - Set Dynamic DNS Registration
23:34:58 - Dynamic DNS Registration est Domain='False' et Full=''
23:34:58 SetDynamicDNSRegistration ok False
23:34:58 ... Success
23:34:58 - DNS Suffix Search Order est déjà 'domseth.ac-test.fr'
23:34:58 ******************************************************
23:34:58 * si j'ai modifié les paramétres DNS --> flushdns
23:34:58 * - ipconfig /flushdns
23:34:58 Configuration IP de Windows
23:34:58 Cache de résolution DNS vidé.
23:34:58 * - ipconfig /registerdns
23:34:58 Configuration IP de Windows
23:34:58 L'inscription des enregistrements de ressource DNS pour toutes les cartes de
23:34:58 cet ordinateur a été initiée. Toute erreur sera signalée dans l'Observateur
23:34:58 d'événements dans 15 minutes.
23:34:58 ******************************************************
23:34:58 * Test Connection 'salt' OK
23:34:58 0
23:34:58 ExitCode ==> 0
23:35:13
23:35:13 AUTOMATE : aca.pc 'test-joineole-271.ps1' args=[]
23:35:28 Ouverture /mnt/eole-ci-tests/output/jenkins2/1681487/done/2.log
23:35:28
23:35:28 0
23:35:28 Repertoire partage Vm : Z:\output\jenkins2\1681487
23:35:28 Debug=False
23:35:28 Mode=EXE
23:35:28 * test-joineole-271:
23:35:28 Major Minor Build Revision
23:35:28 ----- ----- ----- --------
23:35:28 5 1 19041 6456
23:35:28 * test-joineole-271: TempDir = 'C:\Users\pcadmin\AppData\Local\Temp\' ...
23:35:28 * test-joineole-271: test service salt-minion résiduel...
23:35:28 ******************************************************
23:35:28 * diagnoseNetwork : début
23:35:28 * diagnoseNetwork: Get-DnsClient
23:35:33 Caption :
23:35:33 Description :
23:35:33 ElementName :
23:35:33 InstanceID :
23:35:33 CommunicationStatus :
23:35:33 DetailedStatus :
23:35:33 HealthState :
23:35:33 InstallDate :
23:35:33 Name : 7
23:35:38 OperatingStatus :
23:35:38 OperationalStatus :
23:35:38 PrimaryStatus :
23:35:38 Status :
23:35:38 StatusDescriptions :
23:35:38 AvailableRequestedStates :
23:35:38 EnabledDefault : 2
23:35:38 EnabledState :
23:35:38 OtherEnabledState :
23:35:43 RequestedState : 12
23:35:43 TimeOfLastStateChange :
23:35:43 TransitioningToState : 12
23:35:43 CreationClassName :
23:35:43 SystemCreationClassName :
23:35:43 SystemName :
23:35:43 NameFormat :
23:35:43 OtherTypeDescription :
23:35:43 ProtocolIFType :
23:35:48 ProtocolType :
23:35:48 DHCPOptionsToUse :
23:35:48 Hostname : PC-1681487
23:35:48 ConnectionSpecificSuffix : domseth.ac-test.fr
23:35:48 ConnectionSpecificSuffixSearchList : {}
23:35:48 InterfaceAlias : Ethernet 3
23:35:48 InterfaceIndex : 7
23:35:48 RegisterThisConnectionsAddress : True
23:35:48 UseSuffixWhenRegistering : False
23:35:48 PSComputerName :
23:35:53 Suffix : domseth.ac-test.fr
23:35:53 SuffixSearchList : {}
23:35:53 Caption :
23:35:53 Description :
23:35:53 ElementName :
23:35:53 InstanceID :
23:35:58 CommunicationStatus :
23:35:58 DetailedStatus :
23:35:58 HealthState :
23:35:58 InstallDate :
23:35:58 Name : 1
23:35:58 OperatingStatus :
23:35:58 OperationalStatus :
23:35:58 PrimaryStatus :
23:36:03 Status :
23:36:03 StatusDescriptions :
23:36:03 AvailableRequestedStates :
23:36:03 EnabledDefault : 2
23:36:03 EnabledState :
23:36:03 OtherEnabledState :
23:36:03 RequestedState : 12
23:36:03 TimeOfLastStateChange :
23:36:03 TransitioningToState : 12
23:36:08 CreationClassName :
23:36:08 SystemCreationClassName :
23:36:08 SystemName :
23:36:08 NameFormat :
23:36:08 OtherTypeDescription :
23:36:08 ProtocolIFType :
23:36:08 ProtocolType :
23:36:08 DHCPOptionsToUse :
23:36:08 Hostname : PC-1681487
23:36:08 ConnectionSpecificSuffix :
23:36:13 ConnectionSpecificSuffixSearchList : {}
23:36:13 InterfaceAlias : Loopback Pseudo-Interface 1
23:36:13 InterfaceIndex : 1
23:36:13 RegisterThisConnectionsAddress : True
23:36:13 UseSuffixWhenRegistering : False
23:36:13 PSComputerName :
23:36:13 Suffix :
23:36:13 SuffixSearchList : {}
23:36:18 * diagnoseNetwork: Get-DnsClientGlobalSetting
23:36:18 Caption :
23:36:18 Description :
23:36:18 ElementName :
23:36:18 InstanceID :
23:36:18 AddressOrigin : 2
23:36:18 ProtocolIFType :
23:36:18 AppendParentSuffixes : True
23:36:18 AppendPrimarySuffixes : False
23:36:23 DNSSuffixesToAppend : {}
23:36:23 DevolutionLevel : 0
23:36:23 SuffixSearchList : {}
23:36:23 UseDevolution : True
23:36:23 UseSuffixSearchList : False
23:36:23 PSComputerName :
23:36:23 * diagnoseNetwork: Get-DnsClientServerAddress
23:36:28 AddressFamily InterfaceAlias ElementName Address
23:36:28 ------------- -------------- ----------- -------
23:36:28 2 Ethernet 3 Ethernet 3 {192.168.0.5, 192.168.0.6}
23:36:28 23 Ethernet 3 Ethernet 3 {}
23:36:28 2 Loopback Pseudo-Interface 1 Loopback Pseudo-Interface 1 {}
23:36:28 23 Loopback Pseudo-Interface 1 Loopback Pseudo-Interface 1 {fec0:0:0:ffff::1, fec0:0:0:ffff::2, fec0:0:0:...
23:36:33 ---
23:36:33 * diagnoseNetwork: win32_networkadapter status
23:36:33 Name Status
23:36:33 ---- ------
23:36:33 Microsoft Kernel Debug Network Adapter Not connected
23:36:33 Realtek RTL8139C+ Fast Ethernet NIC Not connected
23:36:33 Realtek RTL8139C+ Fast Ethernet NIC #3 Connected
23:36:38 ---
23:36:38 * diagnoseNetwork: ipconfig /all
23:36:38 Configuration IP de Windows
23:36:38 Nom de l'hôte . . . . . . . . . . : PC-1681487
23:36:38 Suffixe DNS principal . . . . . . :
23:36:43 Type de noeud. . . . . . . . . . : Hybride
23:36:43 Routage IP activé . . . . . . . . : Non
23:36:43 Proxy WINS activé . . . . . . . . : Non
23:36:43 Liste de recherche du suffixe DNS.: domseth.ac-test.fr
23:36:43 Carte Ethernet Ethernet 3 :
23:36:43 Suffixe DNS propre à la connexion. . . : domseth.ac-test.fr
23:36:43 Description. . . . . . . . . . . . . . : Realtek RTL8139C+ Fast Ethernet NIC #3
23:36:48 Adresse physique . . . . . . . . . . . : 02-00-C0-A8-00-68
23:36:48 DHCP activé. . . . . . . . . . . . . . : Oui
23:36:48 Configuration automatique activée. . . : Oui
23:36:48 Adresse IPv4. . . . . . . . . . . . . .: 192.168.0.155(préféré)
23:36:48 Masque de sous-réseau. . . . . . . . . : 255.255.255.0
23:36:48 Bail obtenu. . . . . . . . . . . . . . : mercredi 18 mars 2026 00:28:55
23:36:48 Bail expirant. . . . . . . . . . . . . : mercredi 18 mars 2026 02:34:43
23:36:48 Passerelle par défaut. . . . . . . . . : 192.168.0.1
23:36:48 Serveur DHCP . . . . . . . . . . . . . : 192.168.0.1
23:36:53 Serveurs DNS. . . . . . . . . . . . . : 192.168.0.5
23:36:53 192.168.0.6
23:36:53 NetBIOS sur Tcpip. . . . . . . . . . . : Activé
23:36:53 ---
23:36:53 * diagnoseNetwork: route PRINT
23:36:53 ===========================================================================
23:36:53 Liste d'Interfaces
23:36:53 7...02 00 c0 a8 00 68 ......Realtek RTL8139C+ Fast Ethernet NIC #3
23:36:53 1...........................Software Loopback Interface 1
23:36:58 ===========================================================================
23:36:58 IPv4 Table de routage
23:36:58 ===========================================================================
23:36:58 Itinéraires actifs :
23:36:58 Destination réseau Masque réseau Adr. passerelle Adr. interface Métrique
23:36:58 0.0.0.0 0.0.0.0 192.168.0.1 192.168.0.155 25
23:36:58 127.0.0.0 255.0.0.0 On-link 127.0.0.1 331
23:36:58 127.0.0.1 255.255.255.255 On-link 127.0.0.1 331
23:36:58 127.255.255.255 255.255.255.255 On-link 127.0.0.1 331
23:37:03 192.168.0.0 255.255.255.0 On-link 192.168.0.155 281
23:37:03 192.168.0.155 255.255.255.255 On-link 192.168.0.155 281
23:37:03 192.168.0.255 255.255.255.255 On-link 192.168.0.155 281
23:37:03 224.0.0.0 240.0.0.0 On-link 127.0.0.1 331
23:37:03 224.0.0.0 240.0.0.0 On-link 192.168.0.155 281
23:37:03 255.255.255.255 255.255.255.255 On-link 127.0.0.1 331
23:37:03 255.255.255.255 255.255.255.255 On-link 192.168.0.155 281
23:37:03 ===========================================================================
23:37:03 Itinéraires persistants :
23:37:08 Aucun
23:37:08 IPv6 Table de routage
23:37:08 ===========================================================================
23:37:08 Itinéraires actifs :
23:37:08 If Metric Network Destination Gateway
23:37:08 1 331 ::1/128 On-link
23:37:08 1 331 ff00::/8 On-link
23:37:08 ===========================================================================
23:37:08 Itinéraires persistants :
23:37:13 Aucun
23:37:13 ---
23:37:13 * diagnoseNetwork: Get-NetRoute -AddressFamily IPv4 -PolicyStore PersistentStore
23:37:13 ---
23:37:13 * diagnoseNetwork: Pc win 11 registre Tcpip\parameters
23:37:13 ---
23:37:13 * diagnoseNetwork: Pc win 11 registre Tcpip\parameters\PersistentRoutes
23:37:13 ---
23:37:18 * diagnoseNetwork: Pc win 11 registre Netlogon\Parameters
23:37:18 ---
23:37:18 * diagnoseNetwork: ping salt
23:37:18 ******************************************************
23:37:18 * ciPingHost: ping salt
23:37:18 PSComputerName ResponseTime ReplyInconsistency ResolveAddressNames
23:37:18 -------------- ------------ ------------------ -------------------
23:37:18 PC-1681487 0 False False
23:37:18 PC-1681487 0 False False
23:37:18 PC-1681487 0 False False
23:37:18 ---
23:37:18 * diagnoseNetwork: AVANT: wmic ComputerSystem get PartOfDomain,Domain
23:37:18 Transcript started, output file is C:\Users\pcadmin\AppData\Local\Temp\install-minion.log
23:37:18 installMinion: ------------------------------------------
23:37:18 installMinion: Version: 2026.03.11
23:37:18 installMinion: SHA256: 7455A0231E229A9EFEF3720B573E108F04A3990B7B9B80F998A8EC9A875B4492
23:37:18 installMinion: ------------------------------------------
23:37:18 installMinion: Check environment compatibility...
23:37:18 installMinion: ps version : 5
23:37:18 installMinion: OS Build : 19041
23:37:18 installMinion: .NetFramework release = 533325
23:37:18 installMinion: NetFramework = 4.8.1
23:37:18 installMinion: Check if os type is workstation...
23:37:18 installMinion: ProductType = 1
23:37:18 installMinion: Check if session is elevated...
23:37:18 installMinion: You are in 'Elevated' session, OK
23:37:18 installMinion: Check 'salt' dns resolution...
23:37:18 installMinion: DNS lookup of 'salt' is working
23:37:18 installMinion: ipSaltMaster = 192.168.0.5
23:37:18 installMinion: ------------------------------------------
23:37:18 installMinion: Load installMinion configuration...
23:37:18 installMinion: Download WebClient http://192.168.0.5/joineole/installMinion.conf
23:37:18 installMinion: 'C:\Users\pcadmin\AppData\Local\Temp\installMinion.conf' downloaded
23:37:18 installMinion: config #debug = 1
23:37:18 installMinion: config salt-version-amd64 = 3007.5-Py3-AMD64
23:37:18 installMinion: config salt-version-x86 = 3007.5-Py3-x86
23:37:18 installMinion: Wanted Salt version: 3007.5
23:37:18 installMinion: ------------------------------------------
23:37:18 installMinion: Check installed minion...
23:37:18 installMinion: No minion package installed
23:37:18 installMinion: No minion service found
23:37:18 installMinion: ------------------------------------------
23:37:18 installMinion: Download salt installer...
23:37:18 installMinion: Download WebClient http://192.168.0.5/joineole/saltstack/Salt-Minion-3007.5-Py3-AMD64-Setup.exe
23:37:18 installMinion: 'C:\Users\pcadmin\AppData\Local\Temp\Salt-Minion-3007.5-Py3-AMD64-Setup.exe' downloaded
23:37:18 installMinion: ------------------------------------------
23:37:18 installMinion: Install minion with 'C:\Users\pcadmin\AppData\Local\Temp\Salt-Minion-3007.5-Py3-AMD64-Setup.exe'...
23:37:18 installMinion: ------------------------------------------
23:37:18 installMinion: Check installed minion...
23:37:18 installMinion: No minion package installed
23:37:18 installMinion: No minion service found
23:37:18 installMinion: Service 'salt-minion' exists
23:37:18 installMinion: Cannot bind argument to parameter 'Path' because it is an empty string.
23:37:18 Transcript stopped, output file is C:\Users\pcadmin\AppData\Local\Temp\install-minion.log
23:37:18 PartOfDomain
23:37:18 ------------
23:37:18 False
23:37:18 * diagnoseNetwork : fin
23:37:18 ******************************************************
23:37:18 * test-joineole-271: essai de téléchargement de installMinion.conf avant appel à Joineole (qui le fera...)
23:37:18 ********************************************
23:37:18 doDownload: http://salt/joineole/installMinion.conf -> C:\Users\pcadmin\AppData\Local\Temp\installMinion.conf
23:37:18 doDownload: essai DownloadFile http://salt/joineole/installMinion.conf dans installMinion.conf
23:37:18 doDownload: StatusCode = 0
23:37:18 doDownload: 'http://salt/joineole/installMinion.conf' downloaded
23:37:18 doDownload: Unblock-File C:\Users\pcadmin\AppData\Local\Temp\installMinion.conf
23:37:18 0
23:37:18 ********************************************
23:37:18 #debug=1
23:37:18 salt-version-amd64=3007.5-Py3-AMD64
23:37:18 salt-version-x86=3007.5-Py3-x86
23:37:18 context #debug = 1
23:37:18 context salt-version-amd64 = 3007.5-Py3-AMD64
23:37:18 context salt-version-x86 = 3007.5-Py3-x86
23:37:18 saltVersion= 3007.5-Py3-AMD64
23:37:18 saltInstallDir=c:\Program Files\Salt Project\Salt
23:37:18 saltRootDir=C:\ProgramData\Salt Project\Salt
23:37:18 ---
23:37:18 HACK: test-joindomain: route print 192. (avant)
23:37:18 ===========================================================================
23:37:18 Liste d'Interfaces
23:37:18 7...02 00 c0 a8 00 68 ......Realtek RTL8139C+ Fast Ethernet NIC #3
23:37:18 1...........................Software Loopback Interface 1
23:37:18 ===========================================================================
23:37:18 IPv4 Table de routage
23:37:18 ===========================================================================
23:37:18 Itinéraires actifs :
23:37:18 Destination réseau Masque réseau Adr. passerelle Adr. interface Métrique
23:37:18 192.168.0.0 255.255.255.0 On-link 192.168.0.155 281
23:37:18 192.168.0.155 255.255.255.255 On-link 192.168.0.155 281
23:37:18 192.168.0.255 255.255.255.255 On-link 192.168.0.155 281
23:37:18 ===========================================================================
23:37:18 Itinéraires persistants :
23:37:18 Aucun
23:37:18 IPv6 Table de routage
23:37:18 ===========================================================================
23:37:18 Itinéraires actifs :
23:37:18 Aucun
23:37:18 Itinéraires persistants :
23:37:18 Aucun
23:37:18 HACK: test-joindomain: route delete 192.168.253.1
23:37:18 HACK: test-joindomain: route print 192. (apres)
23:37:18 ===========================================================================
23:37:18 Liste d'Interfaces
23:37:18 7...02 00 c0 a8 00 68 ......Realtek RTL8139C+ Fast Ethernet NIC #3
23:37:18 1...........................Software Loopback Interface 1
23:37:18 ===========================================================================
23:37:18 IPv4 Table de routage
23:37:18 ===========================================================================
23:37:18 Itinéraires actifs :
23:37:18 Destination réseau Masque réseau Adr. passerelle Adr. interface Métrique
23:37:23 192.168.0.0 255.255.255.0 On-link 192.168.0.155 281
23:37:23 192.168.0.155 255.255.255.255 On-link 192.168.0.155 281
23:37:23 192.168.0.255 255.255.255.255 On-link 192.168.0.155 281
23:37:23 ===========================================================================
23:37:23 Itinéraires persistants :
23:37:23 Aucun
23:37:23 IPv6 Table de routage
23:37:23 ===========================================================================
23:37:23 Itinéraires actifs :
23:37:23 Aucun
23:37:23 Itinéraires persistants :
23:37:23 Aucun
23:37:23 * test-joineole-271: Appel de l'executable 'installMinion.exe' ...
23:37:23 ERREUR: LASTEXITCODE = -1
23:37:23 * test-joineole-271: dir 'c:\Program Files\Salt Project\Salt'
23:37:23 * test-joineole-271: installMinion.exe ==> OK
23:37:23 Le script 'c:\Program Files\Salt Project\Salt\salt-call.exe' existe.
23:37:23 * test-joineole-271: c:\Program Files\Salt Project\Salt\salt-call.exe --version
23:37:23 * test-joineole-271: APRES: wmic ComputerSystem get PartOfDomain,Domain
23:37:23 False
23:37:23 * test-joineole-271: inject log-level
23:37:23 ERREUR: test-joineole-271: pas de repertoire 'C:\ProgramData\Salt Project\Salt' !!
23:37:23 * test-joineole-271: exit =>
23:37:23 -1
23:37:23 Get-NetRoute : Aucun objet MSFT_NetRoute avec la propriété «AddressFamily» égale à «IPv4» n'a été trouvé. Vérifiez la
23:37:23 valeur de la propriété et réessayez.
23:37:23 Au caractère \\192.168.0.253\eolecitests\scripts\windows\EoleCiFunctions.ps1:932 : 5
23:37:23 + Get-NetRoute -AddressFamily IPv4 -PolicyStore PersistentStore | W ...
23:37:23 + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
23:37:23 + CategoryInfo : ObjectNotFound: (IPv4:AddressFamily) [Get-NetRoute], CimJobException
23:37:23 + FullyQualifiedErrorId : CmdletizationQuery_NotFound_AddressFamily,Get-NetRoute
23:37:23 La suppression de l'itinéraire a échoué : Élément introuvable.
23:37:23 ExitCode ==> 1
23:37:38 monitorReponse: Execution commande en erreur, exit=1
23:37:38 Sauvegarde dans : https://dev-eole.ac-dijon.fr/jenkins/job/2.10.0/job/test-aca-dc1-joineole-win10-2.10.0-amd64/ws/ws/aca.dc1-1681480
23:37:38 Sauvegarde dans : https://dev-eole.ac-dijon.fr/jenkins/job/2.10.0/job/test-aca-dc1-joineole-win10-2.10.0-amd64/ws/ws/gateway-mensr-1676030
23:37:39 Sauvegarde dans : https://dev-eole.ac-dijon.fr/jenkins/job/2.10.0/job/test-aca-dc1-joineole-win10-2.10.0-amd64/ws/ws/aca.dc2-1681484
23:37:39 Sauvegarde dans : https://dev-eole.ac-dijon.fr/jenkins/job/2.10.0/job/test-aca-dc1-joineole-win10-2.10.0-amd64/ws/ws/aca.eolecitests-1676033
23:37:39 Sauvegarde dans : https://dev-eole.ac-dijon.fr/jenkins/job/2.10.0/job/test-aca-dc1-joineole-win10-2.10.0-amd64/ws/ws/aca.pc-1681487
23:37:39 ================================================
23:37:39 Arret au test null car StopOnErreur = oui
23:37:39 Fin Test joinad Duree=185s
23:37:39 ======== stage: shutdown
23:37:39 Pas de 'tearDown:' pour aca-dc1-joineole-win10
23:37:39 AUTOMATE : ShutdownHard aca.pc
23:37:39 deleteVirtFsDirectory : /mnt/eole-ci-tests/output/jenkins2/1681487 true
23:37:39 Suppresion VM : aca.pc 1681487
23:37:49 Attente Etat 'DONE/LCM_INIT' (50) : . ==> Ok, Duree=0s
23:37:49 AUTOMATE : Shutdown aca.dc2
23:37:50 poweroff VM aca.dc2 state=ACTIVE/RUNNING timeout=1440
23:38:00 Attente Etat 'POWEROFF/LCM_INIT' (1440) : . ==> Ok, Duree=0s
23:38:00 Suppresion VM : aca.dc2 1681484
23:38:10 Attente Etat 'DONE/LCM_INIT' (50) : . ==> Ok, Duree=0s
23:38:10 AUTOMATE : Shutdown aca.dc1
23:38:10 poweroff VM aca.dc1 state=ACTIVE/RUNNING timeout=1440
23:38:20 Attente Etat 'POWEROFF/LCM_INIT' (1440) : ACTIVE/SHUTDOWN_POWEROFF POWEROFF/LCM_INIT ==> Ok, Duree=4s
23:38:24 Suppresion VM : aca.dc1 1681480
23:38:34 Attente Etat 'DONE/LCM_INIT' (50) : . ==> Ok, Duree=0s
23:38:34 ======== stage: clean
23:38:34 Suppresion VM : aca.dc2 1681484
23:38:34 deleteVirtFsDirectory : /mnt/eole-ci-tests/output/jenkins2/1681484 true
23:38:34 Suppresion VM : aca.dc1 1681480
23:38:34 deleteVirtFsDirectory : /mnt/eole-ci-tests/output/jenkins2/1681480 true
23:38:34 Fin Test: aca-dc1-joineole-win10 version:2.10.0 architecture:amd64 stage:[clean, startvms, tests, shutdown, clean] Duree=1102s
23:38:34 aca-dc1-joineole-win10 FAILED
23:38:34 Erreur FAILED à 2026/03/17 23:38:34
23:38:34 nettoyage : /home/jenkins/workspace/2.10.0/test-aca-dc1-joineole-win10-2.10.0-amd64/287
23:38:34 Build step 'Exécuter un script shell' marked build as failure
23:38:34 Archiving artifacts
23:38:35 Sending e-mails to: jenkins@listeseole.ac-dijon.fr
23:38:35 Started calculate disk usage of build
23:38:35 Finished Calculation of disk usage of build in 0 seconds
23:38:35 Started calculate disk usage of workspace
23:38:35 Finished Calculation of disk usage of workspace in 0 seconds
23:38:35 Finished: FAILURE