refs #631 - Modify some scripts and API

pull/1/head^2
Gerardo GIl Elizeire 2024-11-11 12:22:14 +01:00
parent 5c233f6c11
commit 5e56b83f46
5 changed files with 24 additions and 14 deletions

View File

@ -502,15 +502,25 @@ def delete_image(imageId):
# Evaluamos los parámetros obtenidos, para construir la llamada al script, o para devover un error si no se ha encontrado la imagen: # Evaluamos los parámetros obtenidos, para construir la llamada al script, o para devover un error si no se ha encontrado la imagen:
if param_dict: if param_dict:
if 'subdir' in param_dict: if 'subdir' in param_dict:
if method == "trash": if method == "permanent":
cmd = ['sudo', 'python3', f"{script_path}/deleteImage.py", f"{param_dict['subdir']}/{param_dict['name']}.{param_dict['extension']}", '-p']
elif method == "trash":
cmd = ['sudo', 'python3', f"{script_path}/deleteImage.py", f"{param_dict['subdir']}/{param_dict['name']}.{param_dict['extension']}"] cmd = ['sudo', 'python3', f"{script_path}/deleteImage.py", f"{param_dict['subdir']}/{param_dict['name']}.{param_dict['extension']}"]
else: else:
cmd = ['sudo', 'python3', f"{script_path}/deleteImage.py", f"{param_dict['subdir']}/{param_dict['name']}.{param_dict['extension']}", '-p'] return jsonify({
"success": False,
"error": "Incorrect method (must be 'permanent' or 'trash')"
}), 400
else: else:
if method == "trash": if method == "permanent":
cmd = ['sudo', 'python3', f"{script_path}/deleteImage.py", f"{param_dict['name']}.{param_dict['extension']}", '-p']
elif method == "trash":
cmd = ['sudo', 'python3', f"{script_path}/deleteImage.py", f"{param_dict['name']}.{param_dict['extension']}"] cmd = ['sudo', 'python3', f"{script_path}/deleteImage.py", f"{param_dict['name']}.{param_dict['extension']}"]
else: else:
cmd = ['sudo', 'python3', f"{script_path}/deleteImage.py", f"{param_dict['name']}.{param_dict['extension']}", '-p'] return jsonify({
"success": False,
"error": "Incorrect method (must be 'permanent' or 'trash')"
}), 400
else: else:
return jsonify({ return jsonify({
"success": False, "success": False,

View File

@ -224,10 +224,10 @@ def main():
# Evaluamos la cantidad de barras que hay en la ruta de la imagen, para diferenciar entre imágenes "normales" y basadas en OU # Evaluamos la cantidad de barras que hay en la ruta de la imagen, para diferenciar entre imágenes "normales" y basadas en OU
# (y llamamos a la función correspondiente para eliminarla): # (y llamamos a la función correspondiente para eliminarla):
if file_path.count('/') == 4: if file_path.count('/') == 5:
print("Deleting normal image...") print("Deleting normal image...")
delete_normal_image(file_path, method, extensions) delete_normal_image(file_path, method, extensions)
elif file_path.count('/') == 5: elif file_path.count('/') == 6:
print("Deleting OU based image...") print("Deleting OU based image...")
delete_ou_image(file_path, method, extensions) delete_ou_image(file_path, method, extensions)

View File

@ -145,10 +145,10 @@ def export_image(file_path, remote_host, remote_user):
except IOError: except IOError:
print("As expected, image doesn't exist on remote repository.") print("As expected, image doesn't exist on remote repository.")
# Evaluamos si la ruta de la imagen tiene 5 barras, en cuyo caso corresponderá a una imagen basada en OU, # Evaluamos si la ruta de la imagen tiene 6 barras, en cuyo caso corresponderá a una imagen basada en OU,
# y almacenamos el nombre del directorio correspondiente a la OU: # y almacenamos el nombre del directorio correspondiente a la OU:
if file_path.count('/') == 5: if file_path.count('/') == 6:
ou_subdir = file_path.split('/')[4] ou_subdir = file_path.split('/')[5]
# Comprobamos si el directorio de OU existe en el equipo remoto, y en caso contrario lo creamos: # Comprobamos si el directorio de OU existe en el equipo remoto, y en caso contrario lo creamos:
try: try:
sftp_client.stat(f"{repo_path}{ou_subdir}") sftp_client.stat(f"{repo_path}{ou_subdir}")

View File

@ -195,10 +195,10 @@ def main():
remote_host = sys.argv[2] remote_host = sys.argv[2]
remote_user = sys.argv[3] remote_user = sys.argv[3]
# Evaluamos si la ruta de la imagen tiene 5 barras, en cuyo caso corresponderá a una imagen basada en OU, # Evaluamos si la ruta de la imagen tiene 6 barras, en cuyo caso corresponderá a una imagen basada en OU,
# y almacenamos el nombre del directorio correspondiente a la OU: # y almacenamos el nombre del directorio correspondiente a la OU:
if file_path.count('/') == 5: if file_path.count('/') == 6:
ou_subdir = file_path.split('/')[4] ou_subdir = file_path.split('/')[5]
# Si no existe un directorio correspondiente a la OU en el repo local, lo creamos: # Si no existe un directorio correspondiente a la OU en el repo local, lo creamos:
if not os.path.exists(f"{repo_path}{ou_subdir}"): if not os.path.exists(f"{repo_path}{ou_subdir}"):
os.mkdir(f"{repo_path}{ou_subdir}", 0o755) os.mkdir(f"{repo_path}{ou_subdir}", 0o755)

View File

@ -176,10 +176,10 @@ def main():
# Evaluamos la cantidad de barras que hay en la ruta de la imagen, para diferenciar entre imágenes "normales" y basadas en OU # Evaluamos la cantidad de barras que hay en la ruta de la imagen, para diferenciar entre imágenes "normales" y basadas en OU
# (y llamamos a la función correspondiente para recuperarla): # (y llamamos a la función correspondiente para recuperarla):
if file_path.count('/') == 4: if file_path.count('/') == 5:
print("Recovering normal image...") print("Recovering normal image...")
recover_normal_image(file_path, extensions) recover_normal_image(file_path, extensions)
elif file_path.count('/') == 5: elif file_path.count('/') == 6:
print("Recovering OU based image...") print("Recovering OU based image...")
recover_ou_image(file_path, extensions) recover_ou_image(file_path, extensions)