Wie kann ich den Arbeitsbereich in Jenkins bereinigen? Ich benutze AccuRev
als Versionskontrollwerkzeug.
Ich habe freestyle
Projekte in Jenkins erstellt.
jenkins
jenkins-plugins
accurev
Karthik
quelle
quelle
Wenn Sie es manuell bereinigen möchten, gibt es für mich mit meiner Version von Jenkins (anscheinend wurde kein zusätzliches Plugin installiert, aber wer weiß) einen Link "Arbeitsbereich" in der linken Spalte. Klicken Sie auf Ihr Projekt. dann auf "Arbeitsbereich", dann erscheint ein Link "Aktuellen Arbeitsbereich löschen" darunter in der linken Spalte.
quelle
Neben den oben genannten Lösungen gibt es einen "GEMEINSAMEN" Weg - den größten Speicherplatzverbraucher direkt vom Linux-Computer zu löschen. Sie können die folgenden Schritte ausführen:
quelle
Plugin zur Bereinigung des Arbeitsbereichs
In Jenkins Datei hinzufügen
Dadurch wird der Arbeitsbereich nach Abschluss des Builds gelöscht
quelle
cleanWs()
war aber auf der Plugin-Landingpage nicht als Syntax zum Hinzufügen zu meinem Plugin vorhandenJenkinsfile
.WICHTIG: Es ist sicher, den Arbeitsbereich für einen bestimmten Jenkins-Job zu entfernen, solange der Job gerade nicht ausgeführt wird!
HINWEIS: Ich gehe davon aus, dass Ihr
$JENKINS_HOME
Standardwert festgelegt ist:/var/jenkins_home
.Bereinigen Sie einen Arbeitsbereich
rm -rf /var/jenkins_home/workspaces/<workspace>
Bereinigen Sie alle Arbeitsbereiche
rm -rf /var/jenkins_home/workspaces/*
Bereinigen Sie alle Arbeitsbereiche mit wenigen Ausnahmen
Dieser verwendet grep, um eine Whitelist zu erstellen:
Bereinigen Sie die 10 größten Arbeitsbereiche
Dieser verwendet du und sort, um Arbeitsbereiche in der Reihenfolge vom größten zum kleinsten aufzulisten. Dann greift es mit dem Kopf nach den ersten 10:
quelle
Sie können das folgende Skript in der Konsole " Jenkins verwalten → Skripte" ausführen, um die Arbeitsbereiche aller Jobs auf einmal zu löschen. Wir haben dies getan, um Speicherplatz im Dateisystem zu bereinigen.
quelle
Angenommen, es geht um die Bereinigung des Arbeitsbereichs des aktuellen Jobs, können Sie Folgendes ausführen:
quelle
darf daher nicht kommentieren:
Die Antwort von Upen funktioniert einwandfrei, aber nicht, wenn Sie Jenkins Pipeline Jobs mit Freestyle Jobs gemischt haben. Es gibt keine Methode wie DoWipeWorkspace für Pipeline-Jobs. Also habe ich das Skript geändert, um diese zu überspringen:
Bei Bedarf können Sie auch nach Jobnamen filtern:
item.getDisplayName().toLowerCase().contains("release")
quelle
Sie müssen dieses Plugin installieren, bevor die oben genannten Optionen angezeigt werden
Plugin zur Bereinigung des Arbeitsbereichs
Dieses Plugin fügt allen Jobkonfigurationen das Kontrollkästchen hinzu, damit Sie den gesamten Arbeitsbereich löschen können, bevor Schritte (einschließlich Quellcodeverwaltung) ausgeführt werden
Dies ist nützlich, um sicherzustellen, dass Sie immer an einem bekannten Punkt beginnen, um sicherzustellen, dass Ihre Erstellung ausgeführt wird
quelle
Wenn Sie nur ein Verzeichnis (oder eine Datei) entfernen möchten, können Sie mit Groovy und Jenkins verwalten → Scripts Console ein Skript ausführen, das es entfernt.
Sie können die Dateien beispielsweise mit folgenden Elementen anzeigen:
Wenn Sie den Ordner haben, in dem Sie ihn löschen möchten
dh
, können Sie einfach den nächsten Code anhängen:Und es wird gelöscht.
Hinweis: Der im Beispiel gezeigte Pfad gilt für eine Bitnami Jenkins-Installation. Ihr Pfad kann unterschiedlich sein.
quelle
Es gibt eine Option, um dies zu tun. Konfigurieren -> Aktionen nach dem Erstellen
Die Option ist standardmäßig mindestens in Jenkins Version 2.236 verfügbar
quelle