Het Azure Stream Analytics CI/CD NuGet-pakket gebruiken voor integratie en ontwikkeling

In dit artikel wordt beschreven hoe u het NuGet-pakket azure Stream Analytics CI/CD gebruikt om een doorlopend integratie- en implementatieproces in te stellen.

Gebruik versie 2.3.0000.0 of hoger van Stream Analytics-hulpprogramma's voor Visual Studio om ondersteuning te krijgen voor MSBuild.

Er is een NuGet-pakket beschikbaar: Microsoft.Azure.Stream Analytics.CICD. Het biedt de MSBuild-, lokale uitvoerings- en implementatiehulpprogramma's die ondersteuning bieden voor het continue integratie- en implementatieproces van Stream Analytics Visual Studio-projecten.

Notitie

Het NuGet-pakket kan alleen worden gebruikt met de versie 2.3.0000.0 of hoger van Stream Analytics Tools voor Visual Studio. Als u projecten hebt gemaakt in eerdere versies van Visual Studio-hulpprogramma's, opent u ze met de versie 2.3.0000.0 of hoger en slaat u deze op. Vervolgens zijn de nieuwe mogelijkheden ingeschakeld.

Zie Stream Analytics-hulpprogramma's voor Visual Studio voor meer informatie.

MSBuild

Net als de standaard Visual Studio MSBuild-ervaring hebt u twee opties om een project te bouwen. U kunt met de rechtermuisknop op het project klikken en vervolgens Build kiezen. U kunt MSBuild ook gebruiken in het NuGet-pakket vanaf de opdrachtregel.

./build/msbuild /t:build [Your Project Full Path] /p:CompilerTaskAssemblyFile=Microsoft.WindowsAzure.StreamAnalytics.Common.CompileService.dll  /p:ASATargetsFilePath="[NuGet Package Local Path]\build\StreamAnalytics.targets"

Wanneer een Stream Analytics Visual Studio-project met succes wordt gebouwd, worden de volgende twee Azure Resource Manager-sjabloonbestanden gegenereerd onder de map Bin/[Debug/Retail]/Deploy :

  • Resource Manager-sjabloonbestand

    [ProjectName].JobTemplate.json

  • Resource Manager-parametersbestand

    [ProjectName].JobTemplate.parameters.json

De standaardparameters in het parameters.json-bestand zijn afkomstig van de instellingen in uw Visual Studio-project. Als u wilt implementeren in een andere omgeving, vervangt u de parameters dienovereenkomstig.

Notitie

Voor alle referenties worden de standaardwaarden ingesteld op null. U moet de waarden instellen voordat u in de cloud implementeert.

"Input_EntryStream_sharedAccessPolicyKey": {
      "value": null
    },

Meer informatie over het implementeren met een Resource Manager-sjabloonbestand en Azure PowerShell. Meer informatie over het gebruik van een object als parameter in een Resource Manager-sjabloon.

Als u Managed Identity voor Azure Data Lake Store Gen2 wilt gebruiken als uitvoersink, moet u Toegang tot de service-principal opgeven met behulp van PowerShell voordat u implementeert in Azure. Meer informatie over het implementeren van ADLS Gen2 met beheerde identiteit met een Resource Manager-sjabloon.

Opdrachtregelprogramma

Het project bouwen

Het NuGet-pakket heeft een opdrachtregelprogramma met de naam SA.exe. Het biedt ondersteuning voor projectbuild en lokaal testen op een willekeurige machine, die u kunt gebruiken in uw continue integratie en continue leveringsproces.

De implementatiebestanden worden standaard onder de huidige map geplaatst. U kunt het uitvoerpad opgeven met behulp van de volgende parameter -OutputPath:

./tools/SA.exe build -Project [Your Project Full Path] [-OutputPath <outputPath>] 

Het script lokaal testen

Als uw project lokale invoerbestanden in Visual Studio heeft opgegeven, kunt u een geautomatiseerde scripttest uitvoeren met behulp van de localrun-opdracht . Het uitvoerresultaat wordt onder de huidige map geplaatst.

localrun -Project [ProjectFullPath]

Een taakdefinitiebestand genereren voor gebruik met de Stream Analytics PowerShell-API

Met de arm-opdracht worden de taaksjabloon- en taaksjabloonparameterbestanden gebruikt die worden gegenereerd via build als invoer. Vervolgens worden ze gecombineerd tot een JSON-bestand met taakdefinities dat kan worden gebruikt met de Stream Analytics PowerShell-API.

arm -JobTemplate <templateFilePath> -JobParameterFile <jobParameterFilePath> [-OutputFile <asaArmFilePath>]

Voorbeeld:

./tools/SA.exe arm -JobTemplate "ProjectA.JobTemplate.json" -JobParameterFile "ProjectA.JobTemplate.parameters.json" -OutputFile "JobDefinition.json" 

Volgende stappen