Azure DevOps gebruiken om een CI/CD-pijplijn te maken voor een Stream Analytics-taak

In dit artikel leert u hoe u Azure DevOps-build- en releasepijplijnen maakt met behulp van Azure Stream Analytics CI/CD-hulpprogramma's.

Uw Stream Analytics-project doorvoeren

Voordat u begint, voert u de volledige Stream Analytics-projecten als bronbestanden door naar een Azure DevOps-opslagplaats . U kunt verwijzen naar deze voorbeeldopslagplaats en Stream Analytics-projectbroncode in Azure Pipelines.

In de stappen in dit artikel wordt een Stream Analytics Visual Studio Code-project gebruikt. Als u een Visual Studio-project gebruikt, volgt u de stappen in Automate-builds, tests en implementaties van een Azure Stream Analytics-taak met behulp van CI/CD-hulpprogramma's.

Een build-pijplijn maken

In deze sectie leert u hoe u een build-pijplijn maakt.

  1. Open een webbrowser en navigeer naar uw project in Azure DevOps.

  2. Selecteer Builds onder Pijplijnen in het linkernavigatiemenu. Selecteer vervolgens Nieuwe pijplijn.

    Create new Azure Pipeline

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

  4. Selecteer uw brontype, teamproject en opslagplaats. Selecteer vervolgens Doorgaan.

    Select Azure Stream Analytics project

  5. Selecteer Lege taak op de pagina Een sjabloon kiezen.

Npm-pakket installeren

  1. Selecteer op de pagina Taken het plusteken naast agenttaak 1. Voer npm in bij het zoeken naar taken en selecteer npm.

    Select npm task

  2. Geef de taak een weergavenaam. Wijzig de opdrachtoptie in aangepast en voer de volgende opdracht in Opdracht en argumenten in. Laat de overige standaardopties staan.

    install -g azure-streamanalytics-cicd
    

    Enter configurations for npm task

Voer de volgende stappen uit als u een gehoste Linux-agent moet gebruiken:

  1. Selecteer uw agentspecificatie

    Screenshot of selecting agent specification.

  2. Selecteer op de pagina Taken het plusteken naast agenttaak 1. Voer de opdrachtregel in de zoekfunctie van de taak in en selecteer opdrachtregel.

    Screenshot of searching commandline task.

  3. Geef de taak een weergavenaam. voer de volgende opdracht in Script in. Laat de overige standaardopties staan.

    sudo npm install -g azure-streamanalytics-cicd --unsafe-perm=true --allow-root
    

    Screenshot of entering script for cmd task.

Een build-taak toevoegen

  1. Selecteer + Toevoegen in pijplijnvariabelen op de pagina Variabelen. Voeg de volgende variabelen toe. Stel de volgende waarden in op basis van uw voorkeur:

    Naam van de variabele Weergegeven als
    projectRootPath [YourProjectName]
    outputPath Uitvoer
    deployPath Implementeren
  2. Selecteer op de pagina Taken het plusteken naast agenttaak 1. Zoek de opdrachtregel.

  3. Geef de taak een weergavenaam en voer het volgende script in. Wijzig het script met de naam van de opslagplaats en de projectnaam.

    Notitie

    Het wordt ten zeerste aanbevolen om de build --v2 ARM-sjabloon te genereren voor implementatie. De nieuwe ARM-sjabloon heeft minder parameters en behoudt dezelfde functionaliteit als de vorige versie.

    Houd er rekening mee dat de oudere ARM-sjabloon binnenkort wordt afgeschaft. Alleen sjablonen die met deze build --v2 sjabloon worden gemaakt, ontvangen updates en oplossingen voor fouten.

    azure-streamanalytics-cicd build --v2 -project $(projectRootPath)/asaproj.json -outputpath $(projectRootPath)/$(outputPath)/$(deployPath)
    

    De afbeelding maakt gebruik van een Stream Analytics Visual Studio Code-project als voorbeeld.

    Enter configurations for command-line task visual studio code

Een testtaak toevoegen

  1. Selecteer + Toevoegen in pijplijnvariabelen op de pagina Variabelen. Voeg de volgende variabelen toe. Wijzig de waarden met de naam van het uitvoerpad en de naam van de opslagplaats.

    Naam van de variabele Weergegeven als
    testPath Testen

    Add pipeline variables

  2. Selecteer op de pagina Taken het plusteken naast agenttaak 1. Zoek de opdrachtregel.

  3. Geef de taak een weergavenaam en voer het volgende script in. Wijzig het script met de naam van het projectbestand en het pad naar het testconfiguratiebestand.

    Zie geautomatiseerde testinstructies voor meer informatie over het toevoegen en configureren van testcases.

    azure-streamanalytics-cicd test -project $(projectRootPath)/asaproj.json -outputpath $(projectRootPath)/$(outputPath)/$(testPath) -testConfigPath $(projectRootPath)/test/testConfig.json 
    

    Enter configurations for command-line task

Een taak Bestanden kopiëren toevoegen

U moet een kopieerbestandstaak toevoegen om het testoverzichtsbestand en de Azure Resource Manager-sjabloonbestanden te kopiëren naar de artefactmap.

  1. Selecteer op de pagina Taken de + optie naast agenttaak 1. Zoek bestanden kopiëren. Voer vervolgens de volgende configuraties in. Als u inhoud toewijst **, worden alle bestanden van de testresultaten gekopieerd.

    Parameter Invoer
    Weergavenaam Bestanden kopiëren naar: $(build.artifactstagingdirectory)
    Bronmap $(system.defaultworkingdirectory)/$(outputPath)/
    Inhoud **
    Doelmap $(build.artifactstagingdirectory)
  2. Besturingselementopties uitvouwen. Selecteer Zelfs als een vorige taak is mislukt, tenzij de build is geannuleerd in Deze taak uitvoeren.

    Enter configurations for copy task

Een taak buildartefacten publiceren toevoegen

  1. Selecteer op de pagina Taken het plusteken naast agenttaak 1. Zoek naar buildartefacten publiceren en selecteer de optie met het zwarte pijlpictogram.

  2. Besturingselementopties uitvouwen. Selecteer Zelfs als een vorige taak is mislukt, tenzij de build is geannuleerd in Deze taak uitvoeren.

    Enter configurations for publish task

Opslaan en uitvoeren

Zodra u klaar bent met het toevoegen van het npm-pakket, de opdrachtregel, het kopiëren van bestanden en het publiceren van taken voor buildartefacten, selecteert u Opslaan en wachtrij. Wanneer u hierom wordt gevraagd, voert u een opmerking opslaan in en selecteert u Opslaan en uitvoeren. U kunt de testresultaten downloaden van de overzichtspagina van de pijplijn.

De build- en testresultaten controleren

Het testoverzichtsbestand en de Azure Resource Manager-sjabloonbestanden vindt u in de gepubliceerde map.

Check build and test result

Check artifacts

Release met Azure Pipelines

In deze sectie leert u hoe u een release-pijplijn maakt.

Open een webbrowser en navigeer naar uw Azure Stream Analytics Visual Studio Code-project.

  1. Selecteer Releases onder Pijplijnen in het linkernavigatiemenu. Selecteer vervolgens Nieuwe pijplijn.

  2. Selecteer beginnen met een lege taak.

  3. Selecteer + Een artefact toevoegen in het vak Artefacten. Selecteer onder Bron de build-pijplijn die u hebt gemaakt en selecteer Toevoegen.

    Enter build pipeline artifact

  4. Wijzig de naam van fase 1 om de taak te implementeren om de testomgeving te testen.

  5. Voeg een nieuwe fase toe en geef deze de implementatietaak een naam in de productieomgeving.

Implementatietaken toevoegen

Notitie

De Override template parameters is niet van toepassing op ARM --v2-builds omdat parameters worden doorgegeven als objecten. U kunt dit oplossen door een PowerShell-script in uw pijplijn op te nemen om het parameterbestand als JSON te lezen en de benodigde parameterwijzigingen aan te brengen.

Raadpleeg ConvertFrom-Json en Update Object in het JSON-bestand voor meer informatie over het toevoegen van het PowerShell-script.

  1. Selecteer in de vervolgkeuzelijst Taken de optie Taak implementeren om de testomgeving te testen.

  2. Selecteer de + volgende agenttaak en zoek naar arm-sjabloonimplementatie. Voer de volgende parameters in:

    Parameter Weergegeven als
    Display name MyASAProject implementeren
    Azure-abonnement Kies uw abonnement.
    Actie Resourcegroep maken of bijwerken
    Resourcegroep Kies een naam voor de testresourcegroep die uw Stream Analytics-taak bevat.
    Locatie Kies de locatie van de testresourcegroep.
    Sjabloonlocatie Gekoppeld artefact
    Template $(System.DefaultWorkingDirectory)/_azure-streamanalytics-cicd-demo-CI-Deploy/drop/myASAProject.JobTemplate.json
    Sjabloonparameters $(System.DefaultWorkingDirectory)/_azure-streamanalytics-cicd-demo-CI-Deploy/drop/myASAProject.JobTemplate.parameters.json
    Sjabloonparameters overschrijven -<arm_template_parameter> 'uw waarde'. U kunt de parameters definiëren met behulp van variabelen.
    Implementatiemodus Incrementeel
  3. Selecteer in de vervolgkeuzelijst Taken de optie Taak implementeren in productieomgeving.

  4. Selecteer de + volgende agenttaak en zoek naar arm-sjabloonimplementatie. Voer de volgende parameters in:

    Parameter Weergegeven als
    Display name MyASAProject implementeren
    Azure-abonnement Kies uw abonnement.
    Actie Resourcegroep maken of bijwerken
    Resourcegroep Kies een naam voor de productieresourcegroep die uw Stream Analytics-taak bevat.
    Locatie Kies de locatie van uw productieresourcegroep.
    Sjabloonlocatie Gekoppeld artefact
    Template $(System.DefaultWorkingDirectory)/_azure-streamanalytics-cicd-demo-CI-Deploy/drop/myASAProject.JobTemplate.json
    Sjabloonparameters $(System.DefaultWorkingDirectory)/_azure-streamanalytics-cicd-demo-CI-Deploy/drop/myASAProject.JobTemplate.parameters.json
    Sjabloonparameters overschrijven -<arm_template_parameter> 'uw waarde'
    Implementatiemodus Incrementeel

Een release maken

Als u een release wilt maken, selecteert u Release maken in de rechterbovenhoek.

Create a release using Azure Pipelines

Volgende stappen