Tworzenie pulpitu nawigacyjnego bez zespołu — aktualizacja przebiegu 162
W aktualizacji Sprint 162 usługi Azure DevOps z przyjemnością ogłaszamy, że możesz utworzyć pulpit nawigacyjny bez kojarzenia go z zespołem. Pulpit nawigacyjny będzie widoczny dla wszystkich użytkowników projektu i możesz zdecydować, kto może go edytować i zarządzać.
Ponadto dodaliśmy miniaturę postępu przebiegu. Teraz można skonfigurować ją do postępu na podstawie historii, punktów scenariuszy lub liczby zadań.
Zapoznaj się z listą funkcji poniżej, aby uzyskać więcej informacji.
Funkcje
Azure Repos:
Azure Pipelines:
- Zaktualizowany interfejs użytkownika potoków wieloetapowych
- Opcja VSTest TestResultsDirectory jest dostępna w interfejsie użytkownika zadania
- Używanie słowa kluczowego extends w potokach
- Obsługa języka Markdown w komunikatach o błędach testów automatycznych
- Zbieranie automatycznych i określonych przez użytkownika metadanych z potoku
- interfejs użytkownika połączeń Aktualizacje z usługami
- Wdrożenia maszyn wirtualnych ze środowiskami
- Pomijanie etapów w potoku YAML
Raportowanie:
Azure Repos
Nowe strony docelowe konwersji platformy internetowej
Zaktualizowaliśmy środowisko użytkownika stron docelowych repozytoriów, aby było nowoczesne, szybkie i przyjazne dla urządzeń przenośnych. Poniżej przedstawiono dwa przykłady stron, które zostały zaktualizowane, będziemy nadal aktualizować inne strony w przyszłych aktualizacjach.
Środowisko internetowe:
Środowisko mobilne:
Obsługa języka Kotlin
Z przyjemnością ogłaszamy, że teraz obsługujemy wyróżnianie języka Kotlin w edytorze plików. Wyróżnianie poprawi czytelność pliku tekstowego Kotlin i pomoże szybko skanować w celu znalezienia błędów. Określiliśmy priorytety tej funkcji na podstawie sugestii z Developer Community.
Azure Pipelines
Zaktualizowany interfejs użytkownika potoków wieloetapowych
Zaktualizowana wersja interfejsu użytkownika potoków wieloetapowych jest teraz domyślnie dostępna. Środowisko potoków wieloetapowych zapewnia ulepszenia i łatwość użycia interfejsu użytkownika portalu potoku. Potoki można wyświetlać i zarządzać nimi, wybierając pozycję Potoki z menu po lewej stronie. Ponadto można przejść do szczegółów i wyświetlić szczegóły potoku, szczegóły uruchamiania, analizę potoku, szczegóły zadania, dzienniki i nie tylko.
Aby dowiedzieć się więcej na temat środowiska użytkownika potoków wieloetapowych, zapoznaj się z dokumentacją tutaj.
Opcja VSTest TestResultsDirectory jest dostępna w interfejsie użytkownika zadania
Zadanie VSTest przechowuje wyniki testów i skojarzone pliki w folderze $(Agent.TempDirectory)\TestResults
. Dodaliśmy opcję do interfejsu użytkownika zadania, aby umożliwić skonfigurowanie innego folderu do przechowywania wyników testów. Teraz wszystkie kolejne zadania, które wymagają plików w określonej lokalizacji, mogą ich używać.
Używanie słowa kluczowego extends w potokach
Obecnie potoki można uwzględnić w szablonach, promując ponowne użycie i zmniejszając standardowy. Ogólna struktura potoku została nadal zdefiniowana przez główny plik YAML. Dzięki tej aktualizacji dodaliśmy bardziej ustrukturyzowany sposób korzystania z szablonów potoków. Główny plik YAML może teraz używać rozszerzenia słowa kluczowego, aby wskazać, że główną strukturę potoku można znaleźć w innym pliku. Dzięki temu możesz kontrolować, które segmenty można rozszerzyć lub zmienić oraz jakie segmenty są stałe. Ulepszyliśmy również parametry potoku z typami danych, aby wyczyścić punkty zaczepienia, które można podać.
W tym przykładzie pokazano, jak można udostępnić proste punkty zaczepienia dla autora potoku do użycia. Szablon będzie zawsze uruchamiał kompilację, opcjonalnie uruchomi dodatkowe kroki podane przez potok, a następnie uruchomi opcjonalny krok testowania.
# azure-pipelines.yml
extends:
template: build-template.yml
parameters:
runTests: true
postBuildSteps:
- script: echo This step runs after the build!
- script: echo This step does too!
# build-template.yml
parameters:
- name: runTests
type: boolean
default: false
- name: postBuildSteps
type: stepList
default: []
steps:
- task: MSBuild@1 # this task always runs
- ${{ if eq(parameters.runTests, true) }}:
- task: VSTest@2 # this task is injected only when runTests is true
- ${{ each step in parameters.postBuildSteps }}:
- ${{ step }}
Obsługa języka Markdown w komunikatach o błędach testów automatycznych
Dodaliśmy obsługę języka Markdown do komunikatów o błędach dla testów automatycznych. Teraz możesz łatwo sformatować komunikaty o błędach zarówno dla przebiegu testu, jak i wyniku testu, aby zwiększyć czytelność i ułatwić rozwiązywanie problemów z niepowodzeniem testu w usłudze Azure Pipelines. Obsługiwaną składnię języka Markdown można znaleźć tutaj.
Zbieranie automatycznych i określonych przez użytkownika metadanych z potoku
Teraz możesz włączyć automatyczne i określone przez użytkownika zbieranie metadanych z zadań potoku. Metadane umożliwiają wymuszanie zasad artefaktów w środowisku przy użyciu sprawdzania artefaktu oceny.
interfejs użytkownika połączeń Aktualizacje z usługami
Pracujemy nad zaktualizowanym środowiskiem użytkownika w celu zarządzania połączeniami usługi. Te aktualizacje sprawiają, że środowisko połączenia z usługą jest nowoczesne i zgodne z kierunkiem usługi Azure DevOps. Wprowadziliśmy nowy interfejs użytkownika dla połączeń usług jako funkcję w wersji zapoznawczej na początku tego roku. Dzięki wszystkim, którzy próbowali nowego środowiska i przekazali nam cenne opinie.
Oprócz odświeżania środowiska użytkownika dodaliśmy również dwie możliwości, które mają kluczowe znaczenie dla korzystania z połączeń usług w potokach YAML: autoryzacje potoków i zatwierdzenia oraz kontrole.
Nowe środowisko użytkownika zostanie domyślnie włączone przy użyciu tej aktualizacji. Nadal będziesz mieć możliwość rezygnacji z wersji zapoznawczej.
Uwaga
Planujemy wprowadzić funkcję współużytkowania połączeń usług między projektami jako nową funkcję. Więcej szczegółów na temat środowiska udostępniania i ról zabezpieczeń można znaleźć tutaj.
Wdrożenia maszyn wirtualnych ze środowiskami
Jedną z najbardziej żądanych funkcji w środowiskach było wdrożenie maszyn wirtualnych. Dzięki tej aktualizacji włączamy zasób maszyny wirtualnej w środowiskach. Teraz można organizować wdrożenia na wielu maszynach i przeprowadzać aktualizacje stopniowe przy użyciu potoków YAML. Agenta można również zainstalować na każdym z serwerów docelowych bezpośrednio i przeprowadzić wdrażanie stopniowe na tych serwerach. Ponadto można użyć pełnego wykazu zadań na maszynach docelowych.
Wdrożenie stopniowe zastępuje wystąpienia poprzedniej wersji aplikacji wystąpieniami nowej wersji aplikacji na zestawie maszyn (zestaw stopniowy) w każdej iteracji.
Na przykład poniżej stopniowe aktualizacje wdrożenia do pięciu elementów docelowych w każdej iteracji.
maxParallel
Określi liczbę obiektów docelowych, które można wdrożyć równolegle. Wybór odpowiada liczbie obiektów docelowych, które muszą pozostać dostępne w dowolnym momencie, z wyłączeniem obiektów docelowych, do których są wdrażane. Służy również do określania warunków powodzenia i niepowodzenia podczas wdrażania.
jobs:
- deployment:
displayName: web
environment:
name: musicCarnivalProd
resourceType: VirtualMachine
strategy:
rolling:
maxParallel: 5 #for percentages, mention as x%
preDeploy:
steps:
- script: echo initialize, cleanup, backup, install certs...
deploy:
steps:
- script: echo deploy ...
routeTraffic:
steps:
- script: echo routing traffic...
postRouteTraffic:
steps:
- script: echo health check post routing traffic...
on:
failure:
steps:
- script: echo restore from backup ..
success:
steps:
- script: echo notify passed...
Uwaga
Dzięki tej aktualizacji wszystkie dostępne artefakty z bieżącego potoku i skojarzonych zasobów potoku są pobierane tylko w elemencie deploy
cyklu życia. Można jednak wybrać opcję pobierania, określając zadanie Pobierz artefakt potoku.
Ta funkcja zawiera kilka znanych luk. Na przykład po ponowieniu próby etapu zostanie ono ponownie uruchomione na wszystkich maszynach wirtualnych, a nie tylko na docelowych miejscach docelowych, które zakończyły się niepowodzeniem. Pracujemy nad zamknięciem tych luk w przyszłych aktualizacjach.
Pomijanie etapów w potoku YAML
Po uruchomieniu przebiegu ręcznego czasami można pominąć kilka etapów w potoku. Jeśli na przykład nie chcesz wdrażać w środowisku produkcyjnym lub chcesz pominąć wdrażanie w kilku środowiskach produkcyjnych. Teraz możesz to zrobić za pomocą potoków YAML.
Zaktualizowany panel potoku uruchamiania przedstawia listę etapów z pliku YAML i możesz pominąć jeden lub więcej z tych etapów. Należy zachować ostrożność podczas pomijania etapów. Jeśli na przykład pierwszy etap generuje pewne artefakty potrzebne do kolejnych etapów, nie należy pomijać pierwszego etapu. Panel uruchamiania przedstawia ogólne ostrzeżenie za każdym razem, gdy pomijasz etapy, które mają zależności podrzędne. Pozostaje Ci do czynienia z tym, czy te zależności są prawdziwe zależności artefaktów, czy są one obecne tylko do sekwencjonowania wdrożeń.
Pomijanie etapu jest równoważne ponownemu wirowaniu zależności między etapami. Wszystkie natychmiastowe zależności podrzędne pominiętego etapu są wykonywane w zależności od nadrzędnego etapu pominiętego. Jeśli przebieg zakończy się niepowodzeniem i spróbujesz ponownie uruchomić etap niepowodzenia, ta próba będzie również miała takie samo zachowanie pomijania. Aby zmienić etapy, które są pomijane, musisz rozpocząć nowy przebieg.
Raportowanie
Miniatura przebiegu wbudowanego
Spalanie przebiegu jest z powrotem! Kilka przebiegów temu usunęliśmy spalenie przebiegu w kontekście z nagłówków Sprint Burndown i Taskboard. W oparciu o twoją opinię ulepszyliśmy i ponownie wprowadziliśmy miniaturę przebiegu.
Kliknięcie miniatury spowoduje natychmiastowe wyświetlenie większej wersji wykresu z opcją wyświetlenia pełnego raportu na karcie Analiza. Wszelkie zmiany wprowadzone w pełnym raporcie zostaną odzwierciedlone na wykresie wyświetlanym w nagłówku. Dzięki temu można skonfigurować ją tak, aby mogła zostać spalona na podstawie scenariuszy, punktów historii lub liczby zadań, a nie tylko ilości pozostałej pracy.
Tworzenie pulpitu nawigacyjnego bez zespołu
Teraz możesz utworzyć pulpit nawigacyjny bez skojarzenia go z zespołem. Podczas tworzenia pulpitu nawigacyjnego wybierz typ Pulpit nawigacyjny projektu .
Pulpit nawigacyjny projektu jest jak pulpit nawigacyjny zespołu, z wyjątkiem tego, że nie jest skojarzony z zespołem i możesz zdecydować, kto może edytować pulpit nawigacyjny lub zarządzać nim. Podobnie jak pulpit nawigacyjny zespołu, jest widoczny dla wszystkich użytkowników w projekcie.
Wszystkie widżety usługi Azure DevOps, które wymagają kontekstu zespołu, zostały zaktualizowane, aby umożliwić wybranie zespołu w ich konfiguracji. Możesz dodać te widżety do pulpitów nawigacyjnych projektu i wybrać odpowiedni zespół.
Uwaga
W przypadku widżetów niestandardowych lub innych firm pulpit nawigacyjny projektu przekaże domyślny kontekst zespołu do tych widżetów. Jeśli masz niestandardowy widżet, który opiera się na kontekście zespołu, należy zaktualizować konfigurację, aby umożliwić wybranie zespołu.
Następne kroki
Uwaga
Te funkcje zostaną wdrożone w ciągu najbliższych dwóch do trzech tygodni.
Przejdź do usługi Azure DevOps i przyjrzyj się.
Jak przekazać opinię
Chcielibyśmy usłyszeć, co myślisz o tych funkcjach. Użyj menu Pomocy, aby zgłosić problem lub podać sugestię.
Możesz również uzyskać porady i pytania, na które odpowiada społeczność w witrynie Stack Overflow.
Dzięki,
Jeff Beehler