Página 1 de 1
Modificar el archivo de control del paquete de la máquina
Publicado: 30 de abril de 2024 - 8:42 a. m.
por Carla Scardigli
Buen día,
Me gustaría poder modificar el archivo "control" del paquete de la máquina dentro de un paquete WAPT.
Por ahora puedo mostrarlo.
Aquí está el código que lo muestra:
Código: Seleccionar todo
def install():
w = common.Wapt()
package = PackageEntry(w.host_uuid)
# Récupère les fichiers control de tous les paquets présent sur la machine
package_version = package.get("package_uuid")
l = w.list()
# Parcours ces fichiers
for elt in l:
# Si le nom du paquet est celui du paquet machine on l'affiche
if elt["package"] == w.host_uuid:
print(elt)
Este código muestra todo el contenido del archivo "control" en el paquete de la máquina.
Probé esto:
Este código muestra el archivo "control" con la sección "depende" vacía, pero este cambio no se guarda.
Tampoco pude encontrar dónde está almacenado este archivo en la máquina.
¿Tienes alguna idea de cómo hacerlo?
Re: Modificar el archivo de control del paquete de la máquina
Publicado: 30 de abril de 2024 - 11:01 a. m.
por sfonteneau
Hola,
no entiendo qué intentas hacer.
Parece que quieres modificar un paquete de máquina en WAPT.install.
Sin embargo, la máquina que instalará el paquete no tiene la clave privada necesaria para firmarlo (afortunadamente), ni tampoco tiene permisos para subir paquetes (afortunadamente).
En mi opinión, probablemente podamos sugerirte alguna solución, pero necesitarías explicarnos el contexto exacto y el propósito de lo que quieres hacer.
Re: Modificar el archivo de control del paquete de la máquina
Publicado: 3 de mayo de 2024 - 12:05 p. m.
por Carla Scardigli
Buen día,
Esta solicitud está relacionada con la siguiente solicitud:
viewtopic.php?t=3833
Nos gustaría que cuando un paquete haya pasado exitosamente por la máquina (
Estado OK) un código
elimina la dependencia del paquete de la máquina.
El script que realizaría esta eliminación podría agregarse a
la auditoría (Por ejemplo)
Porque gestionamos una cantidad bastante grande de paquetes y no es necesario tener docenas de paquetes dependientes.
Nuestra idea era entonces eliminar este paquete (su nombre) del "
depende"del archivo"
control" del paquete de la máquina (nombre del paquete = uuid)
Tenemos esto en el archivo de control del paquete de la máquina:
Después de ejecutar el código, nos gustaría tener esto:
(parte "
depende" vacío)
Como se explicó anteriormente, tenemos un código que nos permite
mostrar este archivo "
control"pero no podemos cambiarlo.".
¿Cómo podemos hacerlo?
¿Tienes alguna otra idea para eliminar esta dependencia?
Re: Modificar el archivo de control del paquete de la máquina
Publicado: 3 de mayo de 2024 - 15:33
por dcardon
Hola Carla,
el paquete de la máquina debe estar firmado, por lo que se requiere una clave de firma para modificar el archivo de control del paquete. La máquina no tiene una clave, por lo que no puede modificar el archivo de control porque no se puede firmar (ni cargar), y por lo tanto, el paquete modificado será inútil.
La modificación del paquete de la máquina se puede realizar desde la consola de administración (que tiene una clave de firma) o con un script automatizado en el servidor, preferiblemente usando una clave que no sea de firma de código.
Dicho esto, ¿podrías aclarar tus necesidades? Que el paquete permanezca asignado a la máquina permite actualizaciones automáticas de la aplicación o su reinstalación si se eliminó accidentalmente. ¿Deseas eliminar todas las dependencias de un paquete de máquina o solo un paquete que no debería permanecer allí?
Atentamente,
Denis
Re: Modificar el archivo de control del paquete de la máquina
Publicado: 6 de mayo de 2024 - 08:13
por Carla Scardigli
Hola,
la desinstalación accidental es prácticamente imposible en nuestros procesos.
Necesitamos poder eliminar todas las dependencias del paquete `machine`. Cuando limpiamos nuestro repositorio, los paquetes que dependen del paquete `machine` devuelven un error.
Gracias por ayudarnos a encontrar una solución.
Atentamente,