Paketerstellung: Test des Benutzerteils

Hallo zusammen,

ich habe eine Frage zur manuellen Paketerstellung über den neo42 Package Config Editor und zum anschließenden Testen.

In meinem konkreten Fall geht es darum, im Abschnitt CustomInstallUserPartEnd eine Datei in das Benutzerverzeichnis $envAppData\Software\settings.json zu kopieren.

Hierfür verwende ich den folgenden Befehl:
Copy-File -Path "$dirSupportFiles\settings.json" -Destination $envAppData\Software\settings.json

In der neo42PackageConfig.json habe ich die Werte wie folgt gesetzt:

„UserPartOnInstallation“: true,
„UserPartOnUninstallation“: false,

Die Deploy-Application.ps1 habe ich mit dem Parameter InstallUserPart ausgeführt. Nun erhalte ich jedoch folgende Fehlermeldung:

[Copy-File] :: Failed to copy file(s) in path [C:\neoPackage\Hersteller\Software\1.0\SupportFiles\settings.json] to destination [C:\WINDOWS\system32\config\systemprofile\AppData\Roaming\Software\settings.json].

Das Problem ist, dass er die Quelle unter SupportFiles erwartet, obwohl sich die Datei eigentlich unter SupportFiles\User befindet.

Wenn ich die Dokumentation im Abschnitt „ActiveSetup und nutzerspezifische Skriptausführung“ richtig verstehe, soll man jedoch die Variable $dirSupportFiles verwenden und das Skript ergänzt im Benutzerteil den Ordner User automatisch.

Auch wenn ich das Skript nicht im Systemkontext ausführe, erhalte ich dieselbe Fehlermeldung.
Kann mir jemand sagen, was ich hier übersehe bzw. falsch mache?

Gruß

Hallo @hartmann ,
bei der Installation im Maschinenteil, wird die unter SupportFiles/User abgelegte Datei in das App Verzeichnis des Paket für den UserPart in den SupportfilesOrdner kopiert. Wenn dann dort die Installation mit TriggerUserPart ausgeführt wird, sollte es funktionieren.
Pfad wäre dann vermutlich folgender:
c:\ProgramData\neo42Pkgs\Hersteller\Software\Version\User\Deploy-Application.ps1.
Da findet man dann auch unter SupportFiles die genannte json Datei

Gruß Holger

Hallo @HSN.neo42,

danke für die Rückmeldung, aber leider verstehe ich es noch nicht ganz.

Auf meiner Paketierungsmaschine führe ich über VSCode folgenden Befehl aus:

PS C:\Packages> & „C:\neoPackage\Hersteller\Software\1.0\Deploy-Application.ps1“

Die Software wird installiert, der Benutzerteil wird jedoch nicht ausgeführt.

PS C:\Packages> & „C:\neoPackage\Hersteller\Software\1.0\Deploy-Application.ps1“ TriggerInstallUserPart

Hier passiert nichts.

PS C:\Packages> & „C:\neoPackage\Hersteller\Software\1.0\Deploy-Application.ps1“ InstallUserPart

Der Benutzerteil wird zwar ausgeführt, allerdings wird $dirSupportFiles auf
C:\neoPackage\Hersteller\Software\1.0\SupportFiles anstelle von SupportFiles\User aufgelöst.

Meine Frage: Wie kann ich den Benutzerteil auf der Paketierungsmaschine korrekt testen, sodass $dirSupportFiles richtig auf SupportFiles\User verweist?

Gruß

Die Frage wurde mir von @HSN.neo42 in einem Videocall erläutert. :slightly_smiling_face: