Domanda C'è un modo per ripulire l'area di lavoro di Jenkins?


Come posso pulire lo spazio di lavoro in Jenkins? sto usando AccuRev come strumento di controllo della versione.

ho creato freestyle progetti in Jenkins.


44
2018-02-23 21:35


origine


risposte:


C'è un modo per ripulire l'area di lavoro in Jenkins. Puoi pulire lo spazio di lavoro prima della costruzione o dopo la costruzione.

Innanzitutto, installa Workspace Cleanup Plugin.

Per ripulire lo spazio di lavoro prima della costruzione: Sotto Costruire l'ambiente, seleziona la casella che dice Elimina l'area di lavoro prima che inizi la costruzione.

Per pulire l'area di lavoro dopo la creazione: Sotto la voce Azioni post-compilazione selezionare Elimina l'area di lavoro al termine della compilazione dal Aggiungi azioni post-creazione menu a discesa.


51
2018-02-25 20:10



Se vuoi pulirlo manualmente, per me con la mia particolare versione di jenkins (non sembra che sia necessario un plugin aggiuntivo installato, ma chissà), c'è un link "workspace" sulla colonna di sinistra, cliccaci sopra, quindi un collegamento "Cancella il lavoro attuale" appare sotto di esso nella colonna di sinistra.


22
2017-09-20 19:21



Oltre alle soluzioni di cui sopra, c'è un modo più "COMUNE" - eliminare direttamente il più grande consumatore di spazio dalla macchina Linux. Puoi seguire i seguenti passaggi:

  1. Accedi alla macchina Jenkins (Putty) enter image description here
  2. cd al percorso di installazione di Jenkins

Usando ls -lart per elencare anche la cartella nascosta, normalmente jenkin   l'installazione è collocata in .jenkins / cartella

[xxxxx ~]$ ls -lart

drwxrwxr-x 12 xxxx  4096 Feb  8 02:08 .jenkins/
  1. elencare gli spazi delle cartelle

Use df -h per mostrare lo spazio su disco in alto livello

du -sh ./*/ per elencare la memoria totale per ogni sottocartella corrente   sentiero.

du -a /etc/ | sort -n -r | head -n 10 elencherà le prime 10 directory   mangiare spazio su disco in / etc /

  1. Elimina la vecchia build o altre cartelle di grandi dimensioni

Normalmente la cartella ./job/ o la cartella ./workspace/ possono essere le più grandi   cartella. Per favore vai dentro e cancella la base di cui hai bisogno (NON cancellare l'intera cartella).

rm -rf theFolderToDelete

enter image description here


15
2018-02-14 07:15



Puoi eseguire lo script seguente in Gestisci Jenkins → Console degli script per eliminare nello stesso momento le aree di lavoro di tutti i lavori. Lo abbiamo fatto per ripulire lo spazio sul file system.

import hudson.model.*
// For each project
for(item in Hudson.instance.items) {
  // check that job is not building
  if(!item.isBuilding()) {
    println("Wiping out workspace of job "+item.name)
    item.doDoWipeOutWorkspace()
  }
  else {
    println("Skipping job "+item.name+", currently building")
  }
}

9
2017-10-10 18:49



Dovrai installare questo plugin prima che appaiano le opzioni sopra menzionate

Workspace Cleanup Plugin

Questo plugin aggiunge la casella di controllo a tutte le configurazioni di lavoro per consentire all'utente di eliminare l'intera area di lavoro prima che vengano eseguiti tutti i passaggi (controllo del codice sorgente inc).

Questo è utile per assicurarti di iniziare sempre da un punto noto per garantire che la tua build verrà eseguita


2
2018-02-26 08:18



non è permesso commentare, quindi:

La risposta da Upen funziona bene, ma non se hai Jenkins Pipeline Jobs mescolato con Freestyle Jobs. Non esiste un metodo come DoWipeWorkspace sui lavori della pipeline. Così ho modificato lo script per saltare quelli:

import hudson.model.*
import org.jenkinsci.plugins.workflow.job.WorkflowJob

// For each project
for(item in Hudson.instance.items) {
  // check that job is not building
  if(!item.isBuilding() && !(item instanceof WorkflowJob))
  {
    println("Wiping out workspace of job "+item.name)
    item.doDoWipeOutWorkspace()
  }
  else {
    println("Skipping job "+item.name+", currently building")
  }
}

puoi anche filtrare per nome lavoro se richiesto: item.getDisplayName().toLowerCase().contains("release")


1
2018-04-30 08:20