Udostępnij za pośrednictwem


Integracja z usługą GitHub — ulepszona weryfikacja ab#

Dzięki tej aktualizacji z przyjemnością oferujemy prywatną wersję zapoznawcza najnowszych ulepszeń usługi Azure Boards i integracji z usługą GitHub!

Ponadto administratorzy mogą teraz pomijać uruchomione zatwierdzenia i kontrole w celu ukończenia poprawki w usłudze Azure Pipelines.

Zapoznaj się z informacjami o wersji, aby uzyskać szczegółowe informacje.

Ogólne

Azure Boards

Azure Pipelines

Raportowanie

Ogólne

Nowa wersja zestawu SDK rozszerzenia internetowego usługi Azure DevOps

Dzięki tej aktualizacji udostępnimy nową wersję zestawu SDK rozszerzenia internetowego usługi Azure DevOps. Zestaw SDK klienta umożliwia rozszerzenia sieci Web komunikowanie się z ramką hosta. Może służyć do:

  • Powiadamianie hosta o załadowaniu rozszerzenia lub błędach
  • Uzyskaj podstawowe informacje kontekstowe dotyczące bieżącej strony (bieżący użytkownik, host i informacje o rozszerzeniu)
  • Uzyskiwanie informacji o motywie
  • Uzyskiwanie tokenu autoryzacji do użycia w wywołaniach REST z powrotem do usługi Azure DevOps
  • Uzyskiwanie usług zdalnych oferowanych przez ramkę hosta

Pełną dokumentację interfejsu API można znaleźć w dokumentacji pakietu azure-devops-extension-sdk. Ta nowa wersja zapewnia obsługę następujących modułów:

  • Obsługa modułów ES: zestaw SDK obsługuje teraz moduły ES (ECMAScript) oprócz istniejących modułów AMD (Asynchronous Module Definition). Zestaw SDK można teraz zaimportować przy użyciu składni modułu ES, która zapewnia ulepszenia wydajności i zmniejsza rozmiar aplikacji.

  • Zgodność z poprzednimi wersjami dla modułów AMD: istniejąca obsługa modułów AMD pozostaje nienaruszona. Jeśli projekt korzysta z modułów AMD, możesz nadal używać ich tak jak wcześniej bez żadnych zmian.

Jak używać:

W przypadku modułów ES można zaimportować nasze moduły przy użyciu instrukcji import:

import * as SDK from 'azure-devops-extension-sdk';
// Use the module here

Jeśli używasz modułów AMD, możesz kontynuować importowanie zestawu SDK przy użyciu require funkcji :

require(['azure-devops-extension-sdk'], function(SDK) {

  // Use the module here
});

Azure Boards

Integracja z usługą GitHub — ulepszona weryfikacja ab# (prywatna wersja zapoznawcza)

Rozpoczynamy naszą podróż od ulepszeń integracji z usługami Boards + GitHub, zwracając się do odpowiedzi bota podczas łączenia z elementami roboczymi przy użyciu składni AB#. Jeśli łączysz się z żądaniem ściągnięcia przy użyciu AB#{ID} składni, jedynym sposobem, aby sprawdzić, czy link zakończył się pomyślnie, jest przejrzenie elementu roboczego lub zauważenie AB#{ID} przekształcenia w link.

Obecnie uruchamiamy prywatną wersję zapoznawcza z kilkoma ulepszeniami aplikacji GitHub usługi Azure Boards, aby lepiej poinformować Cię, gdy link do elementu roboczego jest prawidłowy lub nieprawidłowy. Pomaga to zidentyfikować nieprawidłowe linki i naprawić je przed scaleniem żądania ściągnięcia.

Screenshots of Team Settings.

Jeśli interesuje Cię uczestnictwo w prywatnej wersji zapoznawczej, skontaktuj się z nami bezpośrednio za pośrednictwem poczty e-mail. Pamiętaj, aby uwzględnić nazwę organizacji (dev.azure.com/{organizacja})

Zapoznaj się z publicznym planem działania, aby dowiedzieć się więcej na temat nadchodzących funkcji integracji z usługą Azure Boards i gitHub.

Azure Pipelines

Zadania usługi Azure Pipelines używają węzła 16

Zadania w potoku są wykonywane przy użyciu modułu uruchamiającego, a w większości przypadków używany jest plik Node.js. Zadania usługi Azure Pipelines korzystające z węzła jako moduł uruchamiający używają teraz węzła 16. Ponieważ węzeł 16 jest pierwszą wersją node, która natywnie obsługuje krzem firmy Apple, wykonuje również pełną obsługę zadań dla systemu macOS na krzemie firmy Apple. Agenci działający na krzemie apple nie potrzebują Rosetta do uruchomienia.

Ponieważ data zakończenia okresu eksploatacji węzła 16 została przeniesiona do przodu, rozpoczęliśmy pracę nad uruchamianiem zadań z węzłem 20.

Ogłoszenie wycofania przestarzałych zadań

Usługa Azure Pipelines ma wiele przestarzałych zadań. Przestarzałe zadania zostaną wycofane 31 stycznia 2024 r. Aby ułatwić identyfikowanie potoków korzystających z przestarzałych zadań, potoki będą wyświetlać ostrzeżenia, jeśli takie zadanie jest używane. Zaktualizowaliśmy odwołanie do zadania, aby wyraźnie przekazać stan wycofania i datę wycofania.

Następujące zadania zostały przestarzałe i zaczną emitować ostrzeżenia:

  • AppCenterDistributeV1,
  • AppCenterDistributeV2
  • AzureMonitorV0
  • ChefKnifeV1
  • ChefV1
  • CondaEnvironmentV1
  • WdrażanievisualStudioTestAgentV2
  • DotNetCoreInstallerV1
  • IISWebAppDeployment
  • QuickPerfTestV1
  • RunJMeterLoadTestV1
  • RunLoadTestV1
  • SqlServerDacpacDeploymentV1
  • XamarinTestCloudV1

Zaktualizuj potoki, aby korzystały z nowszej wersji zadania lub alternatywy przed 31 stycznia 2024 r.

Zadanie AzureRmWebAppDeployment obsługuje uwierzytelnianie identyfikatora Entra firmy Microsoft

Zadania AzureRmWebAppDeploymentV3 i AzureRmWebAppDeployment@4 zostały zaktualizowane w celu obsługi usługi App Service z wyłączonym uwierzytelnianiem podstawowym. Jeśli uwierzytelnianie podstawowe jest wyłączone w usłudze App Service, zadania AzureRmWebAppDeploymentV3/4 używają uwierzytelniania identyfikatora Entra firmy Microsoft do wykonywania wdrożeń w punkcie końcowym usługi App Service Kudu. Wymaga to zainstalowania najnowszej wersji pliku msdeploy.exe na agencie, co jest w przypadku agenta windows-2022/windows-latest Hosted agents (zobacz odwołanie do zadań).

Ulepszenia interfejsu API REST Zatwierdzenia

Ulepszyliśmy lokalizowanie zatwierdzeń przypisanych do użytkownika przez uwzględnienie grup, do których należy użytkownik w wynikach wyszukiwania.

Zatwierdzenia zawiera teraz informacje o uruchomieniu potoku, do którego należą.

Na przykład następujące wywołanie https://dev.azure.com/fabrikam/FabrikamFiber/_apis/pipelines/approvals?api-version=7.2-preview.2&top=1&assignedTo=john@fabrikam.com&state=pending interfejsu API REST GET zwraca wartość

{
    "count": 1,
    "value":
    [
        {
            "id": "7e90b9f7-f3f8-4548-a108-8b80c0fa80e7",
            "steps":
            [],
            "status": "pending",
            "createdOn": "2023-11-09T10:54:37.977Z",
            "lastModifiedOn": "2023-11-09T10:54:37.9775685Z",
            "executionOrder": "anyOrder",
            "minRequiredApprovers": 1,
            "blockedApprovers":
            [],
            "_links":
            {
                "self":
                {
                    "href": "https://dev.azure.com/fabrikam/26dcfaeb-d8fe-495c-91cb-fec4acb44fbb/_apis/pipelines/approvals/7e80b987-f3fe-4578-a108-8a80c0fb80e7"
                }
            },
            "pipeline":
            {
                "owner":
                {
                    "_links":
                    {
                        "web":
                        {
                            "href": "https://dev.azure.com/buildcanary/26dcfaeb-d8fe-495c-91cb-fec4acb44fbb/_build/results?buildId=73222930"
                        },
                        "self":
                        {
                            "href": "https://dev.azure.com/buildcanary/26dcfaeb-d8fe-495c-91cb-fec4acb44fbb/_apis/build/Builds/73222930"
                        }
                    },
                    "id": 73222930,
                    "name": "20231109.1"
                },
                "id": "4597",
                "name": "FabrikamFiber"
            }
        }
    ]
}

Obejście Zatwierdzenia i kontrole

Zatwierdzenia i kontrole pomagają chronić dostęp do ważnych zasobów, takich jak połączenia z usługami, repozytoria lub pule agentów. Typowym przypadkiem użycia jest użycie Zatwierdzenia i kontroli podczas wdrażania w środowisku produkcyjnym i chcesz chronić połączenie usługi ARM.

Załóżmy, że dodano następujące kontrole połączenia z usługą: zatwierdzenie, sprawdzanie godzin pracy i sprawdzanie wywołania funkcji platformy Azure (aby wymusić opóźnienie między różnymi regionami).

Teraz wyobraź sobie, że musisz przeprowadzić wdrożenie poprawek. Uruchamiasz przebieg potoku, ale nie jest on kontynuowany, czeka na większość testów do ukończenia. Nie możesz sobie pozwolić na oczekiwanie na ukończenie zatwierdzeń i kontroli.

W tym przebiegu umożliwiliśmy obejście uruchomionych zatwierdzeń i kontroli, dzięki czemu można ukończyć poprawkę.

Można pominąć uruchamianie Zatwierdzenia, godzin pracy, wywołać funkcję platformy Azure i wywołać kontrole interfejsu API REST.

Pomijanie zatwierdzenia.

Screenshot of Bypass an Approval.

Pomiń sprawdzanie godzin pracy.

Screenshot of Bypass Business Hours check.

Pomiń sprawdzanie funkcji platformy Azure. Pomiń sprawdzanie godzin pracy.

Screenshot of Bypass Invoke Azure Function check.

Po obejściu sprawdzania można go zobaczyć w panelu sprawdzania.

Screenshot of check bypassed.

Sprawdzanie można pominąć tylko wtedy, gdy jesteś Administracja istratorem zasobu, na którym zdefiniowano kontrole.

Obsługa serwera GitHub enterprise w wymaganym sprawdzeniu szablonu

Szablony to mechanizm zabezpieczeń, który umożliwia kontrolowanie etapów, zadań i kroków potoków w organizacji.

Sprawdzanie wymagaj szablonu umożliwia wymuszenie, że potok rozciąga się od zestawu zatwierdzonych szablonów przed uzyskaniem dostępu do chronionego zasobu, takiego jak pula agentów lub połączenie z usługą.

Począwszy od tego przebiegu, można określić szablony znajdujące się w repozytoriach GitHub Enterprise Server.

Screenshot of required YAML template.

Ponowne uruchamianie testów funkcji platformy Azure

Wyobraź sobie, że system jest wdrażany na wielu etapach. Przed wdrożeniem drugiego etapu istnieje zatwierdzenie i sprawdzenie wywołania funkcji platformy Azure, które uruchamia sprawdzanie kondycji w już wdrożonej części systemu.

Podczas przeglądania żądania zatwierdzenia zauważysz, że kontrola kondycji została uruchomiona dwa dni wcześniej. W tym scenariuszu możesz pamiętać o innym wdrożeniu, które miało wpływ na wynik sprawdzania kondycji.

Dzięki tej aktualizacji możesz ponownie uruchomić polecenie Wywołaj funkcję platformy Azure i wywołać kontrole interfejsu API REST. Ta funkcja jest dostępna tylko w przypadku testów zakończonych powodzeniem i nie ma ponownych prób.

Screenshot of dynamic check.

Uwaga

Możesz ponownie uruchomić sprawdzanie tylko wtedy, gdy jesteś Administracja istratorem zasobu, na którym zdefiniowano kontrole.

Raportowanie

Filtrowanie elementów roboczych

Z przyjemnością ogłaszamy filtrowanie wykresów elementów roboczych. Ta funkcja umożliwia umieszczenie wskaźnika myszy na wykresie elementu roboczego w celu szybkiego omówienia i przechodzenia do szczegółów określonych segmentów wykresów w celu uzyskania szczegółowych informacji. Nie musisz już tworzyć zapytań niestandardowych, aby uzyskać dostęp do dokładnego potrzebnego elementu danych. Teraz możesz zapoznać się z elementami roboczymi na wykresach elementów roboczych za pomocą kilku kliknięć.

Gif to demo work item filtering.

Twoja opinia jest bezcenna w kształtowaniu przyszłości tej funkcji. Wypróbuj teraz i daj nam znać, co myślisz w naszej społeczności usługi Azure DevOps.

Następne kroki

Uwaga

Te funkcje będą wdrażane 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ę.

Screenshot Make a suggestion.

Możesz również uzyskać porady i odpowiedzi na pytania społeczności w witrynie Stack Overflow.

Dzięki,

Silviu Andrica