Tworzenie wielu gałęzi w usłudze Azure Pipelines
Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
Korzystając z usługi Azure Pipelines, możesz tworzyć wyzwalacze, aby skompilować projekt przy każdym nowym zatwierdzeniu i żądaniu ściągnięcia do repozytorium. W tym artykule dowiesz się, jak włączyć ciągłą integrację i skonfigurować wiele kompilacji gałęzi dla repozytorium.
Wymagania wstępne
Organizacja i projekt usługi Azure DevOps. Utwórz organizację lub projekt, jeśli jeszcze tego nie zrobiono.
Potok roboczy. Postępuj zgodnie z instrukcjami w temacie Tworzenie pierwszego potoku , aby utworzyć potok.
Włączanie wyzwalacza ciągłej integracji dla gałęzi tematu
Podczas pracy z usługą Git typowym rozwiązaniem jest tworzenie tymczasowych gałęzi z gałęzi głównej w celu ułatwienia usprawnionego przepływu pracy. Te gałęzie, często określane jako gałęzie tematów lub funkcji, służą do izolowania pracy. W tym przepływie pracy utworzysz gałąź dedykowaną dla określonej funkcji lub poprawki błędów, a po zakończeniu scalisz kod z powrotem z gałęzią główną przed usunięciem gałęzi tematu.
Jeśli żaden wyzwalacz nie zostanie jawnie określony w pliku YAML, wszystkie zmiany wprowadzone w dowolnej gałęzi będą wyzwalać przebieg. Aby dodać wyzwalacze zarówno dla gałęzi głównej, jak i dowolnej funkcji/gałęzi, dołącz następujący fragment kodu w pliku YAML. Dzięki temu wszelkie modyfikacje wprowadzone w tych gałęziach automatycznie wyzwolą uruchomienie potoku.
trigger:
- main
- feature/*
Kompilacje YAML nie są jeszcze dostępne na serwerze TFS.
Dostosowywanie zadań kompilacji na podstawie tworzonej gałęzi
Gałąź główna jest zwykle odpowiedzialna za generowanie artefaktów możliwych do wdrożenia, takich jak pliki binarne. W przypadku krótkotrwałych gałęzi funkcji nie trzeba poświęcać czasu na tworzenie i przechowywanie tych artefaktów. W usłudze Azure Pipelines można zaimplementować warunki niestandardowe, aby upewnić się, że określone zadania są wykonywane tylko w gałęzi głównej.
Zmodyfikuj plik azure-pipelines.yml w gałęzi głównej i dodaj warunek do żądanego zadania. Na przykład poniższy fragment kodu dodaje warunek do zadania publikowania artefaktów potoku.
- task: PublishPipelineArtifact@1
condition: and(succeeded(), eq(variables['Build.SourceBranch'], 'refs/heads/main'))
Kompilacje YAML nie są jeszcze dostępne na serwerze TFS.
Weryfikowanie żądań ściągnięcia
Aby zapewnić ochronę gałęzi, można użyć zasad, które wymuszają pomyślne kompilacje przed scaleniem żądań ściągnięcia. Korzystając z usługi Azure Pipelines, możesz elastycznie skonfigurować wymaganie nowej pomyślnej kompilacji w celu scalenia zmian w kluczowych gałęziach, takich jak gałąź główna.
Repozytorium GitHub
Jeśli nie zdefiniujesz jawnie wyzwalaczy żądania ściągnięcia w pliku YAML, kompilacje żądań ściągnięcia będą domyślnie włączone dla wszystkich gałęzi. Istnieje jednak elastyczność określania gałęzi docelowych dla kompilacji żądania ściągnięcia. Jeśli na przykład chcesz uruchomić kompilację wyłącznie dla żądań ściągnięcia przeznaczonych dla głównej gałęzi i gałęzi rozpoczynających się od funkcji/, możesz określić następującą konfigurację:
pr:
- main
- feature/*
Kompilacje YAML nie są jeszcze dostępne na serwerze TFS.
Repozytorium usługi Azure Repos
Zaloguj się do organizacji usługi Azure DevOps, a następnie przejdź do projektu.
Wybierz pozycję Repozytoria , a następnie wybierz pozycję Gałęzie.
Wybierz ikonę wielokropka po prawej stronie nazwy gałęzi, a następnie wybierz pozycję Zasady gałęzi.
W menu Weryfikacja kompilacji wybierz znak +, aby dodać zasady kompilacji.
Wybierz potok kompilacji z menu rozwijanego i upewnij się, że ustawienie Wyzwalacz ma wartość automatyczną, a wymaganie zasad jest ustawione na wymagane.
Wprowadź opisową nazwę wyświetlaną, aby opisać zasady.
Wybierz pozycję Zapisz , aby utworzyć i włączyć zasady. Wybierz pozycję Zapisz zmiany w lewym górnym rogu ekranu, aby zapisać zmiany.
Aby przetestować zasady, przejdź do obszaru Żądania ściągnięcia repozytoriów>w portalu usługi Azure DevOps.
Wybierz pozycję Nowe żądanie ściągnięcia i upewnij się, że gałąź tematu ma zostać scalona z gałęzią główną, a następnie wybierz pozycję Utwórz.
Na ekranie można zobaczyć aktualnie wykonywane zasady.
Wybierz nazwę zasad, aby zbadać kompilację. Jeśli kompilacja zakończy się powodzeniem, żądanie ściągnięcia zostanie scalone. Jeśli kompilacja zakończy się niepowodzeniem, scalanie zostanie zablokowane.
Uwaga
Usługa Azure Pipelines nie obsługuje już zasad przechowywania potoku. Zalecamy używanie reguł przechowywania na poziomie projektu.