C'è un modo per dire a jenkins (2.2) di rimuovere i lavori per i rami che sono stati cancellati? Attualmente il mio build-monitor si riempie di rami mentre i lavori non vengono cancellati. C'è un'impostazione per attivare questo comportamento o dovrebbe essere archiviato come un bug?Jenkins cancella i lavori quando si elimina il ramo tramite indicizzazione delle diramazioni
risposta
Poiché si utilizza la versione più recente di Jenkins, è consigliabile passare i lavori a multibranch pipeline setup.
La funzione del flusso di lavoro multiramo (fornita dal plugin workflow) fornisce le seguenti abilità fondamentali:
flusso di lavoro automatico (di lavoro) la creazione di Jenkins per nuova filiale in pronti contro termine (webhooks assumendo sono registrati da Da GH a Jenkins).
Build specifico per quel ramo figlio e il suo cambio scm univoco e cronologia build.
Eliminazione/eliminazione automatica del lavoro per rami eliminati dal repository, in base alle impostazioni.
Flessibilità di configurare individualmente le proprietà del ramo, sovrascrivendo le proprietà padre, se necessario.
EDIT: controllare le impostazioni dei 'disfarsi vecchi elementi' per voi pipeline. Se hai zero "Numero massimo di vecchi elementi" allora, se il tuo ramo ha meno build di questo numero, non verrà mai cancellato! Si può anche vedere che nei log:
Will not remove US12345 as it is only #1 in the list
Will not remove US23456 as it is only #2 in the list
Will not remove US34567 as it is only #3 in the list
EDIT: Si può anche tentare la fortuna con l'aggiunta di un comportamento aggiuntivo denominato "Prune stantio remote-tracking rami" ("comportamenti" -> "Aggiungi" -> Seleziona dal menu a discesa).
1) Vai a Manage Jenkins -> Global Tool Configuration -> Git -> Add Git -> Choose JGit
.
2) Poi vai alla configurazione gasdotto multiramo e scegliere JGit
invece Default
sotto Branch Sources -> Git Executable
3) Premete Branch Indexing -> Run now
vecchi rami dovrebbero andare via ora
quindi mi considero un bug come ho sto usando la configurazione della pipeline multibranch - grazie – ligi
Sto vedendo la stessa cosa ... i vecchi rami non vengono cancellati da Jenkins quando sono spariti dal repository. @ligi: hai inserito un bug? – kenyee
@kenyee, controlla la mia modifica? – madhead