Pour commencer voici quelques informations concernant l'infrastructure :
- Version de WAPT installée : 1.5
- OS du serveur Linux Debian 9 Stretch
- OS de la machine d'administration/création des paquets : W7
- Un serveur WAPT externaliser et 2 repo locaux supplémentaires sur chacun des sites
Mon problème :
Je déploie actuellement ma configuration wapt-get.ini à l'aide d'un paquet
Code : Tout sélectionner
# -*- coding: utf-8 -*-
from setuphelpers import *
uninstallkey = []
def install():
print('Modify max_gpo_script_wait')
inifile_writestring(WAPT.config_filename,'global','max_gpo_script_wait',180)
print('Modify Preshutdowntimeout')
inifile_writestring(WAPT.config_filename,'global','pre_shutdown_timeout',180)
print('Disable Hyberboot')
inifile_writestring(WAPT.config_filename,'global','hiberboot_enabled',0)
print('Disable Notify User')
inifile_writestring(WAPT.config_filename,'global','notify_user',0)
print('Verify cert')
inifile_writestring(WAPT.config_filename,'global','verify_cert',0)
print('Modify public_certs_dir')
inifile_writestring(WAPT.config_filename,'global','public_certs_dir','C:\Program Files (x86)\wapt\ssl')
print('Modify repo_url')
inifile_writestring(WAPT.config_filename,'global','repo_url','https://repolocal1/wapt')
print('Create repositories')
inifile_writestring(WAPT.config_filename,'global','repositories','repo-externe')
print('Frequence update')
inifile_writestring(WAPT.config_filename,'global','waptupdate_task_period',300)
print('Timeout server')
inifile_writestring(WAPT.config_filename,'global','wapt_server_timeout',300)
print('Interdire annulation MAJ')
inifile_writestring(WAPT.config_filename,'global','allow_cancel_upgrade',1)
print('Enable repositories')
inifile_writestring(WAPT.config_filename,'repo-externe','repo_url','https://repoexterne/wapt')
print('Verify cert secondaire')
inifile_writestring(WAPT.config_filename,'repo-externe','verify_cert',0)
Cependant, après tests, je me suis aperçu que le service devait être redémarré sinon la récupération des autres paquets se fait sur le repo du serveur externaliser donc en HTTP.
La commande suivante me permet de le vérifier :
Code : Tout sélectionner
wapt-get show "paquet"
J'ai tenté de rajouter dans mon paquet ce petit code :
Code : Tout sélectionner
def service_restart(WAPTService):
logger.debug(u'Restarting service %s' % WAPTService)
win32serviceutil.RestartService(WAPTService)
win32api.Sleep(2000)
return win32serviceutil.WaitForServiceStatus(WAPTService, win32service.SERVICE_RUNNING, waitSecs=4)
J'ai l'impression que mon service est relancé mais je ne récupère toujours pas les paquets sur le repo local.
Si je vais un redémarrage du service à la main le problème est résolu mais je ne peux pas me permettre de passer sur chacune des 200 machines.
Désolé du post un peu long mais j'ai essayé de résumer au mieux la situation.
Merci d'avance et bon weekend