[GELÖST] Paketbereitstellungsfehler

Fragen zu WAPT-Paketen / Anfragen und Hilfe bezüglich WAPT-Paketen.
Forumregeln
Community-Forumregeln
* Englischer Support auf www.reddit.com/r/wapt
* Französischer Community-Support ist in diesem Forum verfügbar.
* Bitte kennzeichnen Sie gelöste Themen mit [GELÖST].
* Bitte bearbeiten Sie keine Themen, die mit [GELÖST] markiert sind. Erstellen Sie stattdessen ein neues Thema und verweisen Sie auf das alte.
* Geben Sie die installierte WAPT-Version, die vollständige Versionsnummer und die Build-Nummer (2.2.1.11957 / 2.2.2.12337 / usw.) sowie die Enterprise-/Discovery-Edition an.
* Versionen 1.8.2 und älter werden nicht mehr unterstützt. Fragen zu Version 1.8.2 werden nur beantwortet, wenn sie sich auf ein Upgrade auf eine unterstützte Version (2.1, 2.2 usw.) beziehen.
* Geben Sie das Server-Betriebssystem (Linux/Windows) und die Version (Debian Buster/Bullseye – CentOS 7 – Windows Server 2012/2016/2019) an.
* Geben Sie gegebenenfalls das Betriebssystem des Administrations-/Paketerstellungsrechners und des Rechners mit dem problematischen Agenten an (Windows 7/10/11/Debian 11/etc.).
* Vermeiden Sie es, mehrere Fragen in einem Thema zu stellen, da diese sonst möglicherweise ignoriert werden. Falls mehrere Themen relevant sind, erstellen Sie bitte separate Themen, vorzugsweise nacheinander und nicht gleichzeitig (d. h. vermeiden Sie Spam im Forum).
* Fügen Sie Code-Snippets, Screenshots und andere Bilder direkt in Ihren Beitrag ein. Links zu Pastebin, Bitly und anderen Drittanbieterseiten werden systematisch entfernt.
* Wie in jedem Community-Forum erfolgt die Unterstützung freiwillig durch die Mitglieder. Für kommerziellen Support kontaktieren Sie bitte den Vertrieb von Tranquil IT unter +44 2 40 97 57 55.
Scud
Nachrichten: 27
Anmeldung: 23. März 2020 – 15:37 Uhr

23. März 2020 – 16:02 Uhr

Hallo,
ich habe einen WAPT-Server eingerichtet und versuche, eine .exe-Datei mit Parametern, die über Python übergeben werden, bereitzustellen.
Genauer gesagt, verteile ich owncloud.exe und habe Code geschrieben, der automatisch eine .cfg-Datei ausfüllt, sodass Benutzer nur noch ihre Passwörter eingeben müssen.
In der Serverkonsole funktioniert alles einwandfrei. Ich kann das Programm installieren und deinstallieren. Auch die Paketerstellung klappt problemlos. Sobald ich es jedoch einem Benutzer bereitstelle, erhalte ich eine Fehlermeldung.

Die Fehlermeldung und ein Screenshot der verwendeten WAPT-Version sind beigefügt.
Mein Server läuft unter Windows Server 2012 R2 Datacenter. Mein
Administrationsrechner verwendet Windows 10 Pro.


Falls Sie meinen Code benötigen, stelle ich ihn Ihnen gerne zur Verfügung. Vielleicht ist die Fehlermeldung aber auch schon aussagekräftig genug.

Vielen Dank im Voraus.
Anlagen
Wapt.7z
(197,37 KB) 272 Mal heruntergeladen
Zuletzt bearbeitet von Scud am 07. April 2020 um 11:20 Uhr, 1 Mal bearbeitet.
Benutzeravatar
Sfonteneau
WAPT-Experte
Nachrichten: 2322
Registriert: 10. Juli 2014 - 23:52 Uhr
Kontakt:

24. März 2020 - 09:23 Uhr

Hallo,

uns fehlt die setup.py-Datei. :(

Könnten Sie bitte auch die Fehlermeldung posten (klicken Sie auf den Rechner mit dem Fehler, dann auf das Paket mit dem Fehler)? Die Paketfehlermeldung finden Sie unten rechts im Bedienfeld.
Scud
Nachrichten: 27
Anmeldung: 23. März 2020 – 15:37 Uhr

24. März 2020 - 12:13 Uhr

Hallo,
vielen Dank für Ihre Antwort.
Ich habe meinen Code heute Morgen leicht angepasst, um die neueste Version von Owncloud (im .msi-Format) zu verwenden.
Installation und Deinstallation funktionieren jetzt, aber meine Einstellungen werden nicht angewendet. Ich vermute, es liegt ein Kodierungsfehler vor, obwohl meine Umgebung und Konfiguration korrekt auf UTF-8 eingestellt sind.

Ich habe setup.py angehängt
(und die Fehlermeldung als .csv-Datei hinzugefügt).

Mein Skript soll die benötigten Informationen nach der Owncloud-Installation vorausfüllen.
Das heißt, den Benutzernamen, den lokalen Speicherpfad und die Daten in eine .cfg-Datei in einem Windows-Ordner schreiben.

Lokal funktioniert es mit Python und den Installations- und Deinstallationsfunktionen. Wenn ich es jedoch auf einem anderen Rechner (derzeit in einer virtuellen Maschine) ausführe, scheint es nicht zu funktionieren.

Vielen Dank für Ihre Hilfe.
Anlagen
GridHostTasksErrors00000.7z
(1,11 KB) 327 Mal heruntergeladen
setup.7z
(1,01 KB) 335 Mal heruntergeladen
Benutzeravatar
Sfonteneau
WAPT-Experte
Nachrichten: 2322
Registriert: 10. Juli 2014 - 23:52 Uhr
Kontakt:

24. März 2020 – 16:07 Uhr

Wenn Sie mit der Benutzerumgebung interagieren möchten, müssen Sie session_setup verwenden:

https://www.wapt.fr/fr/doc/wapt-create- ... index.html

Ich habe deinen Code etwas überarbeitet:

Code: Alle auswählen

# -*- 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)
Scud
Nachrichten: 27
Anmeldung: 23. März 2020 – 15:37 Uhr

24. März 2020 – 17:08 Uhr

Vielen Dank für Ihre Antwort.
Ihr Code ist deutlich übersichtlicher als meiner, aber entschuldigen Sie bitte, ich lerne Python erst seit zwei Wochen. :D
Ich glaube allerdings nicht, dass die Dateien am richtigen Ort gespeichert oder überhaupt befüllt werden.

Mir schwirrt gerade der Kopf, deshalb höre ich für heute Abend mit dem Programmieren auf. Ich werde morgen Tests durchführen und Ihnen einen ausführlichen Bericht zukommen lassen.

Nochmals vielen Dank
Benutzeravatar
Sfonteneau
WAPT-Experte
Nachrichten: 2322
Registriert: 10. Juli 2014 - 23:52 Uhr
Kontakt:

25. März 2020 - 11:49 Uhr

Dies ist eine Sitzungseinrichtung.

Die Sitzungseinrichtung beginnt daher, wenn die Sitzung geöffnet wird.
Scud
Nachrichten: 27
Anmeldung: 23. März 2020 – 15:37 Uhr

26. März 2020 - 09:38 Uhr

Hallo,
ich muss einen Fehler gemacht haben, denn es funktioniert nicht. Ich habe meinen gesamten Code durch Ihren ersetzt, aber es wird nichts in die .cfg-Datei geschrieben.
In Ihrem Code finde ich die Definition der Variable `current_user` nicht.

Da es sich um eine bekannte Funktion von Wapt handelt, muss ich sie nicht im Code einbinden, oder?

Auch bei der Variable `session_setup` verstehe ich nicht, wie sie automatisch alle Variablen (Pfade usw.) abruft und in die Datei schreibt. Mein Code war zwar etwas „einfacher“, aber für einen Anfänger leichter verständlich. ;)

Vielen Dank für Ihre Hilfe.
Benutzeravatar
Sfonteneau
WAPT-Experte
Nachrichten: 2322
Registriert: 10. Juli 2014 - 23:52 Uhr
Kontakt:

26. März 2020 - 12:50 Uhr

Bei mir funktioniert es aber

Und ganz oben im Skript importieren wir setuphelpers:

Code: Alle auswählen

from setuphelpers import *
Dies erklärt, warum wir bereits viele Dinge zur Verfügung haben; pyscripter bietet eine Autovervollständigung, die Ihnen dabei hilft.

Für die verschiedenen Dinge, die man verwenden kann:
- Die Funktion `get_current_user()` befindet sich in setuphelpers und gibt den aktuellen Benutzer zurück
- install_msi_if_needed befindet sich in setuphelpers und ermöglicht die einfache Deinstallation einer MSI-Datei
- os.environ.get('HOMEPATH') entspricht ungefähr dem Wert von %HOMEPATH%
- `makepath` befindet sich in setuphelpers und ermöglicht es Ihnen, diesen `makepath('c:','toto','tata')` in diesen `'c:\toto\tata'` umzuwandeln
- mkdirs befindet sich in setuphelpers, erstellt einen Ordner
- url_owncloud ist am Anfang von setup.py definiert
- inside_owncloud_file repräsentiert den Inhalt unserer Datei mit den verschiedenen Variablen (%s) https://python.developpez.com/cours/Div ... trings.php
Scud
Nachrichten: 27
Anmeldung: 23. März 2020 – 15:37 Uhr

26. März 2020 – 15:19 Uhr

Ich habe gerade einen weiteren Test durchgeführt.
Ich habe das Paket aus meinem privaten Repository gelöscht (und festgestellt, dass man es jedes Mal löschen muss, wenn man denselben Namen beibehält).
Nachdem das Repository leer war, habe ich es mithilfe Ihres Codes neu erstellt. Das Ergebnis ist dasselbe. Owncloud lässt sich problemlos installieren und deinstallieren.
Ich schließe die Sitzung (oder starte sie sogar neu) und erstelle keinen Ordner, sodass die .cfg-Datei nicht befüllt wird.
Benutzeravatar
Sfonteneau
WAPT-Experte
Nachrichten: 2322
Registriert: 10. Juli 2014 - 23:52 Uhr
Kontakt:

26. März 2020 – 15:22 Uhr

In der Eingabeaufforderung können Sie Folgendes ausführen:

Code: Alle auswählen

wapt-get session-setup nomdevotrepaquet -f
Gesperrt