Para empezar, aquí hay algo de información sobre la infraestructura:
- Versión de WAPT instalada: 1.5
- Sistema operativo del servidor: Linux Debian 9 Stretch
- Sistema operativo de la máquina de administración/creación de paquetes: Windows 7
- Un servidor WAPT externo y dos repositorios locales adicionales en cada sitio
Mi problema:
Actualmente estoy implementando mi configuración wapt-get.ini usando un paquete
Código: Seleccionar todo
# -*- 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)Sin embargo, después de realizar pruebas, me di cuenta de que era necesario reiniciar el servicio, de lo contrario la recuperación de otros paquetes se realiza en el repositorio del servidor externalizado, por lo tanto, a través de HTTP.
El siguiente comando me permite verificar esto:
Código: Seleccionar todo
wapt-get show "paquet"Intenté agregar este pequeño fragmento de código a mi paquete:
Código: Seleccionar todo
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)Tengo la impresión de que mi servicio se ha reiniciado pero todavía no estoy recuperando los paquetes en el repositorio local.
Si reinicio manualmente el servicio se soluciona el problema, pero no puedo permitirme ir a cada una de las 200 máquinas.
Perdón por el post tan largo, pero intenté resumir la situación lo mejor que pude.
Gracias de antemano y que tengas un buen fin de semana
