Zelfstudie: Een toepassing met CI/CD implementeren in een Service Fabric-cluster

Deze zelfstudie is deel vier van een reeks. Hierin wordt beschreven hoe u een continue integratie en implementatie instelt voor een Azure Service Fabric-toepassing met behulp van Azure Pipelines. Er is een bestaande Service Fabric-toepassing vereist. De toepassing die in Een .NET-toepassing bouwen is gemaakt, wordt als voorbeeld gebruikt.

In deel drie van de serie leert u het volgende:

  • Broncodebeheer aan uw project toevoegen
  • Een build-pijplijn in Azure Pipelines maken
  • Een release-pijplijn in Azure Pipelines maken
  • Automatisch een upgrade en een toepassing implementeren

In deze zelfstudiereeks leert u het volgende:

Vereisten

Voor u met deze zelfstudie begint:

De voorbeeldtoepassing om te stemmen downloaden

Als u in deel één van deze zelfstudiereeks niet de voorbeeldtoepassing om te stemmen hebt gemaakt, kunt u deze downloaden. Voer in een opdrachtvenster de volgende opdracht uit om de opslagplaats van de voorbeeld-app te klonen op uw lokale computer.

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

Een publicatieprofiel voorbereiden

U hebt een toepassing gemaakt en de toepassing in Azure geïmplementeerd. U kunt nu continue integratie instellen. Bereid eerst binnen uw toepassing een publicatieprofiel voor, dat kan worden gebruikt door het implementatieproces dat in Azure Pipelines wordt uitgevoerd. Het publicatieprofiel moet worden geconfigureerd zodat het cluster dat u eerder hebt gemaakt als doel kan dienen. Start Visual Studio en open een bestaand Service Fabric-toepassingsproject. Klik in Solution Explorer met de rechtermuisknop op de toepassing en selecteer Publish....

Kies een doelprofiel in het toepassingsproject, dat voor de werkstroom voor continue integratie kan worden gebruikt, bijvoorbeeld Cloud. Geef het eindpunt voor de clusterverbinding op. Schakel het selectievakje bij Upgrade the Application in, zodat voor elke implementatie in Azure DevOps een upgrade voor de toepassing wordt uitgevoerd. Klik op de hyperlink Save om de instellingen op te slaan in het publicatieprofiel. Klik vervolgens op Cancel om het dialoogvenster te sluiten.

Push profile

Uw Visual Studio-oplossing delen met een nieuwe Git-opslagplaats van Azure DevOps

Deel de bronbestanden van uw toepassing met een project in Azure DevOps zodat u builds kunt genereren.

Maak een nieuwe lokale Git-opslagplaats voor uw project door Toevoegen aan broncodebeheer ->Git te selecteren op de statusbalk in de rechterbenedenhoek van Visual Studio.

Ga naar de Push-weergave in Team Explorer en selecteer onder Push to Azure DevOps de knop Publish Git Repo.

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

Controleer uw e-mail en selecteer uw account in de vervolgkeuzelijst Azure DevOps Domain. Voer de naam van de opslagplaats in en selecteer Publish repository.

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

Als u de opslagplaats pusht, wordt er een nieuw project voor uw account gemaakt met dezelfde naam als de lokale opslagplaats. Als u de opslagplaats in een bestaand project wilt maken, klikt u naast de naam van de opslagplaats op Advanced en selecteert u een project. U kunt uw code op het web weergeven door See it on the web te selecteren.

Continue levering configureren met Azure Pipelines

Een build-pijplijn in Azure Pipelines beschrijft een werkstroom die bestaat uit een reeks build-stappen die achtereenvolgens worden uitgevoerd. Maak een build-pijplijn die een Service Fabric-toepassingspakket maakt en andere artefacten, om deze in een Service Fabric-cluster te implementeren. Meer informatie over build-pijplijnen van Azure Pipelines.

Een release-pijplijn van Azure Pipelines beschrijft een werkstroom waarmee een toepassingspakket in een cluster wordt geïmplementeerd. Als de build-pijplijn en de release-pijplijn samen worden gebruikt, wordt hiermee de hele werkstroom uitgevoerd, te beginnen met bronbestanden en te eindigen met het uitvoeren van een toepassing in uw cluster. Meer informatie over release-pijplijnen in Azure Pipelines.

Een build-pijplijn maken

Open een webbrowser en ga naar uw nieuwe project op: https://<myaccount>.visualstudio.com/Voting/Voting%20Team/_git/Voting.

Selecteer het tabblad Pijplijnen, vervolgens Builds en klik daarna op Nieuwe pijplijn.

New Pipeline

Selecteer Azure Repos Git als de bron, Voting Team project, Voting Repository en master standaardbranch voor handmatige en geplande builds. Klik vervolgens op Doorgaan.

Select repo

Selecteer in Select a template de sjabloon Azure Service Fabric Application en klik op Apply.

Choose build template

Voer in Taken Hosted VS2017 in als de Agentgroep.

Select tasks

Schakel onder Triggers continue integratie in door Enable continuous integration in te schakelen. Binnen Branchfilters zijn de standaardwaarden voor Branchspecificatie ingesteld op master. Selecteer Save and queue om handmatig een build te starten.

Select triggers

Hiermee worden ook triggers gebouwd na pushen of inchecken. Als u de voortgang van de build wilt controleren, gaat u naar het tabblad Builds . Zodra u hebt gecontroleerd of de build is uitgevoerd, definieert u een release-pijplijn waarmee uw toepassing in een cluster wordt geïmplementeerd.

Een release-pijplijn maken

Selecteer het tabblad Pijplijnen, vervolgens Releases en daarna + Nieuwe pijplijn. Selecteer in Select a template de sjabloon Azure Service Fabric Deployment in de lijst en vervolgens Apply.

Choose release template

Selecteer Tasks-Environment> 1 en vervolgens +New om een nieuwe clusterverbinding toe te voegen.

Add cluster connection

Selecteer in de weergave Nieuwe Service Fabric-Verbinding maken ie verificatie op basis van certificaat of Microsoft Entra-id. Geef de verbindingsnaam mysftestcluster op en het clustereindpunt tcp://mysftestcluster.southcentralus.cloudapp.azure.com:19000 (of het eindpunt van het cluster waarin de implementatie wordt uitgevoerd).

Voor verificatie op basis van verificatie voegt u de vingerafdruk voor servercertificaat toe van het servercertificaat waarmee het cluster is gemaakt. Voeg in het clientcertificaat de basis-64-codering van het certificaatbestand van de client toe. Zie het pop-upitem met de Help voor dat veld voor informatie over hoe u de basis-64-representatie van het certificaat ophaalt. Voeg ook het wachtwoord voor het certificaat toe. U kunt het cluster- of het servercertificaat gebruiken als u geen apart clientcertificaat hebt.

Voor Microsoft Entra-referenties voegt u de vingerafdruk van het servercertificaat toe van het servercertificaat dat wordt gebruikt om het cluster te maken en de referenties die u wilt gebruiken om verbinding te maken met het cluster in de velden Gebruikersnaam en Wachtwoord.

Klik op Add om de clusterverbinding op te slaan.

Voeg vervolgens een build-artefact toe aan de pijplijn, zodat met de release-pijplijn de uitvoer van de build kan worden gevonden. Selecteer Pijplijn en artefacten->+Toevoegen. Selecteer in Source (Build definition) de build-pijplijn die u eerder hebt gemaakt. Klik op Add om het build-artefact op te slaan.

Add artifact

Schakel een trigger voor continue implementatie in, zodat automatisch een release wordt gemaakt als de build wordt voltooid. Klik op het bliksempictogram in het artefact, schakel de trigger in en klik op Save om de release-pijplijn op te slaan.

Enable trigger

Selecteer + Release -> Een release maken -> Maken om handmatig een release te maken. U kunt de voortgang van de release volgen op het tabblad Releases.

Controleer of de implementatie is gelukt en de toepassing in het cluster wordt uitgevoerd. Open een webbrowser en ga naar http://mysftestcluster.southcentralus.cloudapp.azure.com:19080/Explorer/. Noteer de versie van de toepassing (in dit voorbeeld 1.0.0.20170616.3).

Wijzigingen doorvoeren en pushen, een release activeren

Controleer of de pijplijn voor continue integratie correct functioneert door enkele codewijzigingen aan te brengen in Azure DevOps.

Terwijl u de code schrijft, worden de wijzigingen automatisch in Visual Studio bijgehouden. Voer wijzigingen door in uw lokale Git-opslagplaats door het pictogram wijzigingen in behandeling te selecteren (Pending changes icon shows a pencil and a number.) op de statusbalk in de rechterbenedenhoek.

Voeg aan de weergave Changes in Team Explorer een bericht toe waarin u de update beschrijft en voer de wijzigingen door.

Commit all

Selecteer het pictogram van de niet-gepubliceerde wijzigingenstatusbalk (Unpublished changes) of de synchronisatieweergave in Team Explorer. Selecteer Push om de code in Azure Pipelines bij te werken.

Push changes

Als u de wijzigingen naar Azure Pipelines pusht, wordt er automatisch een build geactiveerd. Als de build-pijplijn wordt voltooid, wordt er automatisch een release gemaakt en wordt de toepassing in het cluster bijgewerkt.

Als u de voortgang van de build wilt controleren, schakelt u over naar het tabblad Builds in Team Explorer in Visual Studio. Als u hebt gecontroleerd of de build correct wordt uitgevoerd, definieert u een release-pijplijn waarmee uw toepassing in een cluster wordt geïmplementeerd.

Controleer of de implementatie is gelukt en de toepassing in het cluster wordt uitgevoerd. Open een webbrowser en ga naar http://mysftestcluster.southcentralus.cloudapp.azure.com:19080/Explorer/. Noteer de versie van de toepassing (in dit voorbeeld 1.0.0.20170815.3).

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

De toepassing bijwerken

Breng in de toepassing wijzigingen aan de code aan. Sla de wijzigingen op en voer ze door aan de hand van de voorgaande stappen.

Zodra de upgrade van de toepassing wordt uitgevoerd, kunt u de voortgang ervan volgen in Service Fabric Explorer:

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

Het kan enkele minuten duren voordat de toepassing is bijgewerkt. Als het bijwerken is voltooid, wordt de volgende versie door de toepassing uitgevoerd. In dit voorbeeld 1.0.0.20170815.4.

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

Volgende stappen

In deze zelfstudie heeft u het volgende geleerd:

  • Broncodebeheer aan uw project toevoegen
  • Een build-pijplijn maken
  • Een release-pijplijn maken
  • Automatisch een upgrade en een toepassing implementeren

Ga door naar de volgende zelfstudie: