Använda Azure DevOps för att skapa en CI/CD-pipeline för ett Stream Analytics-jobb

I den här artikeln får du lära dig hur du skapar Azure DevOps-bygg- och versionspipelines med hjälp av Azure Stream Analytics CI/CD-verktyg.

Checka in ditt Stream Analytics-projekt

Innan du börjar måste du checka in dina fullständiga Stream Analytics-projekt som källfiler till en Azure DevOps-lagringsplats . Du kan referera till den här exempellagringsplatsen och Stream Analytics-projektets källkod i Azure Pipelines.

Stegen i den här artikeln använder ett Stream Analytics Visual Studio Code-projekt. Om du använder ett Visual Studio-projekt följer du stegen i Automatisera versioner, tester och distributioner av ett Azure Stream Analytics-jobb med hjälp av CI/CD-verktyg.

Skapa en bygg-pipeline

I det här avsnittet får du lära dig hur du skapar en bygg-pipeline.

  1. Öppna en webbläsare och navigera till projektet i Azure DevOps.

  2. Under Pipelines i den vänstra navigeringsmenyn väljer du Byggen. Välj sedan Ny pipeline.

    Create new Azure Pipeline

  3. Välj Använda den klassiska redigeraren för att skapa en pipeline utan YAML.

  4. Välj källtyp, gruppprojekt och lagringsplats. Välj sedan Fortsätt.

    Select Azure Stream Analytics project

  5. På sidan Välj en mall väljer du Tomt jobb.

Installera npm-paket

  1. På sidan Uppgifter väljer du plustecknet bredvid Agentjobb 1. Ange npm i aktivitetssökningen och välj npm.

    Select npm task

  2. Ge uppgiften ett visningsnamn. Ändra kommandoalternativet till anpassat och ange följande kommando i Kommando och argument. Låt de återstående standardalternativen vara kvar.

    install -g azure-streamanalytics-cicd
    

    Enter configurations for npm task

Använd följande steg om du behöver använda agenten hosted-Linux:

  1. Välj din agentspecifikation

    Screenshot of selecting agent specification.

  2. På sidan Uppgifter väljer du plustecknet bredvid Agentjobb 1. Ange kommandoraden i aktivitetssökningen och välj Kommandorad.

    Screenshot of searching commandline task.

  3. Ge uppgiften ett visningsnamn. ange följande kommando i Skript. Låt de återstående standardalternativen vara kvar.

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

    Screenshot of entering script for cmd task.

Lägga till en build-uppgift

  1. På sidan Variabler väljer du + Lägg till i pipelinevariabler. Lägg till följande variabler. Ange följande värden enligt dina inställningar:

    Variabelnamn Värde
    projectRootPath [YourProjectName]
    outputPath Output
    deployPath Distribuera
  2. På sidan Uppgifter väljer du plustecknet bredvid Agentjobb 1. Sök efter kommandoraden.

  3. Ge uppgiften ett visningsnamn och ange följande skript. Ändra skriptet med lagringsplatsens namn och projektnamn.

    Kommentar

    Vi rekommenderar starkt att du använder build --v2 för att generera ARM-mallen för distribution. Den nya ARM-mallen har färre parametrar samtidigt som samma funktioner som den tidigare versionen bevaras.

    Observera att den äldre ARM-mallen snart kommer att bli inaktuell, endast mallar som skapas med build --v2 kommer att få uppdateringar och felkorrigeringar.

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

    Bilden använder ett Stream Analytics Visual Studio Code-projekt som exempel.

    Enter configurations for command-line task visual studio code

Lägga till en testaktivitet

  1. På sidan Variabler väljer du + Lägg till i pipelinevariabler. Lägg till följande variabler. Ändra värdena med utdatasökvägen och lagringsplatsens namn.

    Variabelnamn Värde
    testPath Testa

    Add pipeline variables

  2. På sidan Uppgifter väljer du plustecknet bredvid Agentjobb 1. Sök efter kommandoraden.

  3. Ge uppgiften ett visningsnamn och ange följande skript. Ändra skriptet med projektfilens namn och sökvägen till testkonfigurationsfilen.

    Mer information om hur du lägger till och konfigurerar testfall finns i automatiserade testinstruktioner .

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

    Enter configurations for command-line task

Lägga till en kopieringsfilaktivitet

Du måste lägga till en kopieringsfiluppgift för att kopiera testsammanfattningsfilen och Azure Resource Manager-mallfilerna till artefaktmappen.

  1. På sidan Uppgifter väljer du + bredvid Agentjobb 1. Sök efter Kopiera filer. Ange sedan följande konfigurationer. Genom att tilldela ** till Innehåll kopieras alla filer i testresultatet.

    Parameter Indata
    Visningsnamn Kopiera filer till: $(build.artifactstagingdirectory)
    Källmapp $(system.defaultworkingdirectory)/$(outputPath)/
    Innehåll **
    Målmapp $(build.artifactstagingdirectory)
  2. Expandera Kontrollalternativ. Välj Även om en tidigare aktivitet har misslyckats, såvida inte bygget avbröts i Kör den här aktiviteten.

    Enter configurations for copy task

Lägga till en publicera byggartefakter-uppgift

  1. På sidan Uppgifter väljer du plustecknet bredvid Agentjobb 1. Sök efter Publicera byggartefakter och välj alternativet med den svarta pilikonen.

  2. Expandera Kontrollalternativ. Välj Även om en tidigare aktivitet har misslyckats, såvida inte bygget avbröts i Kör den här aktiviteten.

    Enter configurations for publish task

Spara och kör

När du är klar med att lägga till npm-paketet, kommandoraden, kopiera filer och publicera byggartefakter väljer du Spara och kö. När du uppmanas att göra det anger du en spara-kommentar och väljer Spara och kör. Du kan ladda ned testresultaten från sidan Sammanfattning i pipelinen.

Kontrollera bygg- och testresultaten

Testsammanfattningsfilen och Azure Resource Manager-mallfilerna finns i den publicerade mappen.

Check build and test result

Check artifacts

Version med Azure Pipelines

I det här avsnittet får du lära dig hur du skapar en versionspipeline.

Öppna en webbläsare och navigera till ditt Azure Stream Analytics Visual Studio Code-projekt.

  1. Under Pipelines i den vänstra navigeringsmenyn väljer du Versioner. Välj sedan Ny pipeline.

  2. Välj Starta med ett tomt jobb.

  3. I rutan Artefakter väljer du + Lägg till en artefakt. Under Källa väljer du den byggpipeline som du skapade och väljer Lägg till.

    Enter build pipeline artifact

  4. Ändra namnet på steg 1 till Distribuera jobb för att testa miljön.

  5. Lägg till en ny fas och ge den namnet Deploy job to production environment (Distribuera jobb till produktionsmiljön).

Lägga till distributionsuppgifter

Kommentar

Override template parameters Gäller inte för ARM --v2-versioner eftersom parametrar skickas som objekt. För att åtgärda detta rekommenderar vi att du inkluderar ett PowerShell-skript i pipelinen för att läsa parameterfilen som JSON och göra nödvändiga parameterändringar.

Mer information om hur du lägger till PowerShell-skriptet finns i ConvertFrom-Json och Update Object i JSON-filen.

  1. I listrutan Uppgifter väljer du Distribuera jobb för att testa miljön.

  2. + Välj nästa agentjobb och sök efter DISTRIBUTION av ARM-mallar. Ange följande parametrar:

    Parameter Värde
    Visningsnamn Distribuera myASAProject
    Azure-prenumeration Välj din prenumeration.
    Åtgärd Skapa eller uppdatera resursgrupp
    Resursgrupp Välj ett namn för den testresursgrupp som ska innehålla ditt Stream Analytics-jobb.
    Plats Välj platsen för testresursgruppen.
    Mallplats Länkad artefakt
    Template $(System.DefaultWorkingDirectory)/_azure-streamanalytics-cicd-demo-CI-Deploy/drop/myASAProject.JobTemplate.json
    Mallparametrar $(System.DefaultWorkingDirectory)/_azure-streamanalytics-cicd-demo-CI-Deploy/drop/myASAProject.JobTemplate.parameters.json
    Åsidosätt mallparametrar -<arm_template_parameter> "ditt värde". Du kan definiera parametrarna med hjälp av variabler.
    Distributionsläge Inkrementellt
  3. I listrutan Uppgifter väljer du Distribuera jobb till produktionsmiljö.

  4. + Välj nästa agentjobb och sök efter DISTRIBUTION av ARM-mallar. Ange följande parametrar:

    Parameter Värde
    Visningsnamn Distribuera myASAProject
    Azure-prenumeration Välj din prenumeration.
    Åtgärd Skapa eller uppdatera resursgrupp
    Resursgrupp Välj ett namn för den produktionsresursgrupp som ska innehålla ditt Stream Analytics-jobb.
    Plats Välj platsen för produktionsresursgruppen.
    Mallplats Länkad artefakt
    Template $(System.DefaultWorkingDirectory)/_azure-streamanalytics-cicd-demo-CI-Deploy/drop/myASAProject.JobTemplate.json
    Mallparametrar $(System.DefaultWorkingDirectory)/_azure-streamanalytics-cicd-demo-CI-Deploy/drop/myASAProject.JobTemplate.parameters.json
    Åsidosätt mallparametrar -<arm_template_parameter> "ditt värde"
    Distributionsläge Inkrementellt

Skapa en version

Om du vill skapa en version väljer du Skapa version i det övre högra hörnet.

Create a release using Azure Pipelines

Nästa steg