refs #2506 -- Rearrange parameters, add ability to pass branch to oggit

Vadim Trochinsky 2025-07-31 10:01:06 +02:00 committed by Vadim Troshchinskiy
parent c60594a212
commit 86468a99fd
1 changed files with 41 additions and 37 deletions

View File

@ -361,22 +361,23 @@ class ogAdmClientWorker (ogLiveWorker):
return self.respuestaEjecucionComando (cmd, herror, ids)
def do_CrearImagenGit (self, post_params):
for k in ['dsk', 'par', 'nci', 'ipr', 'nfn', 'ids']:
for k in ['nfn', 'ids', 'disk', 'partition', 'repo']:
if k not in post_params:
logger.error (f'required parameter ({k}) not in POST params')
return {}
dsk = post_params['dsk'] ## Disco
par = post_params['par'] ## Número de partición
nci = post_params['nci'] ## Nombre canónico de la imagen
ipr = post_params['ipr'] ## Ip del repositorio
nfn = post_params['nfn']
ids = post_params['ids']
disk = post_params['disk'] ## Numero de disco
partition = post_params['partition'] ## Numero de partición
repo = post_params['gitrepo'] ## URL a repositorio
self.muestraMensaje (7)
try:
res = self.InventariandoSoftware (dsk, par, 'InventarioSoftware') ## Crea inventario Software previamente
res = self.InventariandoSoftware (disk, partition, 'InventarioSoftware') ## Crea inventario Software previamente
except:
logger.warning ('Error al ejecutar el comando')
return {}
@ -385,7 +386,7 @@ class ogAdmClientWorker (ogLiveWorker):
self.muestraMensaje (2)
inv_sft = res['contents']
try:
self.interfaceAdmin (nfn, [dsk, par, nci, ipr])
self.interfaceAdmin (nfn, ["--disk", disk, "--partition", partition, "--repo", repo])
self.muestraMensaje (9)
herror = 0
except:
@ -401,34 +402,36 @@ class ogAdmClientWorker (ogLiveWorker):
cmd = {
'nfn': 'RESPUESTA_CrearImagenGit',
'dsk': dsk, ## Número de disco
'par': par, ## Número de partición de donde se creó
'ipr': ipr, ## Ip del repositorio donde se alojó
'inv_sft': inv_sft
'disk' : disk, ## Número de disco
'partition': partition, ## Número de partición de donde se creó
'repo' : repo, ## Ip del repositorio donde se alojó
'inv_sft' : inv_sft
}
return self.respuestaEjecucionComando (cmd, herror, ids)
def do_ModificarImagenGit (self, post_params):
for k in ['dsk', 'par', 'ipr', 'nfn', 'ids', 'branch', 'options', 'msg']:
for k in ['nfn', 'ids', 'disk', 'partition', 'repo', 'branch', 'options', 'msg']:
if k not in post_params:
logger.error (f'required parameter ({k}) not in POST params')
return {}
dsk = post_params['dsk'] ## Disco
par = post_params['par'] ## Número de partición
ipr = post_params['ipr'] ## Ip del repositorio
nfn = post_params['nfn']
ids = post_params['ids']
brn = post_params['branch'] # Rama nueva a crear
opt = post_params['options'] # Rama nueva a crear
disk = post_params['disk'] ## Disco
partition = post_params['partition'] ## Número de partición
repo = post_params['repo'] ## Ip del repositorio
branch = post_params['branch'] ## Rama nueva a crear
options = post_params['options'] ## Opciones (force push, etc)
msg = post_params['msg'] ## Commit message
msg = post_params['msg'] ## Mensaje de commit
self.muestraMensaje (7)
try:
res = self.InventariandoSoftware (dsk, par, 'InventarioSoftware') ## Crea inventario Software previamente
res = self.InventariandoSoftware (disk, partition, 'InventarioSoftware') ## Crea inventario Software previamente
except:
logger.warning ('Error al ejecutar el comando')
return {}
@ -437,7 +440,7 @@ class ogAdmClientWorker (ogLiveWorker):
self.muestraMensaje (2)
inv_sft = res['contents']
try:
self.interfaceAdmin (nfn, [dsk, par, ipr, brn, opt, msg])
self.interfaceAdmin (nfn, ["--disk", disk, "--partition", partition, "--repo", repo, "--branch", branch, "--options", options, "--msg", msg])
self.muestraMensaje (9)
herror = 0
except:
@ -453,9 +456,9 @@ class ogAdmClientWorker (ogLiveWorker):
cmd = {
'nfn': 'RESPUESTA_ModificarImagenGit',
'dsk': dsk, ## Número de disco
'par': par, ## Número de partición de donde se creó
'ipr': ipr, ## Ip del repositorio donde se alojó
'disk' : disk, ## Número de disco
'partition' : partition, ## Número de partición de donde se creó
'repo' : repo, ## Ip del repositorio donde se alojó
'inv_sft': inv_sft
}
return self.respuestaEjecucionComando (cmd, herror, ids)
@ -508,27 +511,28 @@ class ogAdmClientWorker (ogLiveWorker):
return self.respuestaEjecucionComando (cmd, herror, ids)
def do_RestaurarImagenGit (self, post_params):
for k in ['dsk', 'par', 'ipr', 'nci', 'ptc', 'nfn', 'ids', 'ref']:
for k in ['nfn', 'ids', 'disk', 'partition', 'repo', 'commit']:
if k not in post_params:
logger.error (f'required parameter ({k}) not in POST params')
return {}
dsk = post_params['dsk']
par = post_params['par']
ipr = post_params['ipr']
nci = post_params['nci']
ptc = post_params['ptc'] ## Protocolo de clonación: Unicast, Multicast, Torrent
nfn = post_params['nfn']
ids = post_params['ids']
ref = post_params['ref'] ## Referencia de git a restaurar
nfn = post_params['nfn']
ids = post_params['ids']
disk = post_params['disk'] ## Numero de disco
partition = post_params['partition'] ## Numero de partición
repo = post_params['repo'] ## URL a repositorio
commit = post_params['commit'] ## Referencia de git a restaurar
branch = post_params['branch'] ## Referencia de git a restaurar, opcional
self.muestraMensaje (3)
try:
## the ptc.split() is useless right now, since interfaceAdmin() does ' '.join(params) in order to spawn a shell
## however we're going to need it in the future (when everything gets translated into python), plus it's harmless now. So let's do it
#self.interfaceAdmin (nfn, [dsk, par, nci, ipr, ptc])
self.interfaceAdmin (nfn, [dsk, par, nci, ipr, ref] + ptc.split())
create_args = ["--disk", disk, "--partition", partition, "--repo", repo, "--commit", commit]
if branch:
create_args = create_args + ["--branch", branch]
self.interfaceAdmin (nfn, create_args)
self.muestraMensaje (11)
herror = 0
except:
@ -544,8 +548,8 @@ class ogAdmClientWorker (ogLiveWorker):
cmd = {
'nfn': 'RESPUESTA_RestaurarImagenGit',
'dsk': dsk, ## Número de disco
'par': par, ## Número de partición
'disk' : disk, ## Número de disco
'partition': partition, ## Número de partición
'cfg': self.cfg2obj(cfg), ## Configuración de discos
}
return self.respuestaEjecucionComando (cmd, herror, ids)