mirror of
https://github.com/saymrwulf/onnxruntime.git
synced 2026-07-24 19:43:35 +00:00
removed all other stages + added nuget download
This commit is contained in:
parent
b562e34be7
commit
f31c1caf50
3 changed files with 9 additions and 992 deletions
|
|
@ -108,187 +108,3 @@ stages:
|
|||
SpecificArtifact: ${{ parameters.SpecificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
QnnSDKVersion: ${{ parameters.QnnSdk }}
|
||||
|
||||
- template: stages/java-cuda-packaging-stage.yml
|
||||
parameters:
|
||||
CudaVersion: 11.8
|
||||
SpecificArtifact: ${{ parameters.SpecificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
|
||||
- template: stages/nuget-combine-cuda-stage.yml
|
||||
parameters:
|
||||
DoCompliance: ${{ parameters.DoCompliance }}
|
||||
CudaVersion: 11.8
|
||||
RunOnnxRuntimeTests: ${{ parameters.RunOnnxRuntimeTests }}
|
||||
UseIncreasedTimeoutForTests: ${{ parameters.UseIncreasedTimeoutForTests }}
|
||||
win_trt_home: ${{ variables.win_trt_home }}
|
||||
win_cuda_home: ${{ variables.win_cuda_home }}
|
||||
DoEsrp: ${{ parameters.DoEsrp }}
|
||||
IsReleaseBuild: ${{ parameters.IsReleaseBuild }}
|
||||
buildJava: true
|
||||
buildNodejs: true
|
||||
SpecificArtifact: ${{ parameters.SpecificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
|
||||
|
||||
- template: nuget/templates/dml-vs-2022.yml
|
||||
parameters:
|
||||
AgentPool: 'onnxruntime-Win2022-GPU-dml-A10'
|
||||
IsReleaseBuild: ${{ parameters.IsReleaseBuild }}
|
||||
ArtifactName: 'drop-nuget-dml'
|
||||
StageName: 'Windows_CI_GPU_DML_Dev'
|
||||
BuildCommand: --build_dir $(Build.BinariesDirectory) --skip_submodule_sync --build_shared_lib --enable_onnx_tests --enable_wcos --use_telemetry --use_dml --use_winml --build_nodejs --cmake_generator "Visual Studio 17 2022"
|
||||
BuildArch: 'x64'
|
||||
msbuildArchitecture: 'amd64'
|
||||
EnvSetupScript: 'setup_env.bat'
|
||||
sln_platform: 'x64'
|
||||
DoDebugBuild: 'false'
|
||||
DoNugetPack: 'true'
|
||||
DoCompliance: 'false'
|
||||
DoEsrp: ${{ parameters.DoEsrp }}
|
||||
NuPackScript: |
|
||||
msbuild $(Build.SourcesDirectory)\csharp\OnnxRuntime.CSharp.proj /p:Configuration=RelWithDebInfo /t:CreatePackage /p:OrtPackageId=Microsoft.ML.OnnxRuntime.DirectML /p:IsReleaseBuild=${{ parameters.IsReleaseBuild }} /p:CurrentData=$(BuildDate) /p:CurrentTime=$(BuildTime)
|
||||
copy $(Build.SourcesDirectory)\csharp\src\Microsoft.ML.OnnxRuntime\bin\RelWithDebInfo\*.nupkg $(Build.ArtifactStagingDirectory)
|
||||
copy $(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\*.nupkg $(Build.ArtifactStagingDirectory)
|
||||
mkdir $(Build.ArtifactStagingDirectory)\testdata
|
||||
copy $(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\custom_op_library.* $(Build.ArtifactStagingDirectory)\testdata
|
||||
|
||||
- template: nuget/templates/dml-vs-2022.yml
|
||||
parameters:
|
||||
AgentPool: 'onnxruntime-Win2022-GPU-dml-A10'
|
||||
IsReleaseBuild: ${{ parameters.IsReleaseBuild }}
|
||||
ArtifactName: 'drop-win-dml-x86-zip'
|
||||
StageName: 'Windows_CI_GPU_DML_Dev_x86'
|
||||
BuildCommand: --build_dir $(Build.BinariesDirectory) --skip_submodule_sync --build_shared_lib --enable_onnx_tests --enable_wcos --use_telemetry --use_dml --use_winml --cmake_generator "Visual Studio 17 2022"
|
||||
BuildArch: 'x86'
|
||||
EnvSetupScript: 'setup_env_x86.bat'
|
||||
sln_platform: 'Win32'
|
||||
DoDebugBuild: 'false'
|
||||
DoNugetPack: 'true'
|
||||
DoCompliance: ${{ parameters.DoCompliance }}
|
||||
DoEsrp: ${{ parameters.DoEsrp }}
|
||||
RunTests: 'false'
|
||||
NuPackScript: |
|
||||
msbuild $(Build.SourcesDirectory)\csharp\OnnxRuntime.CSharp.proj /p:Configuration=RelWithDebInfo /p:TargetArchitecture=x86 /t:CreatePackage /p:OrtPackageId=Microsoft.ML.OnnxRuntime.DirectML /p:IsReleaseBuild=${{ parameters.IsReleaseBuild }}
|
||||
cd $(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\
|
||||
ren Microsoft.ML.OnnxRuntime.DirectML.* win-dml-x86.zip
|
||||
copy $(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\win-dml-x86.zip $(Build.ArtifactStagingDirectory)
|
||||
mkdir $(Build.ArtifactStagingDirectory)\testdata
|
||||
copy $(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\custom_op_library.* $(Build.ArtifactStagingDirectory)\testdata
|
||||
|
||||
- template: nuget/templates/dml-vs-2022.yml
|
||||
parameters:
|
||||
AgentPool: 'onnxruntime-Win2022-GPU-dml-A10'
|
||||
IsReleaseBuild: ${{ parameters.IsReleaseBuild }}
|
||||
ArtifactName: 'drop-win-dml-arm64-zip'
|
||||
StageName: 'Windows_CI_GPU_DML_Dev_arm64'
|
||||
BuildCommand: --build_dir $(Build.BinariesDirectory) --arm64 --skip_submodule_sync --build_shared_lib --enable_onnx_tests --enable_wcos --use_telemetry --use_dml --use_winml --build_nodejs --cmake_generator "Visual Studio 17 2022"
|
||||
BuildArch: 'x64'
|
||||
EnvSetupScript: 'setup_env.bat'
|
||||
sln_platform: 'arm64'
|
||||
DoDebugBuild: 'false'
|
||||
DoNugetPack: 'true'
|
||||
DoCompliance: ${{ parameters.DoCompliance }}
|
||||
DoEsrp: ${{ parameters.DoEsrp }}
|
||||
RunTests: 'false'
|
||||
NuPackScript: |
|
||||
msbuild $(Build.SourcesDirectory)\csharp\OnnxRuntime.CSharp.proj /p:Configuration=RelWithDebInfo /p:TargetArchitecture=arm64 /t:CreatePackage /p:OrtPackageId=Microsoft.ML.OnnxRuntime.DirectML /p:IsReleaseBuild=${{ parameters.IsReleaseBuild }}
|
||||
cd $(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\
|
||||
ren Microsoft.ML.OnnxRuntime.DirectML.* win-dml-arm64.zip
|
||||
copy $(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\win-dml-arm64.zip $(Build.ArtifactStagingDirectory)
|
||||
mkdir $(Build.ArtifactStagingDirectory)\testdata
|
||||
copy $(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\custom_op_library.* $(Build.ArtifactStagingDirectory)\testdata
|
||||
|
||||
- stage: NuGet_Packaging_DML
|
||||
dependsOn:
|
||||
- Windows_CI_GPU_DML_Dev
|
||||
- Windows_CI_GPU_DML_Dev_x86
|
||||
- Windows_CI_GPU_DML_Dev_arm64
|
||||
condition: succeeded()
|
||||
jobs:
|
||||
- job: NuGet_Packaging_DML
|
||||
workspace:
|
||||
clean: all
|
||||
pool: 'onnxruntime-Win2022-GPU-dml-A10'
|
||||
steps:
|
||||
- task: DownloadPipelineArtifact@0
|
||||
displayName: 'Download Pipeline Artifact - NuGet DirectML'
|
||||
inputs:
|
||||
artifactName: 'drop-nuget-dml'
|
||||
targetPath: '$(Build.BinariesDirectory)/nuget-artifact-dml'
|
||||
|
||||
- task: DownloadPipelineArtifact@0
|
||||
displayName: 'Download Pipeline Artifact - NuGet DirectML x86'
|
||||
inputs:
|
||||
artifactName: 'drop-win-dml-x86-zip'
|
||||
targetPath: '$(Build.BinariesDirectory)/nuget-artifact-dml'
|
||||
|
||||
- task: DownloadPipelineArtifact@0
|
||||
displayName: 'Download Pipeline Artifact - NuGet DirectML arm64'
|
||||
inputs:
|
||||
artifactName: 'drop-win-dml-arm64-zip'
|
||||
targetPath: '$(Build.BinariesDirectory)/nuget-artifact-dml'
|
||||
|
||||
- script: |
|
||||
pushd $(Build.BinariesDirectory)\nuget-artifact-dml
|
||||
dir
|
||||
powershell -Command "Invoke-WebRequest http://stahlworks.com/dev/unzip.exe -OutFile unzip.exe"
|
||||
powershell -Command "Invoke-WebRequest http://stahlworks.com/dev/zip.exe -OutFile zip.exe"
|
||||
set PATH=%CD%;%PATH%
|
||||
SETLOCAL EnableDelayedExpansion
|
||||
FOR /R %%i IN (*.nupkg) do (
|
||||
set filename=%%~ni
|
||||
IF NOT "!filename:~25,7!"=="Managed" (
|
||||
rename %%~ni.nupkg %%~ni.zip
|
||||
unzip %%~ni.zip -d %%~ni
|
||||
del /Q %%~ni.zip
|
||||
|
||||
unzip win-dml-x86.zip -d win-x86
|
||||
mkdir %%~ni\runtimes\win-x86
|
||||
mkdir %%~ni\runtimes\win-x86\native
|
||||
|
||||
move win-x86\runtimes\win-x86\native\onnxruntime.dll %%~ni\runtimes\win-x86\native\onnxruntime.dll
|
||||
move win-x86\runtimes\win-x86\native\onnxruntime.lib %%~ni\runtimes\win-x86\native\onnxruntime.lib
|
||||
move win-x86\runtimes\win-x86\native\onnxruntime.pdb %%~ni\runtimes\win-x86\native\onnxruntime.pdb
|
||||
|
||||
unzip win-dml-arm64.zip -d win-arm64
|
||||
mkdir %%~ni\runtimes\win-arm64
|
||||
mkdir %%~ni\runtimes\win-arm64\native
|
||||
|
||||
move win-arm64\runtimes\win-arm64\native\onnxruntime.dll %%~ni\runtimes\win-arm64\native\onnxruntime.dll
|
||||
move win-arm64\runtimes\win-arm64\native\onnxruntime.lib %%~ni\runtimes\win-arm64\native\onnxruntime.lib
|
||||
move win-arm64\runtimes\win-arm64\native\onnxruntime.pdb %%~ni\runtimes\win-arm64\native\onnxruntime.pdb
|
||||
|
||||
|
||||
pushd %%~ni
|
||||
zip -r ..\%%~ni.zip .
|
||||
popd
|
||||
move %%~ni.zip %%~ni.nupkg
|
||||
)
|
||||
)
|
||||
popd
|
||||
copy $(Build.BinariesDirectory)\nuget-artifact-dml\Microsoft.ML.OnnxRuntime.DirectML*nupkg $(Build.ArtifactStagingDirectory)
|
||||
displayName: 'Bundle DML NuGet and other binaries'
|
||||
|
||||
- template: templates/esrp_nuget.yml
|
||||
parameters:
|
||||
DisplayName: 'ESRP - sign NuGet package'
|
||||
FolderPath: '$(Build.ArtifactStagingDirectory)'
|
||||
DoEsrp: ${{ parameters.DoEsrp }}
|
||||
|
||||
- template: templates/validate-package.yml
|
||||
parameters:
|
||||
PackageType: 'nuget'
|
||||
PackagePath: '$(Build.ArtifactStagingDirectory)'
|
||||
PackageName: 'Microsoft.ML.OnnxRuntime.DirectML*nupkg'
|
||||
PlatformsSupported: 'win-x64,win-x86,win-arm64'
|
||||
VerifyNugetSigning: ${{ parameters.DoEsrp }}
|
||||
|
||||
- task: PublishPipelineArtifact@0
|
||||
displayName: 'Publish Pipeline NuGet Artifact'
|
||||
inputs:
|
||||
artifactName: 'drop-signed-nuget-dml'
|
||||
targetPath: '$(Build.ArtifactStagingDirectory)'
|
||||
- template: templates/component-governance-component-detection-steps.yml
|
||||
parameters:
|
||||
condition: 'succeeded'
|
||||
|
|
|
|||
|
|
@ -25,13 +25,14 @@ stages:
|
|||
inputs:
|
||||
versionSpec: 6.10.x
|
||||
|
||||
- template: ../../templates/flex-downloadPipelineArtifact.yml
|
||||
parameters:
|
||||
StepName: 'Download Pipeline Artifact'
|
||||
ArtifactName: drop-signed-nuget-${{ parameters.ArtifactSuffix }}
|
||||
TargetPath: '$(Build.BinariesDirectory)\nuget-artifact'
|
||||
SpecificArtifact: ${{ parameters.SpecificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
- task: PowerShell@2
|
||||
displayName: Download NuGet package
|
||||
inputs:
|
||||
targetType: 'inline'
|
||||
script: |
|
||||
New-Item -Path $(Build.SourcesDirectory)\nuget-artifact -ItemType Directory
|
||||
nuget install Microsoft.ML.OnnxRuntime -OutputDirectory nuget-artifact -Source https://api.nuget.org/v3/index.json
|
||||
workingDirectory: '$(Build.SourcesDirectory)'
|
||||
|
||||
- template: get-nuget-package-version-as-variable.yml
|
||||
parameters:
|
||||
|
|
@ -50,7 +51,7 @@ stages:
|
|||
inputs:
|
||||
targetType: 'inline'
|
||||
script: |
|
||||
dotnet nuget add source $(Build.BinariesDirectory)\nuget-artifact --name local-nuget
|
||||
dotnet nuget add source $(Build.SourcesDirectory)\nuget-artifact --name local-nuget
|
||||
dotnet publish -c Release --property:UsePrebuiltNativePackage=true --property:CurrentOnnxRuntimeVersion=$(NuGetPackageVersionNumber)
|
||||
workingDirectory: '$(Build.SourcesDirectory)\csharp\test\Microsoft.ML.OnnxRuntime.Tests.MAUI'
|
||||
|
||||
|
|
|
|||
|
|
@ -54,809 +54,9 @@ parameters:
|
|||
default: 2.30.0.250109
|
||||
|
||||
stages:
|
||||
- template: linux-cpu-packaging-pipeline.yml
|
||||
parameters:
|
||||
AdditionalBuildFlags: ${{ parameters.AdditionalBuildFlags }}
|
||||
|
||||
- template: mac-cpu-packaging-pipeline.yml
|
||||
parameters:
|
||||
AllowReleasedOpsetOnly: 1
|
||||
BuildForAllArchs: true
|
||||
SpecificArtifact: ${{ parameters.SpecificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
DoEsrp: ${{ parameters.DoEsrp }}
|
||||
|
||||
- stage: Android_Java_API_AAR_Packaging_Full
|
||||
dependsOn: Setup # Setup stage defined in set_packaging_variables_stage.yml creates the ReleaseVersionSuffix variable
|
||||
variables:
|
||||
ReleaseVersionSuffix: $[stageDependencies.Setup.Set_Variables.outputs['Set_Release_Version_Suffix.ReleaseVersionSuffix']]
|
||||
jobs:
|
||||
- template: android-java-api-aar.yml
|
||||
parameters:
|
||||
buildConfig: 'Release'
|
||||
buildSettings: '$(Build.SourcesDirectory)/tools/ci_build/github/android/default_full_aar_build_settings.json'
|
||||
artifactName: 'onnxruntime-android-full-aar'
|
||||
job_name_suffix: 'Full'
|
||||
publish_executables: '1'
|
||||
enable_code_sign: ${{ parameters.DoEsrp }}
|
||||
packageName: 'onnxruntime-android'
|
||||
ReleaseVersionSuffix: $(ReleaseVersionSuffix)
|
||||
|
||||
- template: android-java-api-aar-test.yml
|
||||
parameters:
|
||||
artifactName: 'onnxruntime-android-full-aar'
|
||||
job_name_suffix: 'Full'
|
||||
ReleaseVersionSuffix: $(ReleaseVersionSuffix)
|
||||
|
||||
- stage: Android_Java_API_AAR_Packaging_QNN
|
||||
dependsOn: Setup # Setup stage defined in set_packaging_variables_stage.yml creates the ReleaseVersionSuffix variable
|
||||
variables:
|
||||
ReleaseVersionSuffix: $[stageDependencies.Setup.Set_Variables.outputs['Set_Release_Version_Suffix.ReleaseVersionSuffix']]
|
||||
jobs:
|
||||
- template: android-java-api-aar.yml
|
||||
parameters:
|
||||
buildConfig: 'Release'
|
||||
buildSettings: '$(Build.SourcesDirectory)/tools/ci_build/github/android/default_qnn_aar_build_settings.json'
|
||||
artifactName: 'onnxruntime-android-qnn-aar'
|
||||
job_name_suffix: 'QNN'
|
||||
publish_executables: '0'
|
||||
enable_code_sign: ${{ parameters.DoEsrp }}
|
||||
packageName: 'onnxruntime-android-qnn'
|
||||
ReleaseVersionSuffix: $(ReleaseVersionSuffix)
|
||||
QnnSDKVersion: ${{ parameters.QnnSDKVersion }}
|
||||
|
||||
- template: android-java-api-aar-test.yml
|
||||
parameters:
|
||||
artifactName: 'onnxruntime-android-qnn-aar'
|
||||
job_name_suffix: 'QNN'
|
||||
packageName: 'onnxruntime-android-qnn'
|
||||
QnnSDKVersion: ${{ parameters.QnnSDKVersion }}
|
||||
|
||||
- stage: iOS_Full_xcframework
|
||||
dependsOn: []
|
||||
jobs:
|
||||
- job: iOS_Full_xcframework
|
||||
workspace:
|
||||
clean: all
|
||||
pool:
|
||||
vmImage: 'macOS-13'
|
||||
timeoutInMinutes: 300
|
||||
steps:
|
||||
- template: set-version-number-variables-step.yml
|
||||
|
||||
- template: use-xcode-version.yml
|
||||
|
||||
- template: download-deps.yml
|
||||
|
||||
- task: PythonScript@0
|
||||
displayName: 'Update deps.txt'
|
||||
inputs:
|
||||
scriptPath: $(Build.SourcesDirectory)/tools/ci_build/replace_urls_in_deps.py
|
||||
arguments: --new_dir $(Build.BinariesDirectory)/deps
|
||||
workingDirectory: $(Build.BinariesDirectory)
|
||||
|
||||
- script: |
|
||||
set -e -x
|
||||
python3 tools/ci_build/github/apple/build_apple_framework.py \
|
||||
--build_dir "$(Build.BinariesDirectory)/ios_framework" \
|
||||
tools/ci_build/github/apple/default_full_ios_framework_build_settings.json
|
||||
mkdir $(Build.BinariesDirectory)/artifacts
|
||||
pushd $(Build.BinariesDirectory)/ios_framework/framework_out
|
||||
zip -vry $(Build.BinariesDirectory)/artifacts/onnxruntime_ios_xcframework.$(OnnxRuntimeVersion).zip \
|
||||
onnxruntime.xcframework
|
||||
popd
|
||||
displayName: "Build Apple xcframework"
|
||||
|
||||
- script: |
|
||||
python3 tools/ci_build/github/apple/test_apple_packages.py \
|
||||
--fail_if_cocoapods_missing \
|
||||
--framework_info_file "$(Build.BinariesDirectory)/ios_framework/xcframework_info.json" \
|
||||
--c_framework_dir "$(Build.BinariesDirectory)/ios_framework/framework_out" \
|
||||
--variant Full \
|
||||
--skip_macos_test \
|
||||
--mac_catalyst_enabled
|
||||
displayName: "Test Apple framework"
|
||||
|
||||
- task: PublishBuildArtifacts@1
|
||||
inputs:
|
||||
pathtoPublish: '$(Build.BinariesDirectory)/artifacts'
|
||||
artifactName: 'onnxruntime-ios-full-xcframework'
|
||||
|
||||
- template: component-governance-component-detection-steps.yml
|
||||
parameters:
|
||||
condition: 'succeeded'
|
||||
|
||||
- template: win-ci.yml
|
||||
parameters:
|
||||
DoCompliance: ${{ parameters.DoCompliance }}
|
||||
DoEsrp: ${{ parameters.DoEsrp }}
|
||||
stage_name_suffix: CPU_x86_${{ parameters.BuildVariant }}
|
||||
buildArch: x86
|
||||
msbuildPlatform: Win32
|
||||
packageName: x86
|
||||
buildparameter: ${{ parameters.AdditionalBuildFlags }} ${{ parameters.AdditionalWinBuildFlags}}
|
||||
runTests: ${{ parameters.RunOnnxRuntimeTests }}
|
||||
buildJava: false
|
||||
buildNodejs: false
|
||||
|
||||
- template: win-ci.yml
|
||||
parameters:
|
||||
DoCompliance: ${{ parameters.DoCompliance }}
|
||||
DoEsrp: ${{ parameters.DoEsrp }}
|
||||
stage_name_suffix: CPU_arm64_${{ parameters.BuildVariant }}
|
||||
buildArch: x64
|
||||
msbuildPlatform: arm64
|
||||
packageName: arm64
|
||||
buildparameter: --build_nodejs --arm64 ${{ parameters.AdditionalBuildFlags }} ${{ parameters.AdditionalWinBuildFlags}} --path_to_protoc_exe $(Build.BinariesDirectory)\RelWithDebInfo\installed\bin\protoc.exe
|
||||
runTests: false
|
||||
buildJava: false
|
||||
buildNodejs: true
|
||||
|
||||
- template: win-ci.yml
|
||||
parameters:
|
||||
DoCompliance: ${{ parameters.DoCompliance }}
|
||||
DoEsrp: ${{ parameters.DoEsrp }}
|
||||
stage_name_suffix: CPU_x64_${{ parameters.BuildVariant }}
|
||||
buildArch: x64
|
||||
msbuildPlatform: x64
|
||||
packageName: x64
|
||||
buildparameter: --build_java --build_nodejs ${{ parameters.AdditionalBuildFlags }} ${{ parameters.AdditionalWinBuildFlags}}
|
||||
runTests: ${{ parameters.RunOnnxRuntimeTests }}
|
||||
buildJava: true
|
||||
buildNodejs: true
|
||||
|
||||
- stage: Jar_Packaging
|
||||
dependsOn:
|
||||
- Linux_C_API_Packaging_CPU
|
||||
- MacOS_C_API_Package_Publish
|
||||
- Windows_Packaging_CPU_x64_${{ parameters.BuildVariant }}
|
||||
- Download_Java_Tools
|
||||
condition: succeeded()
|
||||
jobs:
|
||||
- job: Jar_Packaging
|
||||
workspace:
|
||||
clean: all
|
||||
pool: 'onnxruntime-Win-CPU-2022'
|
||||
|
||||
steps:
|
||||
- checkout: self
|
||||
submodules: false
|
||||
- template: set-version-number-variables-step.yml
|
||||
|
||||
- template: flex-downloadPipelineArtifact.yml
|
||||
parameters:
|
||||
StepName: 'Download Pipeline Artifact - Win x64'
|
||||
ArtifactName: 'drop-onnxruntime-java-win-x64'
|
||||
TargetPath: '$(Build.BinariesDirectory)\java-artifact\onnxruntime-java-win-x64'
|
||||
SpecificArtifact: ${{ parameters.SpecificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
|
||||
- template: flex-downloadPipelineArtifact.yml
|
||||
parameters:
|
||||
StepName: 'Download Pipeline Artifact - Linux x64'
|
||||
ArtifactName: 'drop-onnxruntime-java-linux-x64'
|
||||
TargetPath: '$(Build.BinariesDirectory)\java-artifact\onnxruntime-java-linux-x64'
|
||||
SpecificArtifact: ${{ parameters.SpecificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
|
||||
- template: flex-downloadPipelineArtifact.yml
|
||||
parameters:
|
||||
StepName: 'Download Pipeline Artifact - Linux AARCH64'
|
||||
ArtifactName: 'drop-onnxruntime-java-linux-aarch64'
|
||||
TargetPath: '$(Build.BinariesDirectory)\java-artifact\onnxruntime-java-linux-aarch64'
|
||||
SpecificArtifact: ${{ parameters.SpecificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
|
||||
- template: flex-downloadPipelineArtifact.yml
|
||||
parameters:
|
||||
StepName: 'Download Pipeline Artifact - MacOS x64'
|
||||
ArtifactName: 'drop-onnxruntime-java-osx-x86_64'
|
||||
TargetPath: '$(Build.BinariesDirectory)\java-artifact\onnxruntime-java-osx-x86_64'
|
||||
SpecificArtifact: ${{ parameters.SpecificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
|
||||
- template: flex-downloadPipelineArtifact.yml
|
||||
parameters:
|
||||
StepName: 'Download Pipeline Artifact - MacOS ARM64'
|
||||
ArtifactName: 'drop-onnxruntime-java-osx-arm64'
|
||||
TargetPath: '$(Build.BinariesDirectory)\java-artifact\onnxruntime-java-osx-arm64'
|
||||
SpecificArtifact: ${{ parameters.SpecificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
|
||||
- task: PowerShell@2
|
||||
displayName: 'PowerShell Script'
|
||||
inputs:
|
||||
targetType: filePath
|
||||
filePath: $(Build.SourcesDirectory)\tools\ci_build\github\windows\jar_packaging.ps1
|
||||
failOnStderr: true
|
||||
showWarnings: true
|
||||
workingDirectory: '$(Build.BinariesDirectory)\java-artifact'
|
||||
|
||||
- template: jar-esrp-dll.yml
|
||||
parameters:
|
||||
JarFileDirectory: '$(Build.BinariesDirectory)\java-artifact\onnxruntime-java-win-x64'
|
||||
JarFileName: 'onnxruntime-$(OnnxRuntimeVersion).jar'
|
||||
|
||||
- template: jar-maven-signing-win.yml
|
||||
parameters:
|
||||
JarFileDirectory: '$(Build.BinariesDirectory)\java-artifact\onnxruntime-java-win-x64'
|
||||
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy Java Files to Artifact Staging Directory'
|
||||
inputs:
|
||||
SourceFolder: '$(Build.BinariesDirectory)\java-artifact\onnxruntime-java-win-x64'
|
||||
TargetFolder: '$(Build.ArtifactStagingDirectory)'
|
||||
|
||||
- task: PublishPipelineArtifact@1
|
||||
displayName: 'Publish Pipeline Artifact'
|
||||
inputs:
|
||||
targetPath: '$(Build.ArtifactStagingDirectory)'
|
||||
artifact: 'onnxruntime-java'
|
||||
|
||||
- template: component-governance-component-detection-steps.yml
|
||||
parameters :
|
||||
condition : 'succeeded'
|
||||
|
||||
- stage: NuGet_Packaging_CPU
|
||||
dependsOn:
|
||||
- Setup
|
||||
- Linux_C_API_Packaging_CPU
|
||||
- MacOS_C_API_Package_Publish
|
||||
- Windows_Packaging_CPU_x86_${{ parameters.BuildVariant }}
|
||||
- Windows_Packaging_CPU_x64_${{ parameters.BuildVariant }}
|
||||
- Windows_Packaging_CPU_arm64_${{ parameters.BuildVariant }}
|
||||
- Android_Java_API_AAR_Packaging_Full
|
||||
- iOS_Full_xcframework
|
||||
condition: succeeded()
|
||||
jobs:
|
||||
- job: NuGet_Packaging_CPU
|
||||
workspace:
|
||||
clean: all
|
||||
pool: 'onnxruntime-Win-CPU-2022'
|
||||
variables:
|
||||
OrtPackageId: ${{ parameters.OrtNugetPackageId }}
|
||||
breakCodesignValidationInjection: ${{ parameters.DoEsrp }}
|
||||
ReleaseVersionSuffix: $[stageDependencies.Setup.Set_Variables.outputs['Set_Release_Version_Suffix.ReleaseVersionSuffix']]
|
||||
BuildDate : $[stageDependencies.Setup.Set_Variables.outputs['Set_Build_Date.BuildDate']]
|
||||
BuildTime : $[stageDependencies.Setup.Set_Variables.outputs['Set_Build_Time.BuildTime']]
|
||||
|
||||
steps:
|
||||
- checkout: self
|
||||
submodules: true
|
||||
|
||||
- template: flex-downloadPipelineArtifact.yml
|
||||
parameters:
|
||||
StepName: 'Download Pipeline Artifact - Win x64'
|
||||
ArtifactName: 'onnxruntime-win-x64'
|
||||
TargetPath: '$(Build.BinariesDirectory)/nuget-artifact'
|
||||
SpecificArtifact: ${{ parameters.specificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
|
||||
- template: flex-downloadPipelineArtifact.yml
|
||||
parameters:
|
||||
StepName: 'Download win-x86 Pipeline Artifact'
|
||||
ArtifactName: 'onnxruntime-win-x86'
|
||||
TargetPath: '$(Build.BinariesDirectory)/nuget-artifact'
|
||||
SpecificArtifact: ${{ parameters.specificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
|
||||
- template: flex-downloadPipelineArtifact.yml
|
||||
parameters:
|
||||
StepName: 'Download win-arm64 Pipeline Artifact'
|
||||
ArtifactName: 'onnxruntime-win-arm64'
|
||||
TargetPath: '$(Build.BinariesDirectory)/nuget-artifact'
|
||||
SpecificArtifact: ${{ parameters.specificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
|
||||
- template: flex-downloadPipelineArtifact.yml
|
||||
parameters:
|
||||
StepName: 'Download osx-x64 Pipeline Artifact'
|
||||
ArtifactName: 'onnxruntime-osx'
|
||||
TargetPath: '$(Build.BinariesDirectory)/nuget-artifact'
|
||||
SpecificArtifact: ${{ parameters.specificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
|
||||
- template: flex-downloadPipelineArtifact.yml
|
||||
parameters:
|
||||
StepName: 'Download linux-x64 Pipeline Artifact'
|
||||
ArtifactName: 'onnxruntime-linux-x64'
|
||||
TargetPath: '$(Build.BinariesDirectory)/nuget-artifact'
|
||||
SpecificArtifact: ${{ parameters.specificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
|
||||
- template: flex-downloadPipelineArtifact.yml
|
||||
parameters:
|
||||
StepName: 'Download linux-aarch64 Pipeline Artifact'
|
||||
ArtifactName: 'onnxruntime-linux-aarch64'
|
||||
TargetPath: '$(Build.BinariesDirectory)/nuget-artifact'
|
||||
SpecificArtifact: ${{ parameters.specificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
|
||||
- template: flex-downloadPipelineArtifact.yml
|
||||
parameters:
|
||||
StepName: 'Download iOS Pipeline Artifact'
|
||||
ArtifactName: 'onnxruntime-ios-full-xcframework'
|
||||
TargetPath: '$(Build.BinariesDirectory)/nuget-artifact'
|
||||
SpecificArtifact: ${{ parameters.specificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
|
||||
- template: flex-downloadPipelineArtifact.yml
|
||||
parameters:
|
||||
StepName: 'Download Android-full-aar Pipeline Artifact'
|
||||
ArtifactName: 'onnxruntime-android-full-aar'
|
||||
TargetPath: '$(Build.BinariesDirectory)/nuget-artifact'
|
||||
SpecificArtifact: ${{ parameters.specificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
|
||||
- template: flex-downloadPipelineArtifact.yml
|
||||
parameters:
|
||||
StepName: 'Download drop-extra Pipeline Artifact'
|
||||
ArtifactName: 'drop-extra'
|
||||
TargetPath: '$(Build.BinariesDirectory)/extra-artifact'
|
||||
SpecificArtifact: ${{ parameters.specificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
|
||||
- script: |
|
||||
dir
|
||||
workingDirectory: '$(Build.BinariesDirectory)/nuget-artifact'
|
||||
displayName: 'List artifacts'
|
||||
|
||||
- template: set-version-number-variables-step.yml
|
||||
|
||||
# Reconstruct the build dir
|
||||
- task: PowerShell@2
|
||||
displayName: 'Extract native libraries for addition to nuget native package'
|
||||
inputs:
|
||||
targetType: filePath
|
||||
filePath: $(Build.SourcesDirectory)\tools\ci_build\github\windows\extract_nuget_files.ps1
|
||||
|
||||
- script: |
|
||||
mklink /D /J models C:\local\models
|
||||
workingDirectory: '$(Build.BinariesDirectory)'
|
||||
displayName: 'Create models link'
|
||||
- task: NuGetToolInstaller@0
|
||||
displayName: Use Nuget 6.10.x
|
||||
inputs:
|
||||
versionSpec: 6.10.x
|
||||
|
||||
- task: PowerShell@2
|
||||
displayName: Install mobile workloads
|
||||
inputs:
|
||||
targetType: 'inline'
|
||||
script: |
|
||||
dotnet workload install android ios maccatalyst
|
||||
workingDirectory: '$(Build.SourcesDirectory)\csharp'
|
||||
|
||||
- task: MSBuild@1
|
||||
displayName: 'Restore NuGet Packages and create project.assets.json'
|
||||
inputs:
|
||||
solution: '$(Build.SourcesDirectory)\csharp\OnnxRuntime.CSharp.sln'
|
||||
platform: 'Any CPU'
|
||||
configuration: RelWithDebInfo
|
||||
msbuildArguments: '-t:restore -p:OrtPackageId=$(OrtPackageId)'
|
||||
workingDirectory: '$(Build.SourcesDirectory)\csharp'
|
||||
|
||||
- task: MSBuild@1
|
||||
displayName: 'Build C# bindings'
|
||||
inputs:
|
||||
solution: '$(Build.SourcesDirectory)\csharp\OnnxRuntime.CSharp.sln'
|
||||
platform: 'Any CPU'
|
||||
configuration: RelWithDebInfo
|
||||
msbuildArguments: '-p:OnnxRuntimeBuildDirectory="$(Build.BinariesDirectory)" -p:OrtPackageId=$(OrtPackageId) -p:IsReleaseBuild=${{ parameters.IsReleaseBuild }} -p:ReleaseVersionSuffix=$(ReleaseVersionSuffix) -p:PackageVersion=$(OnnxRuntimeVersion)'
|
||||
workingDirectory: '$(Build.SourcesDirectory)\csharp'
|
||||
|
||||
- ${{ if eq(parameters.DoEsrp, true) }}:
|
||||
- template: win-esrp-dll.yml
|
||||
parameters:
|
||||
FolderPath: '$(Build.SourcesDirectory)\csharp\src\Microsoft.ML.OnnxRuntime\bin\RelWithDebInfo'
|
||||
DisplayName: 'ESRP - Sign C# dlls'
|
||||
DoEsrp: ${{ parameters.DoEsrp }}
|
||||
|
||||
- task: UsePythonVersion@0
|
||||
displayName: 'Use Python'
|
||||
inputs:
|
||||
versionSpec: 3.12
|
||||
|
||||
- task: MSBuild@1
|
||||
displayName: 'Build Nuget Packages'
|
||||
inputs:
|
||||
solution: '$(Build.SourcesDirectory)\csharp\OnnxRuntime.CSharp.proj'
|
||||
platform: 'Any CPU'
|
||||
configuration: RelWithDebInfo
|
||||
msbuildArguments: '-t:CreatePackage -p:OnnxRuntimeBuildDirectory="$(Build.BinariesDirectory)" -p:OrtPackageId=$(OrtPackageId) -p:IsReleaseBuild=${{ parameters.IsReleaseBuild }} -p:ReleaseVersionSuffix=$(ReleaseVersionSuffix) -p:CurrentTime=$(BuildTime) -p:CurrentDate=$(BuildDate)'
|
||||
workingDirectory: '$(Build.SourcesDirectory)\csharp'
|
||||
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy native nuget package to: $(Build.ArtifactStagingDirectory)'
|
||||
inputs:
|
||||
SourceFolder: '$(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo'
|
||||
Contents: '*.nupkg'
|
||||
TargetFolder: '$(Build.ArtifactStagingDirectory)'
|
||||
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy native nuget symbols package to: $(Build.ArtifactStagingDirectory)'
|
||||
inputs:
|
||||
SourceFolder: '$(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo'
|
||||
Contents: '*.snupkg'
|
||||
TargetFolder: '$(Build.ArtifactStagingDirectory)'
|
||||
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy managed nuget package to: $(Build.ArtifactStagingDirectory)'
|
||||
inputs:
|
||||
SourceFolder: '$(Build.SourcesDirectory)\csharp\src\Microsoft.ML.OnnxRuntime\bin\RelWithDebInfo'
|
||||
Contents: '*.nupkg'
|
||||
TargetFolder: '$(Build.ArtifactStagingDirectory)'
|
||||
|
||||
- template: esrp_nuget.yml
|
||||
parameters:
|
||||
DisplayName: 'ESRP - sign NuGet package'
|
||||
FolderPath: '$(Build.ArtifactStagingDirectory)'
|
||||
DoEsrp: ${{ parameters.DoEsrp }}
|
||||
|
||||
- template: validate-package.yml
|
||||
parameters:
|
||||
PackageType: 'nuget'
|
||||
PackagePath: '$(Build.ArtifactStagingDirectory)'
|
||||
PackageName: 'Microsoft.ML.OnnxRuntime.*nupkg'
|
||||
PlatformsSupported: 'win-x64,win-x86,linux-x64,linux-arm64,osx-x64'
|
||||
VerifyNugetSigning: false
|
||||
|
||||
- task: PublishPipelineArtifact@0
|
||||
displayName: 'Publish Pipeline NuGet Artifact'
|
||||
inputs:
|
||||
artifactName: 'drop-signed-nuget-CPU'
|
||||
targetPath: '$(Build.ArtifactStagingDirectory)'
|
||||
|
||||
|
||||
- task: MSBuild@1
|
||||
displayName: 'Clean C#'
|
||||
inputs:
|
||||
solution: '$(Build.SourcesDirectory)\csharp\OnnxRuntime.CSharp.sln'
|
||||
platform: 'Any CPU'
|
||||
configuration: RelWithDebInfo
|
||||
msbuildArguments: '-t:Clean -p:OnnxRuntimeBuildDirectory="$(Build.BinariesDirectory)" -p:OrtPackageId=$(OrtPackageId)'
|
||||
workingDirectory: '$(Build.SourcesDirectory)\csharp'
|
||||
|
||||
- template: component-governance-component-detection-steps.yml
|
||||
parameters :
|
||||
condition : 'succeeded'
|
||||
|
||||
|
||||
- stage: Nodejs_Packaging
|
||||
dependsOn:
|
||||
- Windows_CI_GPU_DML_Dev
|
||||
- Windows_CI_GPU_DML_Dev_arm64
|
||||
- Linux_C_API_Packaging_CPU
|
||||
- Linux_C_API_Packaging_GPU
|
||||
- MacOS_C_API_Package_Publish
|
||||
- Windows_Packaging_CPU_x86_${{ parameters.BuildVariant }}
|
||||
- Windows_Packaging_CPU_x64_${{ parameters.BuildVariant }}
|
||||
- Windows_Packaging_CPU_arm64_${{ parameters.BuildVariant }}
|
||||
condition: succeeded()
|
||||
jobs:
|
||||
- job: Nodejs_Packaging
|
||||
workspace:
|
||||
clean: all
|
||||
pool: 'onnxruntime-Win-CPU-2022'
|
||||
variables:
|
||||
${{ if eq(parameters.IsReleaseBuild, true) }}:
|
||||
NpmPackagingMode: 'release'
|
||||
${{ if not(eq(parameters.IsReleaseBuild, true)) }}:
|
||||
NpmPackagingMode: 'dev'
|
||||
breakCodesignValidationInjection: ${{ parameters.DoEsrp }}
|
||||
|
||||
steps:
|
||||
- checkout: self
|
||||
submodules: true
|
||||
|
||||
- script: |
|
||||
echo.>>.gitattributes
|
||||
echo /js/** text=auto eol=lf>>.gitattributes
|
||||
rd /s /q js
|
||||
git checkout -- js/**
|
||||
git checkout -- .gitattributes
|
||||
workingDirectory: '$(Build.SourcesDirectory)'
|
||||
displayName: 'Testing: force EOL to lf on windows for /js/**'
|
||||
|
||||
##################################################################
|
||||
# Node.js binding artifacts preparation
|
||||
#
|
||||
# This stage prepares Node.js binding artifacts for publishing. The artifacts support the following platforms:
|
||||
# - Windows x64 with DML support
|
||||
# - Windows arm64 with DML support
|
||||
# - Linux x64 with TensorRT support
|
||||
# - Linux arm64 (CPU only)
|
||||
# - macOS x64 (CPU only)
|
||||
# - macOS arm64 (CPU only)
|
||||
#
|
||||
# ORT Node.js binding artifacts contain 2 parts:
|
||||
# 1. ONNX Runtime native shared libraries and their dependencies
|
||||
# - Windows (x64, arm64):
|
||||
# - onnxruntime.dll
|
||||
# - DirectML.dll
|
||||
# - Linux (x64, arm64):
|
||||
# - libonnxruntime.so{.version}
|
||||
# - libonnxruntime_providers_shared.so
|
||||
# - libonnxruntime_providers_{provider}.so
|
||||
# - macOS (x64, arm64):
|
||||
# - libonnxruntime.dylib
|
||||
# 2. ONNX Runtime Node.js binding
|
||||
# - onnxruntime_binding.node
|
||||
#
|
||||
# For windows platform, the artifact is named as 'onnxruntime-nodejs-win-x64-dml' for x64, and
|
||||
# 'onnxruntime-nodejs-win-arm64-dml' for arm64. Each artifact contains both (1) and (2).
|
||||
#
|
||||
# For Linux and macOS platforms, (1) and (2) are packed into separate artifacts.
|
||||
# The following artifacts contain (1):
|
||||
# - onnxruntime-osx
|
||||
# - onnxruntime-linux-x64-tensorrt
|
||||
# - onnxruntime-linux-aarch64
|
||||
# The following artifacts contain (2):
|
||||
# - drop-onnxruntime-nodejs-linux-x64-tensorrt
|
||||
# - drop-onnxruntime-nodejs-linux-aarch64
|
||||
# - drop-onnxruntime-nodejs-osx-x86_64
|
||||
# - drop-onnxruntime-nodejs-osx-arm64
|
||||
#
|
||||
# All binary artifacts will eventually be put into folder before packaging 'onnxruntime-node':
|
||||
# $(Build.SourcesDirectory)\js\node\bin\napi-v3\{os}\{cpu_arch}\
|
||||
#
|
||||
# {os} is one of 'win32', 'darwin', 'linux' and {cpu_arch} is one of 'x64', 'arm64'.
|
||||
|
||||
- task: DownloadPipelineArtifact@0
|
||||
displayName: 'Download Pipeline Artifact - NuGet (OSX)'
|
||||
inputs:
|
||||
artifactName: 'onnxruntime-osx'
|
||||
targetPath: '$(Build.BinariesDirectory)/nuget-artifact'
|
||||
|
||||
- task: DownloadPipelineArtifact@0
|
||||
displayName: 'Download Pipeline Artifact - NuGet (Linux x64)'
|
||||
inputs:
|
||||
artifactName: 'onnxruntime-linux-x64-tensorrt'
|
||||
targetPath: '$(Build.BinariesDirectory)/nuget-artifact'
|
||||
|
||||
- task: DownloadPipelineArtifact@0
|
||||
displayName: 'Download Pipeline Artifact - NuGet (Linux aarch64)'
|
||||
inputs:
|
||||
artifactName: 'onnxruntime-linux-aarch64'
|
||||
targetPath: '$(Build.BinariesDirectory)/nuget-artifact'
|
||||
|
||||
- task: DownloadPipelineArtifact@0
|
||||
displayName: 'Download Pipeline Artifact - Nodejs (Win x64)'
|
||||
inputs:
|
||||
artifactName: 'drop-onnxruntime-nodejs-win-x64-dml'
|
||||
targetPath: '$(Build.BinariesDirectory)/nodejs-artifacts/win32/x64/'
|
||||
|
||||
- task: DownloadPipelineArtifact@0
|
||||
displayName: 'Download Pipeline Artifact - Nodejs (Win ARM64)'
|
||||
inputs:
|
||||
artifactName: 'drop-onnxruntime-nodejs-win-arm64-dml'
|
||||
targetPath: '$(Build.BinariesDirectory)/nodejs-artifacts/win32/arm64/'
|
||||
|
||||
- task: DownloadPipelineArtifact@0
|
||||
displayName: 'Download Pipeline Artifact - Nodejs (macOS x86_64)'
|
||||
inputs:
|
||||
artifactName: 'drop-onnxruntime-nodejs-osx-x86_64'
|
||||
targetPath: '$(Build.BinariesDirectory)/nodejs-artifacts/darwin/x64/'
|
||||
|
||||
- task: DownloadPipelineArtifact@0
|
||||
displayName: 'Download Pipeline Artifact - Nodejs (macOS arm64)'
|
||||
inputs:
|
||||
artifactName: 'drop-onnxruntime-nodejs-osx-arm64'
|
||||
targetPath: '$(Build.BinariesDirectory)/nodejs-artifacts/darwin/arm64/'
|
||||
|
||||
- task: DownloadPipelineArtifact@0
|
||||
displayName: 'Download Pipeline Artifact - Nodejs (Linux x64)'
|
||||
inputs:
|
||||
artifactName: 'drop-onnxruntime-nodejs-linux-x64-tensorrt'
|
||||
targetPath: '$(Build.BinariesDirectory)/nodejs-artifacts/linux/x64/'
|
||||
|
||||
- task: DownloadPipelineArtifact@0
|
||||
displayName: 'Download Pipeline Artifact - Nodejs (Linux aarch64)'
|
||||
inputs:
|
||||
artifactName: 'drop-onnxruntime-nodejs-linux-aarch64'
|
||||
targetPath: '$(Build.BinariesDirectory)/nodejs-artifacts/linux/arm64/'
|
||||
|
||||
- task: DownloadPipelineArtifact@0
|
||||
displayName: 'Download Pipeline Artifact - NuGet'
|
||||
inputs:
|
||||
artifactName: 'drop-extra'
|
||||
targetPath: '$(Build.BinariesDirectory)/extra-artifact'
|
||||
|
||||
- task: PowerShell@2
|
||||
displayName: 'PowerShell Script'
|
||||
inputs:
|
||||
targetType: filePath
|
||||
filePath: $(Build.SourcesDirectory)\tools\ci_build\github\windows\extract_nuget_files.ps1
|
||||
|
||||
- script: |
|
||||
dir
|
||||
workingDirectory: '$(Build.BinariesDirectory)/nuget-artifact'
|
||||
displayName: 'List artifacts'
|
||||
|
||||
- script: |
|
||||
npm ci
|
||||
workingDirectory: '$(Build.SourcesDirectory)/js'
|
||||
displayName: 'Install NPM packages /js'
|
||||
- script: |
|
||||
npm ci
|
||||
workingDirectory: '$(Build.SourcesDirectory)/js/common'
|
||||
displayName: 'Install NPM packages /js/common'
|
||||
- script: |
|
||||
npm ci
|
||||
workingDirectory: '$(Build.SourcesDirectory)/js/node'
|
||||
displayName: 'Install NPM packages /js/node'
|
||||
|
||||
# Node.js binding win32/x64
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy binaries to: $(Build.SourcesDirectory)\js\node\bin\napi-v3\win32\x64\'
|
||||
inputs:
|
||||
SourceFolder: '$(Build.BinariesDirectory)\nodejs-artifacts\win32\x64'
|
||||
Contents: |
|
||||
*.dll
|
||||
*.node
|
||||
TargetFolder: '$(Build.SourcesDirectory)\js\node\bin\napi-v3\win32\x64'
|
||||
|
||||
# Node.js binding win32/arm64
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy binaries to: $(Build.SourcesDirectory)\js\node\bin\napi-v3\win32\arm64\'
|
||||
inputs:
|
||||
SourceFolder: '$(Build.BinariesDirectory)\nodejs-artifacts\win32\arm64'
|
||||
Contents: |
|
||||
*.dll
|
||||
*.node
|
||||
TargetFolder: '$(Build.SourcesDirectory)\js\node\bin\napi-v3\win32\arm64'
|
||||
|
||||
# Node.js binding linux/x64
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy nuget binaries to: $(Build.SourcesDirectory)\js\node\bin\napi-v3\linux\x64\'
|
||||
inputs:
|
||||
SourceFolder: '$(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\nuget-artifacts\onnxruntime-linux-x64-tensorrt\lib'
|
||||
Contents: |
|
||||
libonnxruntime.so.*
|
||||
libonnxruntime_providers_shared.so
|
||||
TargetFolder: '$(Build.SourcesDirectory)\js\node\bin\napi-v3\linux\x64'
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy nodejs binaries to: $(Build.SourcesDirectory)\js\node\bin\napi-v3\linux\x64\'
|
||||
inputs:
|
||||
SourceFolder: '$(Build.BinariesDirectory)\nodejs-artifacts\linux\x64'
|
||||
Contents: '*.node'
|
||||
TargetFolder: '$(Build.SourcesDirectory)\js\node\bin\napi-v3\linux\x64'
|
||||
|
||||
# Node.js binding linux/arm64
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy nuget binaries to: $(Build.SourcesDirectory)\js\node\bin\napi-v3\linux\arm64\'
|
||||
inputs:
|
||||
SourceFolder: '$(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\nuget-artifacts\onnxruntime-linux-aarch64\lib'
|
||||
Contents: 'libonnxruntime.so.*'
|
||||
TargetFolder: '$(Build.SourcesDirectory)\js\node\bin\napi-v3\linux\arm64'
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy nodejs binaries to: $(Build.SourcesDirectory)\js\node\bin\napi-v3\linux\arm64\'
|
||||
inputs:
|
||||
SourceFolder: '$(Build.BinariesDirectory)\nodejs-artifacts\linux\arm64'
|
||||
Contents: '*.node'
|
||||
TargetFolder: '$(Build.SourcesDirectory)\js\node\bin\napi-v3\linux\arm64'
|
||||
|
||||
# Node.js binding darwin/x64
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy nuget binaries to: $(Build.SourcesDirectory)\js\node\bin\napi-v3\darwin\x64\'
|
||||
inputs:
|
||||
SourceFolder: '$(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\nuget-artifacts\onnxruntime-osx-x86_64\lib'
|
||||
Contents: 'libonnxruntime.*.dylib'
|
||||
TargetFolder: '$(Build.SourcesDirectory)\js\node\bin\napi-v3\darwin\x64'
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy nodejs binaries to: $(Build.SourcesDirectory)\js\node\bin\napi-v3\darwin\x64\'
|
||||
inputs:
|
||||
SourceFolder: '$(Build.BinariesDirectory)\nodejs-artifacts\darwin\x64'
|
||||
Contents: '*.node'
|
||||
TargetFolder: '$(Build.SourcesDirectory)\js\node\bin\napi-v3\darwin\x64'
|
||||
|
||||
# Node.js binding darwin/arm64
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy nuget binaries to: $(Build.SourcesDirectory)\js\node\bin\napi-v3\darwin\arm64\'
|
||||
inputs:
|
||||
SourceFolder: '$(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\nuget-artifacts\onnxruntime-osx-arm64\lib'
|
||||
Contents: 'libonnxruntime.*.dylib'
|
||||
TargetFolder: '$(Build.SourcesDirectory)\js\node\bin\napi-v3\darwin\arm64'
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy nodejs binaries to: $(Build.SourcesDirectory)\js\node\bin\napi-v3\darwin\arm64\'
|
||||
inputs:
|
||||
SourceFolder: '$(Build.BinariesDirectory)\nodejs-artifacts\darwin\arm64'
|
||||
Contents: '*.node'
|
||||
TargetFolder: '$(Build.SourcesDirectory)\js\node\bin\napi-v3\darwin\arm64'
|
||||
|
||||
- task: PowerShell@2
|
||||
inputs:
|
||||
filePath: '$(Build.SourcesDirectory)\tools\ci_build\github\js\pack-npm-packages.ps1'
|
||||
arguments: '$(NpmPackagingMode) $(Build.SourcesDirectory) node'
|
||||
workingDirectory: $(Build.BinariesDirectory)
|
||||
errorActionPreference: stop
|
||||
displayName: 'Pack NPM packages'
|
||||
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy onnxruntime-common package to staging directory'
|
||||
inputs:
|
||||
SourceFolder: '$(Build.SourcesDirectory)/js/common/'
|
||||
Contents: 'onnxruntime-common-*.tgz'
|
||||
TargetFolder: '$(Build.ArtifactStagingDirectory)'
|
||||
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy onnxruntime-node package to staging directory'
|
||||
inputs:
|
||||
SourceFolder: '$(Build.SourcesDirectory)/js/node/'
|
||||
Contents: 'onnxruntime-node-*.tgz'
|
||||
TargetFolder: '$(Build.ArtifactStagingDirectory)'
|
||||
|
||||
- task: PublishPipelineArtifact@0
|
||||
displayName: 'Publish NPM packages files'
|
||||
inputs:
|
||||
artifactName: 'NPM_packages'
|
||||
targetPath: '$(Build.ArtifactStagingDirectory)'
|
||||
|
||||
- template: component-governance-component-detection-steps.yml
|
||||
parameters :
|
||||
condition : 'succeeded'
|
||||
|
||||
|
||||
- template: ../nuget/templates/test_win.yml
|
||||
parameters:
|
||||
AgentPool : 'onnxruntime-Win-CPU-2022'
|
||||
Skipx86Tests : false
|
||||
NugetPackageName : 'Microsoft.ML.OnnxRuntime'
|
||||
ArtifactSuffix: 'CPU'
|
||||
SpecificArtifact: ${{ parameters.SpecificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
|
||||
- template: ../nuget/templates/test_android.yml
|
||||
parameters:
|
||||
AgentPool : 'onnxruntime-Win-CPU-2022'
|
||||
SpecificArtifact: ${{ parameters.SpecificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
|
||||
|
||||
- template: ../nuget/templates/test_linux.yml
|
||||
parameters:
|
||||
AgentPool : onnxruntime-Ubuntu2204-AMD-CPU
|
||||
NugetPackageName : 'Microsoft.ML.OnnxRuntime'
|
||||
ArtifactSuffix: 'CPU'
|
||||
SpecificArtifact: ${{ parameters.SpecificArtifact }}
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
|
||||
- template: ../nuget/templates/test_macos.yml
|
||||
parameters:
|
||||
AgentPool : macOS-13
|
||||
ArtifactSuffix: 'CPU'
|
||||
|
||||
- template: ../nodejs/templates/test_win.yml
|
||||
parameters:
|
||||
AgentPool : 'onnxruntime-Win-CPU-2022'
|
||||
StageSuffix : 'Win_CPU_x64'
|
||||
|
||||
- template: ../nodejs/templates/test_linux.yml
|
||||
parameters:
|
||||
AgentPool : 'Azure-Pipelines-EO-Ubuntu-2004-aiinfra'
|
||||
StageSuffix : 'Linux_CPU_x64'
|
||||
|
||||
- template: ../nodejs/templates/test_macos.yml
|
||||
parameters:
|
||||
StageSuffix : 'macOS_CPU_x64'
|
||||
|
||||
- template: final-jar-testing.yml
|
||||
parameters:
|
||||
OS: Windows
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
SpecificArtifact: ${{ parameters.SpecificArtifact }}
|
||||
PoolName: 'onnxruntime-Win-CPU-2022'
|
||||
|
||||
- template: final-jar-testing.yml
|
||||
parameters:
|
||||
OS: Linux
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
SpecificArtifact: ${{ parameters.SpecificArtifact }}
|
||||
PoolName: 'onnxruntime-Ubuntu2204-AMD-CPU'
|
||||
|
||||
- template: final-jar-testing.yml
|
||||
parameters:
|
||||
OS: MacOS
|
||||
BuildId: ${{ parameters.BuildId }}
|
||||
SpecificArtifact: ${{ parameters.SpecificArtifact }}
|
||||
PoolName: 'macOS-13'
|
||||
|
|
|
|||
Loading…
Reference in a new issue