Hola,
he configurado un servidor WAPT y estoy intentando desplegar un archivo .exe con parámetros enviados mediante Python.
Para ser más preciso, estoy desplegando owncloud.exe y he creado un código que rellena automáticamente un archivo .cfg para que los usuarios solo tengan que introducir sus contraseñas.
En la consola del servidor, todo funciona correctamente. Puedo instalar y desinstalar el programa. Genero el paquete sin problemas, PERO en cuanto lo implemento para un usuario, recibo un error.
Adjunto el mensaje de error y una captura de pantalla que muestra la versión de WAPT que estoy utilizando.
Mi servidor ejecuta Windows Server 2012 R2 Datacenter. Mi
máquina de administración es Windows 10 Pro.
Si necesitan que les proporcione mi código, no hay problema, pero quizás el mensaje de error les dé alguna pista sin abrumarlos con demasiada información.
Gracias de antemano.
[RESUELTO] Error de implementación del paquete
Reglas del foro
Reglas del foro de la comunidad
* Soporte en inglés en www.reddit.com/r/wapt
* El soporte de la comunidad en francés está disponible en este foro
* Por favor, anteponga [RESUELTO] al título del tema si está resuelto.
* Por favor, no edite un tema que esté etiquetado como [RESUELTO]. Abra un nuevo tema haciendo referencia al anterior.
* Especifique la versión de WAPT instalada, la versión completa y el número de compilación (2.2.1.11957 / 2.2.2.12337 / etc.), así como la edición Enterprise/Discovery.
* Las versiones 1.8.2 y anteriores ya no son compatibles. Las únicas preguntas aceptadas sobre la versión 1.8.2 están relacionadas con la actualización a una versión compatible (2.1, 2.2, etc.).
* Especifique el sistema operativo del servidor (Linux/Windows) y la versión (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Especifique el sistema operativo de la máquina de administración/creación de paquetes y de la máquina con el agente problemático, si corresponde (Windows 7/10/11/Debian 11/etc.).
* Evite hacer varias preguntas al abrir un tema, ya que podría ser ignorado. Si hay varios temas, ábralos por separado, preferiblemente uno tras otro y no todos a la vez (es decir, no sature el foro con spam).
* Incluya fragmentos de código, capturas de pantalla y otras imágenes directamente en la publicación. Los enlaces a Pastebin, Bitly y otros sitios de terceros serán eliminados sistemáticamente.
* Como en cualquier foro comunitario, el soporte es proporcionado voluntariamente por los miembros. Si necesita soporte comercial, puede comunicarse con el departamento de ventas de Tranquil IT al 02.40.97.57.55.
Reglas del foro de la comunidad
* Soporte en inglés en www.reddit.com/r/wapt
* El soporte de la comunidad en francés está disponible en este foro
* Por favor, anteponga [RESUELTO] al título del tema si está resuelto.
* Por favor, no edite un tema que esté etiquetado como [RESUELTO]. Abra un nuevo tema haciendo referencia al anterior.
* Especifique la versión de WAPT instalada, la versión completa y el número de compilación (2.2.1.11957 / 2.2.2.12337 / etc.), así como la edición Enterprise/Discovery.
* Las versiones 1.8.2 y anteriores ya no son compatibles. Las únicas preguntas aceptadas sobre la versión 1.8.2 están relacionadas con la actualización a una versión compatible (2.1, 2.2, etc.).
* Especifique el sistema operativo del servidor (Linux/Windows) y la versión (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Especifique el sistema operativo de la máquina de administración/creación de paquetes y de la máquina con el agente problemático, si corresponde (Windows 7/10/11/Debian 11/etc.).
* Evite hacer varias preguntas al abrir un tema, ya que podría ser ignorado. Si hay varios temas, ábralos por separado, preferiblemente uno tras otro y no todos a la vez (es decir, no sature el foro con spam).
* Incluya fragmentos de código, capturas de pantalla y otras imágenes directamente en la publicación. Los enlaces a Pastebin, Bitly y otros sitios de terceros serán eliminados sistemáticamente.
* Como en cualquier foro comunitario, el soporte es proporcionado voluntariamente por los miembros. Si necesita soporte comercial, puede comunicarse con el departamento de ventas de Tranquil IT al 02.40.97.57.55.
- Sfonteneau
- Experto en WAPT
- Mensajes: 2312
- Registrado: 10 de julio de 2014 - 23:52
- Contacto :
Hola,
nos falta el archivo setup.py.
¿Podrías también publicar el error (haz clic en la máquina con el error y luego en el paquete con el error)? El error del paquete se encuentra en el panel inferior derecho.
nos falta el archivo setup.py.
¿Podrías también publicar el error (haz clic en la máquina con el error y luego en el paquete con el error)? El error del paquete se encuentra en el panel inferior derecho.
Hola,
gracias por tu respuesta.
Esta mañana modifiqué ligeramente mi código para usar la última versión de Owncloud (en formato .msi).
Ahora, la instalación y desinstalación funcionan, pero no se aplican mis ajustes. Creo que me da un error de codificación, aunque mi entorno y mi configuración están correctamente configurados en UTF-8.
Adjunto setup.py
(y acabo de añadir el mensaje de error como un archivo .csv).
El objetivo de mi script es rellenar previamente la información solicitada tras la instalación de Owncloud:
el nombre de usuario, la ruta de almacenamiento local y escribir todo en un archivo .cfg en una carpeta de Windows.
Localmente, usando Python con las funciones install y remove, funciona. Pero cuando lo ejecuto en otra máquina (virtual por ahora), mi script no parece ejecutarse.
Gracias por tu ayuda.
gracias por tu respuesta.
Esta mañana modifiqué ligeramente mi código para usar la última versión de Owncloud (en formato .msi).
Ahora, la instalación y desinstalación funcionan, pero no se aplican mis ajustes. Creo que me da un error de codificación, aunque mi entorno y mi configuración están correctamente configurados en UTF-8.
Adjunto setup.py
(y acabo de añadir el mensaje de error como un archivo .csv).
El objetivo de mi script es rellenar previamente la información solicitada tras la instalación de Owncloud:
el nombre de usuario, la ruta de almacenamiento local y escribir todo en un archivo .cfg en una carpeta de Windows.
Localmente, usando Python con las funciones install y remove, funciona. Pero cuando lo ejecuto en otra máquina (virtual por ahora), mi script no parece ejecutarse.
Gracias por tu ayuda.
- Archivos adjuntos
-
- Errores de tareas del host de cuadrícula 00000.7z
- (1,11 KB) Descargado 307 veces
-
- configuración.7z
- (1,01 KB) Descargado 314 veces
- Sfonteneau
- Experto en WAPT
- Mensajes: 2312
- Registrado: 10 de julio de 2014 - 23:52
- Contacto :
Cuando desee interactuar con el entorno del usuario, debe utilizar session_setup:
https://www.wapt.fr/fr/doc/wapt-create- ... index.html
He reelaborado un poco tu código:
https://www.wapt.fr/fr/doc/wapt-create- ... index.html
He reelaborado un poco tu código:
Código: Seleccionar todo
# -*- coding: utf-8 -*-
from setuphelpers import *
import os
uninstallkey = []
url_owncloud = 'https://cloud.test.fr'
def install():
print('installing frej-owncloud')
install_msi_if_needed('ownCloud-2.6.1.msi')
def session_setup():
homeowncloud = makepath(os.environ.get('HOMEPATH'),'ownCloud')
owncloud_appdata = makepath(application_data(),'ownCloud')
fichiercfg = makepath(owncloud_appdata,'owncloud.cfg')
mkdirs(homeowncloud)
mkdirs(owncloud_appdata)
inside_owncloud_file = r"""[General]
clientVersion=2.6.1 (build 12992)
confirmExternalStorage=false
newBigFolderSizeLimit=500
optionalDesktopNotifications=true
showInExplorerNavigationPane=true
useNewBigFolderSizeLimit=false
[Accounts]
version=2
0\Folders\1\localPath=c:/Users/%s/ownCloud
0\url=%s
0\http_user=%s
0\user=%s""" % (get_current_user(),url_owncloud,get_current_user(),get_current_user())
with open(fichiercfg, "w") as fichier:
fichier.write(inside_owncloud_file)
Gracias por tu respuesta.
Tu código es mucho más limpio que el mío, pero disculpa, solo llevo dos semanas aprendiendo Python.
Sin embargo, creo que no está escribiendo los archivos en la ubicación correcta, ni siquiera rellenándolos.
Pero ahora mismo estoy un poco aturdido, así que dejo de programar por hoy. Mañana haré las pruebas y te daré un informe completo.
Gracias de nuevo
Tu código es mucho más limpio que el mío, pero disculpa, solo llevo dos semanas aprendiendo Python.
Sin embargo, creo que no está escribiendo los archivos en la ubicación correcta, ni siquiera rellenándolos.
Pero ahora mismo estoy un poco aturdido, así que dejo de programar por hoy. Mañana haré las pruebas y te daré un informe completo.
Gracias de nuevo
- Sfonteneau
- Experto en WAPT
- Mensajes: 2312
- Registrado: 10 de julio de 2014 - 23:52
- Contacto :
Esto es la configuración de la sesión.
Por lo tanto, la configuración de la sesión comienza cuando se abre la sesión.
Por lo tanto, la configuración de la sesión comienza cuando se abre la sesión.
Hola,
debo haber cometido un error porque no funciona. Reemplacé todo mi código con el tuyo, pero no escribe nada en el archivo .cfg.
Respecto a tu código, no veo dónde defines la variable `current_user`.
Como es una función conocida de Wapt, no necesito incluirla en el código, ¿verdad?
De igual manera, con la variable `session_setup`, tengo problemas para entender cómo recupera automáticamente todas las variables (rutas, etc.) y cómo escribe en el archivo. Mi código era más básico, pero más fácil de entender para un principiante.
Gracias por tu ayuda.
debo haber cometido un error porque no funciona. Reemplacé todo mi código con el tuyo, pero no escribe nada en el archivo .cfg.
Respecto a tu código, no veo dónde defines la variable `current_user`.
Como es una función conocida de Wapt, no necesito incluirla en el código, ¿verdad?
De igual manera, con la variable `session_setup`, tengo problemas para entender cómo recupera automáticamente todas las variables (rutas, etc.) y cómo escribe en el archivo. Mi código era más básico, pero más fácil de entender para un principiante.
Gracias por tu ayuda.
- Sfonteneau
- Experto en WAPT
- Mensajes: 2312
- Registrado: 10 de julio de 2014 - 23:52
- Contacto :
A mí me funciona
Y en la parte superior del script, importamos setuphelpers:
Esto explica por qué ya tenemos muchas cosas disponibles; Pyscripter ofrece autocompletado para ayudarte.
Para las diferentes cosas a utilizar:
- `get_current_user()` está en setuphelpers y recupera el usuario actual
- install_msi_if_needed está en setuphelpers, desinstalando fácilmente un MSI
- os.environ.get('HOMEPATH') es aproximadamente el valor de %HOMEPATH%
- `makepath` está en setuphelpers, te permite transformar este `makepath('c:','toto','tata')` en este `'c:\toto\tata'`
- mkdirs está en setuphelpers, crea una carpeta
- url_owncloud se define en la parte superior de setup.py
- inside_owncloud_file representa el contenido de nuestro archivo con las diferentes variables (%s) https://python.developpez.com/cours/Div ... trings.php
Y en la parte superior del script, importamos setuphelpers:
Código: Seleccionar todo
from setuphelpers import *Para las diferentes cosas a utilizar:
- `get_current_user()` está en setuphelpers y recupera el usuario actual
- install_msi_if_needed está en setuphelpers, desinstalando fácilmente un MSI
- os.environ.get('HOMEPATH') es aproximadamente el valor de %HOMEPATH%
- `makepath` está en setuphelpers, te permite transformar este `makepath('c:','toto','tata')` en este `'c:\toto\tata'`
- mkdirs está en setuphelpers, crea una carpeta
- url_owncloud se define en la parte superior de setup.py
- inside_owncloud_file representa el contenido de nuestro archivo con las diferentes variables (%s) https://python.developpez.com/cours/Div ... trings.php
Acabo de realizar otra prueba.
Eliminé el paquete de mi repositorio privado (y me di cuenta de que si se mantiene el mismo nombre, hay que eliminarlo tantas veces como se haya añadido).
Una vez vacío, recreé un paquete usando tu código. El resultado fue el mismo. Owncloud se instala y desinstala sin problemas.
Sin embargo, cierro la sesión (o incluso la reinicio) y no creo una carpeta, por lo que no se rellena el archivo .cfg.
Eliminé el paquete de mi repositorio privado (y me di cuenta de que si se mantiene el mismo nombre, hay que eliminarlo tantas veces como se haya añadido).
Una vez vacío, recreé un paquete usando tu código. El resultado fue el mismo. Owncloud se instala y desinstala sin problemas.
Sin embargo, cierro la sesión (o incluso la reinicio) y no creo una carpeta, por lo que no se rellena el archivo .cfg.
- Sfonteneau
- Experto en WAPT
- Mensajes: 2312
- Registrado: 10 de julio de 2014 - 23:52
- Contacto :
En un símbolo del sistema puedes ejecutar:
Código: Seleccionar todo
wapt-get session-setup nomdevotrepaquet -f