Alte AppDir-Verzeichnisse löschen

Hallo, zusammen,

bei der Ausführung der neuen APD-Pakete möchte ich, dass unsere alten AppDir-Verzeichnisse gelöscht werden

Ich vermute, dass ich dies über das Skript „Add-ContentToCustomFunction.ps1“ machen kann.

Reicht es aus, wenn ich folgende Empirum-Befehle einfüge:

Deltree "%ProgramData%\Empirum\%DeveloperName%\%ProductName%"
Sleep 50
RMDIR "%ProgramData%\Empirum\%DeveloperName%"

Vielen Dank.

Hallo Silvio,

proprietären Empirum-Code in einem PowerShell-Skript auszuführen, wird nicht funktionieren, nein.

Allerdings habe ich noch ein Verständnisproblem:
Bei Paketen bei denen UninstallOld=false bzw. AskUninstallOld=0 gesetzt ist, räumt eigentlich unser „Setup.inf-Wrapper“ die alten Paket mit auf, sofern „DeveloperName“ und „ProductName“ sich nicht geändert haben.
Ist hingegen AskUninstallOld=1 gesetzt löst ja Empirum selber die Vorversion ab. Dann bleiben höchstens die Logs zurück.

Möchtest Du diese Logs bereinigen oder laufen die oben beschriebenen Prozesse nicht sauber?

Beste Grüße
Holger

Danke @HJT.neo42 für die Antwort.

Ja, es geht um die Verzeichnisse, in denen nur noch die Logs zu finden sind.

Hallo Silvio,

Dafür kannst Du in der tat die Add-ContentToCustomFunction.ps1 nutzen.
Wie in der Anleitung angegeben kannst Du damit den Inhalt eines eigenen Skripts, im Beispiel CustumCode.ps1 genannt, unseren Paketen hinzufügen, indem Du der entsprechenden Pipeline einen „Skript ausführen“-Task hinzufügst und den Task entsprechend konfigurierst.

In Deinem Fall würde ich aber auf keinen Fall „CustomBeginn“ für die Ausführung auswählen. „CustomInstallAndReinstallAndSoftMigrationEnd“ würde sich hier eher anbieten.
Deine CustumCode.ps1 könnte dann folgende Befehle enthalten:

Remove-Folder -Path "$env:ProgramData\Empirum\$($global:PackageConfig.AppVendor)\$($global:PackageConfig.AppName)"
Remove-NxtEmptyFolder -Path "$env:ProgramData\Empirum\$($global:PackageConfig.AppVendor)"

Mit besten Grüßen
Holger

1 „Gefällt mir“

Danke @HJT.neo42 für die schnelle Antwort.

Bei mir schreibt er den Code aber ganz oben in die Deploy-Application.ps1 - er ignoriert die Sektion.

Hast Du eine Idee, woran das liegen könnte?

Hallo Silvio,

hast Du es wie in der Anleitung in die Pipeline eingebunden oder es per Hand getestet?
Im letzten Fall würde das nämlich wegen der dann fehlenden Variablenbelegung passieren.

Gruß
Holger

Über die Pipeline.

Task: Skript ausführen
Skriptdatei: <Global.GeneralDirectory>\Add-ContentToCustomFunction.ps1
Argumente: -DEPLOYAPPLICATIONFILE „<PHASE.PACKAGEPATH><RUN.VERSION>\DEPLOY-APPLICATION.PS1“ -CONTENTFILE „<GLOBAL.GENERALDIRECTORY>\CustomFiles<Run.Packagename>\CUSTOMCODE_CleanUpOld.PS1“ -FUNCTIONNAME „CustomInstallAndReinstallAndSoftMigrationEnd“

Hallo @SilvioWeiss da scheint es ein Problem mit der aktuellen Version des Beispiel Scripts zu geben, wir schauen uns das an und werden das korrigieren.

1 „Gefällt mir“

Der Fehler sollte nun behoben sein, bitte das Script von Github erneut herunterladen und gern noch einmal zurückmelden ob es läuft wie erwartet @SilvioWeiss .

1 „Gefällt mir“

Es läuft nun wie erwartet - vielen Dank für die schnelle Lösung!

:+1:t2:

auch von mir vielen Dank, jetzt läuft es auch bei uns stabil.