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.
Öppna en webbläsare och navigera till projektet i Azure DevOps.
Under Pipelines i den vänstra navigeringsmenyn väljer du Byggen. Välj sedan Ny pipeline.
Välj Använda den klassiska redigeraren för att skapa en pipeline utan YAML.
Välj källtyp, gruppprojekt och lagringsplats. Välj sedan Fortsätt.
På sidan Välj en mall väljer du Tomt jobb.
Installera npm-paket
På sidan Uppgifter väljer du plustecknet bredvid Agentjobb 1. Ange npm i aktivitetssökningen och välj npm.
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
Använd följande steg om du behöver använda agenten hosted-Linux:
Välj din agentspecifikation
På sidan Uppgifter väljer du plustecknet bredvid Agentjobb 1. Ange kommandoraden i aktivitetssökningen och välj Kommandorad.
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
Lägga till en build-uppgift
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 På sidan Uppgifter väljer du plustecknet bredvid Agentjobb 1. Sök efter kommandoraden.
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.
Lägga till en testaktivitet
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 På sidan Uppgifter väljer du plustecknet bredvid Agentjobb 1. Sök efter kommandoraden.
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
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.
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)
Expandera Kontrollalternativ. Välj Även om en tidigare aktivitet har misslyckats, såvida inte bygget avbröts i Kör den här aktiviteten.
Lägga till en publicera byggartefakter-uppgift
På sidan Uppgifter väljer du plustecknet bredvid Agentjobb 1. Sök efter Publicera byggartefakter och välj alternativet med den svarta pilikonen.
Expandera Kontrollalternativ. Välj Även om en tidigare aktivitet har misslyckats, såvida inte bygget avbröts i Kör den här aktiviteten.
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.
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.
Under Pipelines i den vänstra navigeringsmenyn väljer du Versioner. Välj sedan Ny pipeline.
Välj Starta med ett tomt jobb.
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.
Ändra namnet på steg 1 till Distribuera jobb för att testa miljön.
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.
I listrutan Uppgifter väljer du Distribuera jobb för att testa miljön.
+ 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 I listrutan Uppgifter väljer du Distribuera jobb till produktionsmiljö.
+ 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.