Le "azioni post-build" di Jenkins consentono di definire le azioni che dovrebbero essere intraprese dopo che una build è stata completata. Una di queste azioni è l'azione "Cleanup di fallimento post-build", che consente di specificare un set di file o directory che devono essere eliminati se la build non riesce.
Ciò può essere utile per ripulire qualsiasi file o directory creati come parte del processo di build e non è più necessario se la build non riesce. È possibile specificare i file o le directory da eliminare inserendo un elenco di modelli e utilizzando i caratteri jolly per abbinare i file desiderati.
In questo tutorial, imparerai come configurare un'azione di build di pulizia post-falsa in Jenkins.
Jenkins Post Block
Il blocco post è una sezione di Jenkinsfile che specifica una serie di passaggi da eseguire dopo l'esecuzione principale della pipeline. Può eseguire compiti di pulizia, inviare notifiche o eseguire altre azioni che dovrebbero essere eseguite indipendentemente dal fatto che la pipeline abbia avuto successo.
Il blocco post può contenere diversi blocchi, tra cui successo, fallimento, instabile, cambiato e sempre. Ognuno di questi blocchi viene eseguito in base all'esito della pipeline. Ad esempio, il blocco di errore viene eseguito se qualsiasi fase della pipeline fallisce e il blocco di successo viene eseguito se tutte le fasi della pipeline hanno esito positivo.
Possiamo usare il blocco post per definire l'azione di pulizia dell'area di lavoro se una build non è riuscita.
Esempio 1 - Cleanup di base dell'area di lavoro
La seguente pipeline mostra come possiamo utilizzare il blocco post per definire un'azione di pulizia se una build fallisce.
tubaturaQuesto Jenkinsfile definisce una pipeline con una singola fase chiamata "build". All'interno del palco, puoi mettere i passi di build. Il blocco post alla fine del file contiene un blocco di errore che verrà eseguito se lo stadio della pipeline non riesce. La funzione deletedir () eliminerà l'intero spazio di lavoro, pulindolo efficacemente.
Si noti che questo Jenkinsfile ripulerà l'area di lavoro in caso di guasto per tutte le fasi nella pipeline. Se si desidera ripulire l'area di lavoro solo per fasi specifiche, è possibile specificare più blocchi di post, uno per ogni fase.
Esempio 2 - Pulsella di lavoro in ogni fase
La pipeline di esempio seguente dimostra come si definisce l'operazione post-pulizia su ciascuna fase:
tubaturaConclusione
In questo post, hai scoperto come puoi utilizzare l'azione Jenkins Post Block e Falling per ripulire l'area di lavoro se una build fallisce su una determinata fase.