Jenkins „Działania po budynku” pozwala zdefiniować działania, które należy podjąć po zakończeniu kompilacji. Jednym z tych działań jest akcja „Oczyszczanie awarii po budynku”, która pozwala określić zestaw plików lub katalogów, które należy usunąć, jeśli kompilacja się nie powiedzie.
Może to być przydatne do oczyszczenia dowolnych plików lub katalogów utworzonych w ramach procesu kompilacji i nie jest już potrzebne, jeśli kompilacja się nie powiedzie. Możesz określić pliki lub katalogi do usunięcia, wprowadzając listę wzorców i używając wieloznacznych kart do dopasowania żądanych plików.
W tym samouczku dowiesz się, jak skonfigurować akcję kompilacji o czyszczeniu po zapleczu w Jenkins.
Jenkins Post Block
Blok pocztowy to sekcja Jenkinsfile, która określa serię kroków, które należy uruchomić po wykonaniu głównego rurociągu. Może wykonywać zadania oczyszczające, wysyłać powiadomienia lub wykonywać inne działania, które należy uruchomić niezależnie od tego, czy rurociąg się powiódł.
Blok pocztowy może zawierać kilka bloków, w tym sukces, porażkę, niestabilne, zmienione i zawsze. Każdy z tych bloków jest wykonywany w zależności od wyniku rurociągu. Na przykład blok awarii jest wykonywany, jeśli jakikolwiek etap rurociągu ulegnie awarii, a blok sukcesu jest wykonywany, jeśli wszystkie etapy rurociągu są powiodowe.
Możemy użyć bloku postu, aby zdefiniować działanie oczyszczania obszaru roboczego, jeśli kompilacja się nie powiodła.
Przykład 1 - Podstawowe czyszczenie obszaru roboczego
Poniższy rurociąg pokazuje, w jaki sposób możemy użyć bloku pocztowego, aby zdefiniować działanie oczyszczania, jeśli kompilacja się nie powiedzie.
rurociągTen Jenkinsfile definiuje rurociąg z jednym etapem o nazwie „Build”. Wewnątrz sceny możesz umieścić swoje stopnie kompilacji. Blok słupkowy na końcu pliku zawiera blok awarii, który zostanie wykonany, jeśli etap rurociągu ulegnie awarii. Funkcja DeletEdir () usunie cały obszar roboczy, skutecznie ją oczyszczając.
Zauważ, że ten Jenkinsfile wyczyści obszar roboczy na temat awarii dla wszystkich etapów w rurociągu. Jeśli chcesz wyczyścić obszar roboczy tylko dla określonych etapów, możesz określić wiele bloków pocztowych, jeden dla każdego etapu.
Przykład 2 - Obszar roboczy czyszczenia na każdym etapie
Poniższy przykład rurociąg pokazuje, jak zdefiniować operację po czyszczeniu na każdym etapie:
rurociągWniosek
W tym poście odkryłeś, w jaki sposób możesz użyć Jenkins Post Block i awarii, aby oczyścić obszar roboczy, jeśli kompilacja nie powiedzie się na danym etapie.