Korzystanie z pakietu NuGet ciągłej integracji/ciągłego wdrażania usługi Azure Stream Analytics na potrzeby integracji i programowania
W tym artykule opisano sposób używania pakietu NuGet ciągłej integracji/ciągłego wdrażania usługi Azure Stream Analytics w celu skonfigurowania procesu ciągłej integracji i wdrażania.
Użyj wersji 2.3.0000.0 lub nowszej narzędzi usługi Stream Analytics dla programu Visual Studio , aby uzyskać pomoc techniczną dla programu MSBuild.
Dostępny jest pakiet NuGet: Microsoft.Azure.Stream Analytics.CICD. Udostępnia on narzędzia MSBuild, lokalne uruchamianie i wdrażanie, które obsługują proces ciągłej integracji i wdrażania projektów programu Visual Studio usługi Stream Analytics.
Uwaga
Pakiet NuGet może być używany tylko z wersją 2.3.0000.0 lub nowszą wersją narzędzi Stream Analytics Tools for Visual Studio. Jeśli masz projekty utworzone w poprzednich wersjach narzędzi programu Visual Studio, wystarczy otworzyć je przy użyciu wersji 2.3.0000.0 lub nowszej i zapisać. Następnie nowe możliwości są włączone.
Aby uzyskać więcej informacji, zobacz Narzędzia usługi Stream Analytics dla programu Visual Studio.
MSBuild
Podobnie jak w przypadku standardowego środowiska programu Visual Studio MSBuild, aby utworzyć projekt, masz dwie opcje. Możesz kliknąć prawym przyciskiem myszy projekt, a następnie wybrać polecenie Kompiluj. Możesz również użyć programu MSBuild w pakiecie NuGet z poziomu wiersza polecenia.
./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"
Gdy projekt programu Visual Studio usługi Stream Analytics zostanie pomyślnie skompilowana, wygeneruje on następujące dwa pliki szablonów usługi Azure Resource Manager w folderze bin/[Debug/Retail]/Deploy :
Plik szablonu usługi Resource Manager
[ProjectName].JobTemplate.json
Plik parametrów usługi Resource Manager
[ProjectName].JobTemplate.parameters.json
Domyślne parametry w pliku parameters.json pochodzą z ustawień w projekcie programu Visual Studio. Jeśli chcesz wdrożyć w innym środowisku, zastąp odpowiednio parametry.
Uwaga
Dla wszystkich poświadczeń wartości domyślne są ustawione na wartość null. Przed wdrożeniem w chmurze wymagane jest ustawienie wartości.
"Input_EntryStream_sharedAccessPolicyKey": {
"value": null
},
Dowiedz się więcej na temat wdrażania przy użyciu pliku szablonu usługi Resource Manager i programu Azure PowerShell. Dowiedz się więcej na temat używania obiektu jako parametru w szablonie usługi Resource Manager.
Aby użyć tożsamości zarządzanej dla usługi Azure Data Lake Store Gen2 jako ujścia danych wyjściowych, przed wdrożeniem na platformie Azure należy podać dostęp do jednostki usługi przy użyciu programu PowerShell. Dowiedz się więcej na temat wdrażania usługi ADLS Gen2 przy użyciu tożsamości zarządzanej przy użyciu szablonu usługi Resource Manager.
Narzędzie wiersza polecenia
Kompilowanie projektu
Pakiet NuGet ma narzędzie wiersza polecenia o nazwie SA.exe. Obsługuje kompilację projektu i lokalne testowanie na dowolnym komputerze, którego można używać w procesie ciągłej integracji i ciągłego dostarczania.
Pliki wdrażania są domyślnie umieszczane w bieżącym katalogu. Ścieżkę wyjściową można określić przy użyciu następującego parametru -OutputPath:
./tools/SA.exe build -Project [Your Project Full Path] [-OutputPath <outputPath>]
Lokalne testowanie skryptu
Jeśli projekt określił lokalne pliki wejściowe w programie Visual Studio, możesz uruchomić zautomatyzowany test skryptu przy użyciu polecenia localrun . Wynik wyjściowy jest umieszczany w bieżącym katalogu.
localrun -Project [ProjectFullPath]
Generowanie pliku definicji zadania do użycia z interfejsem API programu PowerShell usługi Stream Analytics
Polecenie arm przyjmuje szablon zadania i pliki parametrów szablonu zadania wygenerowane za pomocą kompilacji jako dane wejściowe. Następnie łączy je w plik JSON definicji zadania, który może być używany z interfejsem API programu PowerShell usługi Stream Analytics.
arm -JobTemplate <templateFilePath> -JobParameterFile <jobParameterFilePath> [-OutputFile <asaArmFilePath>]
Przykład:
./tools/SA.exe arm -JobTemplate "ProjectA.JobTemplate.json" -JobParameterFile "ProjectA.JobTemplate.parameters.json" -OutputFile "JobDefinition.json"