Concourse Lab Creation
Środowisko testowe
Uruchamianie Concourse
Za pomocą Docker-Compose
Ten plik docker-compose upraszcza instalację do przeprowadzenia testów z Concourse:
Możesz pobrać wiersz poleceń fly
dla swojego systemu operacyjnego ze strony internetowej 127.0.0.1:8080
.
Z użyciem Kubernetes (zalecane)
Możesz łatwo wdrożyć Concourse w Kubernetes (na przykład w minikube) za pomocą helm-chart: concourse-chart.
Po wygenerowaniu środowiska Concourse, możesz wygenerować tajemnicę i udzielić dostępu SA działającemu w przeglądarce Concourse, aby uzyskać dostęp do tajemnic K8s:
Utwórz potok
Potok składa się z listy Zadań, które zawierają uporządkowaną listę Kroków.
Kroki
Można użyć kilku różnych typów kroków:
Krok
set_pipeline
konfiguruje potokKrok
load_var
wczytuje wartość do zmiennej lokalnejKrok
in_parallel
uruchamia kroki równolegleKrok
do
uruchamia kroki sekwencyjnieModyfikator kroku
across
uruchamia krok wielokrotnie, dla każdej kombinacji wartości zmiennychKrok
try
próbuje uruchomić krok i udaje się nawet w przypadku niepowodzenia kroku
Każdy krok w planie zadania uruchamiany jest w własnym kontenerze. Możesz uruchamiać w kontenerze cokolwiek chcesz (np. uruchamiać moje testy, uruchamiać ten skrypt bash, budować ten obraz itp.). Jeśli masz zadanie składające się z pięciu kroków, Concourse utworzy pięć kontenerów, po jednym dla każdego kroku.
Dlatego możliwe jest określenie typu kontenera, w którym ma być uruchamiany każdy krok.
Przykład prostego potoku
Sprawdź 127.0.0.1:8080, aby zobaczyć przepływ potoku.
Skrypt Bash z potokiem wyjściowym/wejściowym
Możliwe jest zapisanie wyników jednego zadania w pliku i wskazanie, że jest to wynik, a następnie wskazanie wejścia następnego zadania jako wynik poprzedniego zadania. Co robi Concourse, to montuje katalog poprzedniego zadania w nowym zadaniu, gdzie można uzyskać dostęp do plików utworzonych przez poprzednie zadanie.
Wyzwalacze
Nie musisz uruchamiać zadań ręcznie za każdym razem, gdy chcesz je uruchomić, możesz również zaprogramować je, aby uruchamiały się za każdym razem:
Po upływie pewnego czasu: Zasób czasu
Po dodaniu nowych commitów do głównej gałęzi: Zasób Git
Nowe PR-y: Zasób Github-PR
Pobierz lub wgraj najnowszy obraz swojej aplikacji: Zasób obrazu rejestru
Sprawdź przykład potoku YAML, który wyzwalany jest przez nowe commity do mastera na stronie https://concourse-ci.org/tutorial-resources.html
Last updated