Integracja z zarządzaniem zmianami usługi ServiceNow
Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
Usługa Azure Pipelines obsługuje integrację z usługą ServiceNow w celu poprawy współpracy między zespołami deweloperów i IT. Dzięki włączeniu zarządzania zmianami w potokach wydań zespoły mogą zmniejszyć ryzyko związane ze zmianami i śledzić metodologie zarządzania usługami, takie jak ITIL, jednocześnie korzystając z usługi Azure Pipelines.
Ten artykuł obejmuje następujące zagadnienia:
- Konfigurowanie wystąpień usługi ServiceNow.
- Uwzględnij proces zarządzania zmianami usługi ServiceNow jako bramę wydania.
- Monitorowanie procesu zarządzania zmianami z potoków wydania.
- Zachowaj zaktualizowane żądania zmian usługi ServiceNow z wynikami wdrożenia.
Wymagania wstępne
Ten samouczek rozszerza temat Używanie zatwierdzeń i bram oraz Definiowanie zatwierdzeń i kontroli.
Organizacja: Azure DevOps. Utwórz organizację, jeśli jeszcze jej nie masz.
Wystąpienie usługi ServiceNow, które nie jest deweloperem.
Konfigurowanie wystąpienia usługi ServiceNow
Zainstaluj rozszerzenie Usługi Azure Pipelines w wystąpieniu usługi ServiceNow. Aby ukończyć instalację, potrzebne są poświadczenia Hi . Aby uzyskać więcej informacji na temat instalowania aplikacji ze sklepu ServiceNow, zobacz Omówienie zakupu.
Utwórz nowego użytkownika w usłudze ServiceNow i nadaj mu następującą rolę:
x_mioms_azpipeline.pipelinesExecution
.
Konfigurowanie organizacji usługi Azure DevOps
Zainstaluj rozszerzenie ServiceNow Change Management w organizacji usługi Azure DevOps.
Utwórz nowe połączenie usługi ServiceNow w projekcie usługi Azure DevOps w następujący sposób. Alternatywnie można również użyć uwierzytelniania OAuth2.
Konfigurowanie potoku wydania
Przejdź do potoku wydania, a następnie wybierz ikonę Warunki przed wdrożeniem. Wybierz bramy i bramę przed wdrożeniem usługi ServiceNow Change Management .
Wybierz utworzone wcześniej połączenie z usługą i wypełnij wymagane pola w następujący sposób:
- Połączenie usługi ServiceNow: Połączenie ion do wystąpienia usługi ServiceNow używanego do zarządzania zmianami.
- Krótki opis: Podsumowanie zmiany.
- Opis: szczegółowy opis zmiany.
- Kategoria: kategoria zmiany. Przykład: Sprzęt, Sieć, Oprogramowanie.
- Priorytet: priorytet zmiany.
- Ryzyko: poziom ryzyka zmiany.
- Wpływ: efekt zmiany w firmie.
- Element konfiguracji: element konfiguracji (CI), do którego ma zastosowanie zmiana.
- Grupa przydziałów: grupa, do której przypisano zmianę.
- Harmonogram żądania zmiany: harmonogram zmiany, który jest honorowany przez przepływ pracy usługi ServiceNow. Data i godzina powinny być w formacie UTC, a format powinien być rrrr-MM-ddTHH:mm:ssZ. Przykład: 2018-01-31T07:56:59Z.
- Dodatkowe parametry żądania zmiany: nazwa musi być nazwą pola (nie etykietą) poprzedzoną prefiksem "u_". Przykład: u_backout_plan. Wartość musi być prawidłową wartością w usłudze ServiceNow. Nieprawidłowe wpisy są ignorowane.
- Żądany stan żądania zmiany: brama powiedzie się, a potok będzie kontynuowany, gdy stan żądania zmiany jest taki sam jak podana wartość.
- Zaawansowane: określa wyrażenie, które kontroluje, kiedy ta brama powinna zakończyć się powodzeniem. Żądanie zmiany jest zdefiniowane jako element główny['result'] w odpowiedzi z usługi ServiceNow. Przykład — "and(eq(root['result'].state, 'New'),eq(root['result'].risk, 'Low'))". Aby uzyskać więcej informacji, zobacz Wyrażenia .
- Zmienne wyjściowe: musisz określić nazwę odwołania, aby móc używać zmiennych wyjściowych w przepływie pracy wdrażania. Dostęp do zmiennych bramy można uzyskać przy użyciu polecenia "PREDEPLOYGATE" jako "prefiks" w zadaniu bez agenta. Na przykład gdy nazwa odwołania jest ustawiona na "gate1", można uzyskać numer zmiany w następujący sposób: $(PREDEPLOYGATE.gate1.CHANGE_REQUEST_NUMBER).
- CHANGE_REQUEST_NUMBER: liczba żądań zmiany.
- CHANGE_SYSTEM_ID: identyfikator systemu żądania zmiany.
Na końcu potoku wydania dodaj zadanie bez agenta z zadaniem Aktualizuj żądanie zmiany usługi ServiceNow.
- Połączenie usługi ServiceNow: Połączenie ion do wystąpienia usługi ServiceNow używanego do zarządzania zmianami.
- Numer żądania zmiany: liczba żądań zmiany do aktualizacji.
- Zaktualizowano stan żądania zmiany: stan ustawiany dla żądania zmiany. Te dane wejściowe są dostępne, jeśli wybrano stan aktualizacji.
- Zamknij kod i Zamknij uwagi: stan powrotu.
Uwaga
Zadanie Aktualizowanie żądania zmiany usługi ServiceNow zakończy się niepowodzeniem, jeśli żadne z pól żądania zmiany nie zostanie zaktualizowane podczas wykonywania. Usługa ServiceNow ignoruje nieprawidłowe pola i wartości przekazane do zadania.
Tworzenie potoku wydania
Wybierz pozycję Utwórz wydanie , aby uruchomić nowy potok wydania.
Potok powinien utworzyć nowe żądanie zmiany w usłudze ServiceNow w ramach utworzonych wcześniej warunków przed wdrożeniem.
Potok będzie czekać na powodzenie wszystkich bram w ramach tego samego interwału próbki. Aby sprawdzić numer zmiany, wybierz ikonę stanu, aby wyświetlić dzienniki potoku.
Żądanie zmiany zostanie w kolejce w usłudze ServiceNow i może być wyświetlane przez właściciela zmiany.
Potok wydania, który wyzwolił nowe żądanie zmiany, można znaleźć w sekcji Metadane usługi Azure DevOps Pipeline.
Gdy zmiana jest gotowa do implementacji (przeniesiona do stanu Implementacja ), potok wznowi wykonywanie, a stan bramy powinien zostać zwrócony pomyślnie.
Żądanie zmiany zostanie zamknięte automatycznie po wdrożeniu.
Potoki Yaml
W tym samouczku założono, że masz potok yaml z jednym etapem, który jest wdrażany w środowisku "latest".
Dodawanie sprawdzania
Przejdź do środowiska "latest", wybierz przycisk wielokropka, a następnie wybierz pozycję Zatwierdzenia i sprawdź.
Wybierz znak plus, aby dodać nowe sprawdzenie, a następnie dodaj sprawdzanie zarządzania zmianami usługi ServiceNow do środowiska. Użyj tej samej konfiguracji, która była używana dla bramy przed wdrożeniem.
Dodawanie zadania yaml
Dodaj zadanie serwera do etapu, aby zaktualizować żądanie zmiany.
Zapisz i uruchom potok. Nowe żądanie zmiany zostanie utworzone automatycznie, a potok zostanie wstrzymany i zaczeka na zakończenie kontroli.
Po zakończeniu sprawdzania potok powinien wznowić wykonywanie. Żądanie zmiany zostanie zamknięte automatycznie po wdrożeniu.
Często zadawane pytania
Pyt.: Jakie wersje usługi ServiceNow są obsługiwane?
O: Obsługujemy następujące wersje: Kingston, London, New York, Paris, Quebec, Rome, San Diego i Tokio.
O: Obsługujemy następujące wersje: Kingston, London, New York, Paris i Quebec.
O: Obsługujemy następujące wersje: San Diego, Tokio i Utah wydania.
Pyt.: Jakie typy żądań zmiany są obsługiwane?
1: Normalne, standardowe i awaryjne żądania zmian są obsługiwane w tej integracji.
Pyt.: Jak mogę ustawić dodatkowe właściwości zmiany?
1: Możesz określić dodatkowe właściwości zmiany w polu Dodatkowe parametry żądania zmiany. Użyj formatu JSON par klucz-wartość, a nazwa jest nazwą pola (a nie etykietą) poprzedzoną prefiksem u_
.
Pyt.: Czy mogę zaktualizować pola niestandardowe w żądaniu zmiany przy użyciu dodatkowych parametrów żądania zmiany?
1: Jeśli pola niestandardowe są zdefiniowane w żądaniu zmiany, należy dodać mapowanie dla pól niestandardowych w mapie przekształcania zestawu importu.
Pyt.: Nie widzę wartości rozwijanych wypełnionych dla pól Kategoria, Stan i inne. Co mam robić?
O: Wtyczki Change Management Core i Change Management — State Model muszą być aktywne w wystąpieniu usługi ServiceNow, aby listy rozwijane działały. Aby uzyskać więcej informacji, zobacz Uaktualnianie zarządzania zmianami i Aktualizowanie stanów żądań zmiany.
Zasoby
- Konfigurowanie potoków wydania na potrzeby bezpiecznych wdrożeń
- Tonacja twittera jako brama wydania
- Problemy z usługą GitHub jako bramą wydania
- Tworzenie bram niestandardowych.
- Przykład biblioteki ServerTaskHelper