Seite 1 von 1

Remote-Paketbereinigungs-Bearbeitung

Veröffentlicht: 27. März 2024 - 09:34 Uhr
von FlavienL
Guten Morgen,

Wir möchten ein Paket erstellen, das die Abhängigkeiten des Remote-Pakets auf jedem Rechner bereinigt/löscht
Sowohl Pakete im Depot als auch ältere:
Capture.PNG
Capture.PNG (23,23 KB) 9871 Mal angesehen
Falls das nicht möglich ist, haben wir festgestellt, dass die Checkbox:
Capture1.PNG
Capture1.PNG (26,75 KB) 9871 Mal angesehen
Es funktionierte nicht bei Mehrfachauswahl.

Wenn wir Pakete aus unseren Repositories entfernen und einige Maschinen Abhängigkeiten in ihrem Remote-Paket beibehalten haben, gibt das Remote-Paket einen Fehler zurück, weil es die Abhängigkeit nicht mehr finden kann.

Sehen Sie irgendwelche Massenaktionen, die ergriffen werden könnten?

Aufrichtig,
Flavien

Betreff: Bereinigung der Remote-Paketbearbeitung

Veröffentlicht: 28. März 2024 – 19:15 Uhr
von dcardon
Hallo Flavien,

Falls Sie noch kein „Bereinigungspaket“ haben, können Sie eines erstellen und hinzufügen

Code: Alle auswählen

def install():
    WAPT.uninstall('my_package_name')
Ein Aufräumpaket ist auch nützlich, um Rechner von anderer Software zu befreien, die „außerhalb von wapt“ installiert wurde und für deren Existenz es keinen Grund gibt.

Eine weitere Möglichkeit besteht darin, alle Rechner auszuwählen. Die Liste aller Pakete wird dann rechts angezeigt. Durch Rechtsklick auf den jeweiligen Paketnamen können Sie den Befehl „Deinstallieren“ oder „Vergessen“ ausführen. Achten Sie darauf, dass nur das gewünschte Paket ausgewählt ist!

Aufrichtig,

Denis

Betreff: Bereinigung der Remote-Paketbearbeitung

Veröffentlicht: 3. April 2024 - 11:23 Uhr
von FlavienL
Hallo Denis,

Ich habe mich versprochen, ich möchte keine Pakete deinstallieren, sondern nur alle Abhängigkeiten entfernen, die sich im Maschinenpaket (Remote-Paket) befinden.
Wir kümmern uns bereits um die effektive Entfernung von Paketen und Software, die auf den Rechnern installiert sind.

Ich möchte das genauer erklären; da wir viele Pakete auf unserem Hauptserver und noch viel mehr in unseren lokalen Repositories gespeichert haben
Jedes Jahr entfernen wir Pakete, die nicht mehr benötigt werden.
Wir verwenden OU-Pakete für globale Übertragungen unserer Basisstation und anschließend bestimmte Pakete auf eine einheitlichere Weise (Farm von 10 bis 100 Stationen) auf bestimmten Stationen.
Wenn wir die Repositories bereinigen, treten Fehler bei den Maschinenpaketen auf, weil sie die gelöschten Pakete nicht mehr finden können.
Der Trick wäre gewesen, ein Paket zu verteilen, das alle Pakete entfernt, die von der Maschine abhängig sind (und im Remote Package Editor angezeigt werden), bevor die Bereinigung durchgeführt wird.

Ich hoffe, ich habe mich verständlicher ausgedrückt.

Aufrichtig,
Flavien

PS-Skript zum Bereinigen der auf den Rechnern vorhandenen Pakete + Speichern des Verlaufs in einem Protokoll:

Code: Alle auswählen

# -*- coding: utf-8 -*-
from setuphelpers import *
import common
import datetime

chemin_log = "C:\PMF\RAPPINST\PAQUET_NETTOYAGE.log"

def install():

    w = common.Wapt()

    # On récupère ce qu'il y a dans le log

    lines = []

    if isfile(chemin_log):

        f = open(chemin_log, 'r')

        lines = f.readlines()

        f.close()

    # On écrit dans le log

    f = open(chemin_log, 'w')

    # trouve == True <=> au moins un paquet à supprimer a été trouvé

    trouve = False

    print("PAQUETS OBSOLETES EN COURS D'OUBLI : ")

    # On affiche la date du jour

    f.write("*--- " + format(datetime.datetime.now(), '%D %T') + " ---*\n\n")

    # Pour chaque paquet installé sur la machine

    for paquet in w.installed():

        # Si le paquet n'est pas disponible sur le dépot

        if paquet.package != w.host_uuid and not w.is_available(paquet.package):

            trouve = True

            print(paquet.package + " | " + paquet.version)

            # On l'ajoute à la liste des paquets à supprimer (sauf pour le paquet machine, voir condition ci-dessus)

            f.write("  " + paquet.package + " ;; " + paquet.version + '\n')

            # On l'oublie

            w.forget_packages(paquet.package)

    if not trouve:

        print("PMF à jour.")

        f.write("  > PMF à jour.\n")

    # Pour séparer les sections dans le journal :

    f.write("\n")

    # On écrit le reste du log à la suite -> le nettoyage le plus récent apparaît en haut.

    for ligne in lines:

        f.write(ligne)

    f.close()

def audit():

    return "OK"

Betreff: Bereinigung der Remote-Paketbearbeitung

Veröffentlicht: 29. April 2024 - 14:07 Uhr
von FlavienL
Hallo zusammen,

Ein kurzes Update zum Thema.

Unsere Idee ist es, die "depends" aus der Maschinenpaket-Steuerungsdatei entfernen zu können:
Capture.PNG
Capture.PNG (39,37 KB) 8828 Mal angesehen
Vielen Dank für Ihren Rat.

Aufrichtig,
FL

Betreff: Bereinigung der Remote-Paketbearbeitung

Veröffentlicht: 30. April 2024 - 9:50 Uhr
von jpele
Hallo,
könnten Sie sich bitte an unseren telefonischen Support wenden, damit wir Ihnen bestmöglich helfen können? Ich möchte Ihre Bedürfnisse genau verstehen, bevor ich etwas Falsches schreibe.

Mit freundlichen Grüßen,
Jimmy

Betreff: Bereinigung der Remote-Paketbearbeitung

Veröffentlicht: 3. Mai 2024 - 15:58 Uhr
von dcardon
Hallo Flavien,

falls das Problem nur wenige Pakete betrifft, kannst du mehrere/alle Rechner auswählen und mit der rechten Maustaste klicken und „Mehrere Rechner bearbeiten“ wählen. Aktiviere dann „Abhängigkeiten entfernen“, wähle die zu entfernenden Abhängigkeiten aus und klicke auf OK.

Viele Grüße,

Denis