Share via


Zelfstudie: CI/CD instellen voor een Service Fabric-toepassing met behulp van Azure Pipelines

Deze zelfstudie is deel vier in een reeks. U ziet hoe u continue integratie en continue implementatie (CI/CD) instelt voor een Azure Service Fabric-toepassing met behulp van Azure Pipelines. Als u de zelfstudie wilt voltooien, moet u een bestaande Service Fabric-toepassing hebben. In deze zelfstudie wordt de toepassing gebruikt die wordt beschreven in deel één van de reeks zelfstudies.

In deze zelfstudie 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 de reeks zelfstudies ziet u hoe u het volgende kunt doen:

Vereisten

Voor u met deze zelfstudie begint:

De voorbeeldtoepassing om te stemmen downloaden

Als u de voorbeeldtoepassing Voting niet in deel één van deze reeks hebt gebouwd, 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

Nu u een toepassing hebt gemaakt en de toepassing hebt geïmplementeerd in Azure, kunt u 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 voor het cluster dat u eerder hebt gemaakt. Start Visual Studio en open een bestaand Service Fabric-toepassingsproject. Klik in Solution Explorer met de rechtermuisknop op de toepassing en selecteer Publiceren.

Kies een doelprofiel in uw toepassingsproject dat u wilt gebruiken voor uw werkstroom voor continue integratie, bijvoorbeeld Cloud. Geef het eindpunt voor de clusterverbinding op. Schakel het selectievakje De toepassing bijwerken in, zodat uw toepassing voor elke implementatie in Azure DevOps wordt bijgewerkt. Selecteer de koppeling Profiel opslaan om de instellingen op te slaan in het publicatieprofiel en selecteer vervolgens Annuleren om het dialoogvenster te sluiten.

Schermopname van het pushen van een profiel om de toepassing te publiceren.

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

Deel uw toepassingsbronbestanden met een project in Azure DevOps, zodat u builds kunt genereren.

Als u een nieuwe GitHub-opslagplaats en Azure DevOps-opslagplaats in Visual Studio 2022 wilt maken, selecteert u Git-opslagplaats> maken in het Git-menu.

Selecteer uw account en voer de naam van de opslagplaats in. Selecteer Maken en pushen.

Schermopname van het maken van een nieuwe Git-opslagplaats.

Als u de opslagplaats publiceert, wordt er een nieuw project gemaakt in uw Azure DevOps Services-account met dezelfde naam als de lokale opslagplaats.

Als u de zojuist gemaakte opslagplaats wilt weergeven, gaat u naar https://dev.azure.com/><organizationname>. Beweeg de muisaanwijzer over de naam van uw project en selecteer het pictogram Opslagplaatsen .

Continue levering configureren met behulp van Azure Pipelines

Een build-pijplijn voor Azure Pipelines beschrijft een werkstroom met een reeks buildstappen die opeenvolgend worden uitgevoerd. Als u wilt implementeren in een Service Fabric-cluster, maakt u een build-pijplijn die een Service Fabric-toepassingspakket en andere artefacten produceert. 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. Wanneer de build-pijplijn en release-pijplijn samen worden gebruikt, wordt de hele werkstroom uitgevoerd, te beginnen met bronbestanden en eindigend met een actieve 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://dev.azure.com/<organization-name>/VotingSample.

Selecteer het tabblad Pijplijnen en selecteer vervolgens Pijplijn maken.

Schermopname van het maken van een nieuwe pijplijn.

Selecteer De klassieke editor gebruiken om een pijplijn te maken zonder YAML te gebruiken.

Schermopname van het gebruik van de klassieke editor om een pijplijn te maken.

Voor de bron selecteert u Git voor Azure-opslagplaatsen. Selecteer VotingSample voor teamproject. Selecteer VotingApplication voor Opslagplaats. Laat de standaardvertakking staan voor handmatige en geplande builds. Selecteer vervolgens Doorgaan.

Schermopname van het selecteren van de opslagplaats in Azure DevOps.

Selecteer in Selecteer een sjabloon de Azure Service Fabric-toepassingssjabloon en selecteer vervolgens Toepassen.

Schermopname van het selecteren en bouwen van een sjabloon.

Voer bij Taken, voor de agentgroep, Azure Pipelines in. Voer windows-2022 in voor agentspecificatie.

Schermopname van het selecteren van taken.

Schakel onder Triggers het selectievakje Continue integratie inschakelen in. In Vertakkingsfilters wordt standaard de branchspecificatie toegepast op master. Selecteer Save and queue om handmatig een build te starten.

Schermopname van het selecteren van een trigger.

Hiermee worden ook triggers gebouwd na pushen of inchecken. Als u de voortgang van de build wilt controleren, selecteert u het tabblad Builds . Nadat 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 en selecteer vervolgens Nieuwe pijplijn releases>. Selecteer bij Een sjabloon selecteren de Azure Service Fabric-implementatiesjabloon en selecteer vervolgens Toepassen.

Schermopname van het selecteren van een releasesjabloon.

Selecteer Taken>nieuw om een nieuwe clusterverbinding toe te voegen.

Schermopname van het toevoegen van een clusterverbinding.

Selecteer op Nieuwe Service Fabric-Verbinding maken ion verificatie op basis van certificaat of Microsoft Entra. Geef een clustereindpunt op van tcp://mysftestcluster.southcentralus.cloudapp.azure.com:19000 (of het eindpunt van het cluster waarnaar u implementeert).

Voor verificatie op basis van certificaten voegt u de vingerafdruk van het servercertificaat toe dat wordt gebruikt om het cluster te maken. Voeg in het clientcertificaat de basis-64-codering van het certificaatbestand van de client toe. Zie de Help-informatie voor dat veld voor meer informatie over het verkrijgen van die base-64 gecodeerde weergave van het certificaat. Voeg ook het wachtwoord voor het certificaat toe. U kunt het clustercertificaat of het servercertificaat gebruiken als u geen afzonderlijk clientcertificaat hebt.

Voeg voor Microsoft Entra-referenties een waarde toe voor vingerafdruk van servercertificaat. Gebruik het servercertificaat dat u hebt gebruikt voor het maken van het cluster en de referenties die u wilt gebruiken om verbinding te maken met het cluster in gebruikersnaam en wachtwoord.

Selecteer Opslaan.

Voeg vervolgens een build-artefact toe aan de pijplijn, zodat de release-pijplijn de uitvoer van de build kan vinden. Selecteer Pijplijnartefacten>>toevoegen. Selecteer in bron (builddefinitie) de build-pijplijn die u eerder hebt gemaakt. Selecteer Toevoegen om het build-artefact op te slaan.

Schermopname van het toevoegen van een artefact.

Schakel een trigger voor continue implementatie in, zodat er automatisch een release wordt gemaakt wanneer de build is voltooid. Selecteer het bliksempictogram in het artefact, schakel de trigger in en selecteer Opslaan om de release-pijplijn op te slaan.

Schermopname van het inschakelen van de trigger.

Selecteer Create Release>Create om handmatig een release te maken. Als u de voortgang van de release wilt controleren, selecteert u het tabblad Releases .

Controleer of de implementatie is geslaagd en of de toepassing wordt uitgevoerd in het cluster. Open een webbrowser en ga naar https://mysftestcluster.southcentralus.cloudapp.azure.com:19080/Explorer/. Noteer de toepassingsversie. In dit voorbeeld is het 1.0.0.20170616.3.

Wijzigingen doorvoeren en pushen om een release te activeren

Als u wilt controleren of de pijplijn voor continue integratie werkt, controleert u enkele codewijzigingen in Azure DevOps.

Terwijl u uw code schrijft, houdt Visual Studio de bestandswijzigingen in uw project bij in de sectie Wijzigingen van het deelvenster Git-wijzigingen .

Voer bij Wijzigingen een bericht in om uw update te beschrijven en voer vervolgens uw wijzigingen door.

Schermopname van het doorvoeren van de meest recente wijzigingen.

Selecteer in Git Changes Push (de pijl-omhoog) om uw code in Azure Pipelines bij te werken.

Schermopname van de optie Push.

Als u de wijzigingen naar Azure Pipelines pusht, wordt een build geactiveerd. Als u de voortgang van de build wilt controleren, selecteert u het tabblad Pijplijnen in de toepassing op https://dev.azure.com/organizationname/VotingSample.

Wanneer de build is voltooid, wordt er automatisch een release gemaakt en wordt gestart met het upgraden van de toepassing op het cluster.

Controleer of de implementatie is geslaagd en of de toepassing wordt uitgevoerd in het cluster. Open een webbrowser en ga naar https://mysftestcluster.southcentralus.cloudapp.azure.com:19080/Explorer/. Noteer de toepassingsversie. In dit voorbeeld is het 1.0.0.20170815.3.

Schermopname van de stem-app in Service Fabric Explorer die wordt uitgevoerd in een browser, met de app-versie gemarkeerd.

De toepassing bijwerken

Breng in de toepassing wijzigingen aan de code aan. Sla de wijzigingen op en voer deze door.

Wanneer de upgrade van de toepassing begint, kunt u de voortgang van de upgrade bijhouden in Service Fabric Explorer:

Schermopname van de stem-app in Service Fabric Explorer die wordt uitgevoerd in een browser, met statusberichten gemarkeerd.

De upgrade van de toepassing kan enkele minuten duren. Wanneer de upgrade is voltooid, wordt de volgende versie uitgevoerd. In dit voorbeeld wordt versie 1.0.0.20170815.4uitgevoerd.

Schermopname van de stem-app in Service Fabric Explorer die wordt uitgevoerd in een browser, met de bijgewerkte app-versie gemarkeerd.

Volgende stap

Ga door naar de volgende zelfstudie: