Samouczek: wdrażanie aplikacji przy użyciu ciągłej integracji/ciągłego wdrażania w klastrze usługi Service Fabric

Niniejszy samouczek jest czwartą częścią serii i zawiera opis sposobu konfigurowania ciągłej integracji i ciągłego wdrażania aplikacji usługi Service Fabric za pomocą usługi Azure Pipelines. Wymagana jest istniejąca aplikacja usługi Service Fabric. Na potrzeby tego samouczka za przykład posłużyła aplikacja utworzona w temacie Tworzenie aplikacji .NET.

Część trzecia serii zawiera informacje na temat wykonywania następujących czynności:

  • Dodawanie kontroli źródła do projektu
  • Tworzenie potoku kompilacji w usłudze Azure Pipelines
  • Tworzenie potoku wydania w usłudze Azure Pipelines
  • Automatyczne wdrażanie i uaktualnianie aplikacji

Ta seria samouczków zawiera informacje na temat wykonywania następujących czynności:

Wymagania wstępne

Przed rozpoczęciem tego samouczka:

Pobieranie przykładowej aplikacji do głosowania

Jeśli nie utworzono przykładowej aplikacji Voting w części jednej z tej serii samouczków, możesz ją pobrać. W oknie polecenia uruchom następujące polecenie, aby sklonować przykładowe repozytorium aplikacji na komputer lokalny.

git clone https://github.com/Azure-Samples/service-fabric-dotnet-quickstart

Przygotowywanie profilu publikowania

Po utworzeniu aplikacji i wdrożeniu jej na platformie Azure wszystko jest gotowe do skonfigurowania ciągłej integracji. Najpierw przygotuj profil publikowania w aplikacji na potrzeby procesu wdrażania wykonywanego w ramach usługi Azure Pipelines. Profil publikowania należy skonfigurować pod kątem klastra, który został wcześniej utworzony. Uruchom program Visual Studio i otwórz istniejący projekt aplikacji usługi Service Fabric. W Eksploratorze rozwiązań kliknij prawym przyciskiem myszy aplikację i wybierz polecenie Opublikuj....

Wybierz profil docelowy w ramach projektu aplikacji na potrzeby przepływu pracy ciągłej integracji, na przykład chmurę. Określ punkt końcowy połączenia klastra. Zaznacz pole wyboru Uaktualnij aplikację, aby uaktualnić aplikację dla każdego wdrożenia w usłudze Azure DevOps. Kliknij hiperlink Zapisz, aby zapisać ustawienia w profilu publikowania, a następnie kliknij przycisk Anuluj w celu zamknięcia okna dialogowego.

Push profile

Udostępnianie rozwiązania programu Visual Studio w nowym repozytorium Git w usłudze Azure DevOps

Udostępnij pliki źródłowe aplikacji w projekcie zespołowym usługi Azure DevOps, aby umożliwić generowanie kompilacji.

Utwórz nowe lokalne repozytorium Git dla projektu, wybierając pozycję Dodaj do kontroli źródła —>Git na pasku stanu w prawym dolnym rogu Visual Studio.

W widoku Wypychanie w programie Team Explorer wybierz przycisk Opublikuj repozytorium Git w obszarze Wypychanie do usługi Azure DevOps.

Screenshot of the Team Explorer - Synchronization window in Visual Studio. The Publish to Git Repo button is highlighted under Push to Azure DevOps.

Sprawdź swój adres e-mail i z listy rozwijanej Domena usługi Azure DevOps wybierz swoje konto. Wprowadź nazwę repozytorium i wybierz polecenie Publikuj repozytorium.

Screenshot of the Push to Azure DevOps settings with the Email, Account, Repository name, and Publish Repository button highlighted.

Opublikowanie repozytorium powoduje utworzenie nowego projektu na Twoim koncie o takiej samej nazwie co lokalne repozytorium. Aby utworzyć repozytorium w istniejącym projekcie, kliknij pozycję Zaawansowane obok pola Nazwa repozytorium, a następnie wybierz projekt. Aby wyświetlić kod w Internecie, wybierz polecenie Wyświetl w Internecie.

Konfigurowanie ciągłego dostarczania za pomocą usługi Azure Pipelines

Potok kompilacji Azure Pipelines opisuje przepływ pracy składający się z zestawu kroków kompilacji wykonywanych sekwencyjnie. Utwórz potok kompilacji, który spowoduje wygenerowanie pakietu aplikacji usługi Service Fabric i innych artefaktów, na potrzeby wdrożenia w klastrze usługi Service Fabric. Dowiedz się więcej o potokach kompilacji usługi Azure Pipelines.

Potok wydania usługi Azure Pipelines opisuje przepływ pracy, który wdraża pakiet aplikacji w klastrze. Jednoczesne użycie potoku kompilacji i potoku wydania powoduje wykonanie całego przepływu pracy, zaczynając od plików źródłowych, a kończąc na aplikacji uruchomionej w klastrze. Dowiedz się więcej o potokach wydania Azure Pipelines.

Tworzenie potoku kompilacji

Otwórz przeglądarkę internetową i przejdź do nowego projektu na stronie: https://<moje_konto>.visualstudio.com/Voting/Voting%20Team/_git/Voting.

Wybierz kartę Potoki, wybierz pozycję Kompilacje, a następnie pozycję Nowy potok.

New Pipeline

Wybierz pozycję Azure Repos Git jako źródło, projekt zespołowy Voting, repozytorium Voting i domyślną gałąź master dla kompilacji ręcznych i zaplanowanych. Następnie kliknij przycisk Kontynuuj.

Select repo

W obszarze Wybierz szablon wybierz szablonaplikacji azure Service Fabric, a następnie kliknij przycisk Zastosuj.

Choose build template

W obszarze Zadania wprowadź wyrażenie „Hostowany program VS2017” jako Pulę agentów.

Select tasks

W obszarze Wyzwalacze włącz ciągłą integrację, zaznaczając pozycję Włącz ciągłą integrację. W obszarze Filtry gałęzi wartość domyślna pozycji Specyfikacja gałęzi jest ustawiona na master. Wybierz pozycję Zapisz i dodaj do kolejki, aby ręcznie uruchomić kompilację.

Select triggers

Kompilacje można również wyzwalać w ramach procesu wypychania lub ewidencjonowania. Aby sprawdzić postęp kompilacji, przejdź do karty Kompilacje . Po upewnieniu się, że kompilacja zostanie wykonana pomyślnie, zdefiniuj potok wydania, który wdraża aplikację w klastrze.

Tworzenie potoku wydania

Wybierz kartę Potoki, wybierz pozycję Wydania, a następnie wybierz pozycję + Nowy potok. W obszarze Wybieranie szablonu wybierz z listy szablon Wdrożenie usługi Azure Service Fabric, a następnie przycisk Zastosuj.

Choose release template

Wybierz pozycję Zadania-Środowisko>1, a następnie pozycję +Nowy, aby dodać nowe połączenie klastra.

Add cluster connection

W widoku Dodawanie nowego połączenia z usługą Service Fabric wybierz uwierzytelnianie Na podstawie certyfikatu lub Azure Active Directory. Określ nazwę połączenia dla klastra „mysftestcluster” i następujący punkt końcowy klastra „tcp://mysftestcluster.southcentralus.cloudapp.azure.com:19000” (lub punkt końcowy klastra, w którym przeprowadzane jest wdrożenie).

W przypadku uwierzytelniania opartego na certyfikatach dodaj odcisk palca certyfikatu serwera certyfikatu używanego do utworzenia klastra. W obszarze Certyfikat klienta dodaj plik certyfikatu klienta zakodowany przy użyciu kodowania base-64. Zobacz pomoc podręczną dla tego pola, aby uzyskać informacje dotyczące sposobu uzyskania reprezentacji certyfikatu w kodowaniu base-64. Dodaj również Hasło certyfikatu. Jeśli nie masz osobnego certyfikatu klienta, możesz użyć certyfikatu klastra lub serwera.

W przypadku poświadczeń usługi Azure Active Directory dodaj Odcisk palca certyfikatu serwera dla certyfikatu serwera użytego do utworzenia klastra oraz poświadczenia w polach Nazwa użytkownika i Hasło, których chcesz użyć w celu nawiązania połączenia z klastrem.

Kliknij przycisk Dodaj, aby zapisać połączenie klastra.

Następnie dodaj artefakt kompilacji do potoku, aby umożliwić potokowi wydania odnalezienie danych wyjściowych kompilacji. Wybierz pozycję Potok i Artifacts-+>Dodaj. W obszarze Źródło (definicja kompilacji) wybierz wcześniej utworzony potok kompilacji. Kliknij przycisk Dodaj, aby zapisać artefakt kompilacji.

Add artifact

Włącz wyzwalacz ciągłego wdrażania, aby umożliwić automatyczne tworzenie wydania po zakończeniu kompilacji. Kliknij ikonę pioruna w artefakcie, włącz wyzwalacz, a następnie kliknij przycisk Zapisz w celu zapisania potoku wydania.

Enable trigger

Wybierz pozycję + Wydanie —>Utwórz wydanie —>Utwórz, aby ręcznie utworzyć wydanie. Postęp wydawania możesz monitorować na karcie Wydania.

Sprawdź, czy wdrożenie zakończyło się pomyślnie, a aplikacja została uruchomiona w klastrze. Otwórz przeglądarkę internetową i przejdź pod adres http://mysftestcluster.southcentralus.cloudapp.azure.com:19080/Explorer/. Zwróć uwagę na wersję aplikacji. W tym przykładzie jest to „1.0.0.20170616.3”.

Zatwierdzanie i wypychanie zmian, wyzwalanie wydania

Aby upewnić się, że potok ciągłej integracji działa prawidłowo, zaewidencjonuj zmiany kodu w usłudze Azure DevOps.

Podczas pisania kodu zmiany są automatycznie śledzone przez program Visual Studio. Zatwierdź zmiany w lokalnym repozytorium Git, wybierając ikonę oczekujących zmian (Pending changes icon shows a pencil and a number.) z paska stanu w prawym dolnym rogu.

W widoku Zmiany programu Team Explorer dodaj komunikat opisujący aktualizację i zatwierdź wprowadzone zmiany.

Commit all

Wybierz niepublikowaną ikonę paska stanu zmian (Unpublished changes) lub widok Synchronizacja w programie Team Explorer. Wybierz pozycję Wypchnij, aby zaktualizować kod w usłudze Azure Pipelines.

Push changes

Wypychanie zmian do usługi Azure Pipelines automatycznie wyzwala kompilację. Po pomyślnym zakończeniu potoku kompilacji automatycznie tworzone jest wydanie, które rozpoczyna uaktualnianie aplikacji w klastrze.

Aby sprawdzić postęp kompilacji, przejdź do karty Kompilacje modułu Team Explorer w programie Visual Studio. Po upewnieniu się, że kompilacja jest wykonywana prawidłowo, zdefiniuj potok wydania, który wdraża aplikację w klastrze.

Sprawdź, czy wdrożenie zakończyło się pomyślnie, a aplikacja została uruchomiona w klastrze. Otwórz przeglądarkę internetową i przejdź pod adres http://mysftestcluster.southcentralus.cloudapp.azure.com:19080/Explorer/. Zwróć uwagę na wersję aplikacji. W tym przykładzie jest to „1.0.0.20170815.3”.

Screenshot of the Voting app in Service Fabric Explorer running in a browser window. The app version

Aktualizowanie aplikacji

Wprowadź zmiany w kodzie aplikacji. Zapisz i zatwierdź zmiany, postępując zgodnie z poprzednimi krokami.

Po rozpoczęciu uaktualnienia aplikacji możesz obserwować jego postęp w narzędziu Service Fabric Explorer:

Screenshot of the Voting app in Service Fabric Explorer. The Status message

Uaktualnianie aplikacji może potrwać kilka minut. Po zakończeniu uaktualniania aplikacja zostanie uruchomiona w następnej wersji. W tym przykładzie „1.0.0.20170815.4”.

Screenshot of the Voting app in Service Fabric Explorer running in a browser window. The updated app version

Następne kroki

W niniejszym samouczku zawarto informacje na temat wykonywania następujących czynności:

  • Dodawanie kontroli źródła do projektu
  • Tworzenie potoku kompilacji
  • Tworzenie potoku wydania
  • Automatyczne wdrażanie i uaktualnianie aplikacji

Przejdź do następnego samouczka: