Update nodejs to 18.x (#17657)

1. Upgrade nodejs from 16.x to 18.x for Windows pipelines
2. Avoid using Azure DevOps "NodeTool" on Linux. The tool installs
nodejs from internet or local disk cache. But we already moved all Linux
tests to docker. So we do not need the installer anymore.
3. Remove some other unused code.
This commit is contained in:
Changming Sun 2023-09-25 14:12:11 -07:00 committed by GitHub
parent b2b1408608
commit a942bbf489
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
18 changed files with 15 additions and 117 deletions

View file

@ -56,10 +56,6 @@ stages:
clean: true
submodules: none
- task: NodeTool@0
inputs:
versionSpec: '16.x'
- task: UsePythonVersion@0
inputs:
versionSpec: '3.8'

View file

@ -53,10 +53,6 @@ jobs:
clean: true
submodules: recursive
- task: NodeTool@0
inputs:
versionSpec: '16.x'
- template: templates/get-docker-image-steps.yml
parameters:
Dockerfile: tools/ci_build/github/linux/docker/Dockerfile.manylinux2014_aten_cpu

View file

@ -36,5 +36,3 @@ jobs:
JobName: 'Linux_CI_Multi_GPU_TensorRT_Dev'
# The latest TensorRT container only supports ubuntu20.04 and python 3.8
RunDockerBuildArgs: '-o ubuntu20.04 -d tensorrt -x "--enable_multi_device_test"'
DoNugetPack: 'false'
ArtifactName: 'drop-linux'

View file

@ -33,6 +33,4 @@ jobs:
AgentPool : 'Linux-CPU-2019'
JobName: 'Linux_CI_Dev'
RunDockerBuildArgs: '-o ubuntu20.04 -d openvino -v 2023.0.0 -x "--use_openvino CPU_FP32 --build_wheel"'
DoNugetPack: 'false'
ArtifactName: 'drop-linux'
TimeoutInMinutes: 120

View file

@ -54,10 +54,6 @@ jobs:
clean: true
submodules: none
- task: NodeTool@0
inputs:
versionSpec: '16.x'
- task: UsePythonVersion@0
inputs:
versionSpec: '3.8'
@ -88,6 +84,7 @@ jobs:
mkdir -p $(Pipeline.Workspace)/ccache
docker run --rm \
--volume /data/onnx:/data/onnx:ro \
--volume /data/models:/build/models:ro \
--volume $(Build.SourcesDirectory):/onnxruntime_src \
--volume $(Build.BinariesDirectory):/build \
--volume $HOME/.onnx:/home/onnxruntimedev/.onnx \
@ -109,51 +106,11 @@ jobs:
--build_wheel \
--enable_onnx_tests \
--enable_training \
--use_cache \
--update --build; \
--use_cache; \
ccache -sv; \
ccache -z"
workingDirectory: $(Build.SourcesDirectory)
- task: CmdLine@2
displayName: 'Install python deps'
inputs:
script: |
set -e -x
python3 -m pip uninstall -y ort-nightly-gpu ort-nightly onnxruntime onnxruntime-gpu onnxruntime-training onnxruntime-directml ort-nightly-directml onnx -qq
cp $(Build.SourcesDirectory)/tools/ci_build/github/linux/docker/scripts/manylinux/requirements.txt $(Build.BinariesDirectory)/requirements.txt
# Test ORT with the latest ONNX release.
sed -i "s/git+http:\/\/github\.com\/onnx\/onnx.*/onnx/" $(Build.BinariesDirectory)/requirements.txt
python3 -m pip install -r $(Build.BinariesDirectory)/requirements.txt
mkdir $(Build.BinariesDirectory)/requirements_torch_cpu/
cp $(Build.SourcesDirectory)/tools/ci_build/github/linux/docker/scripts/training/ortmodule/stage1/requirements_torch_cpu/requirements.txt $(Build.BinariesDirectory)/requirements_torch_cpu/requirements.txt
python3 -m pip install -r $(Build.BinariesDirectory)/requirements_torch_cpu/requirements.txt
- task: CmdLine@2
displayName: 'Install Release python package'
inputs:
script: |
rm -rf $(Build.BinariesDirectory)/Release/onnxruntime $(Build.BinariesDirectory)/Release/pybind11
python3 -m pip install $(Build.BinariesDirectory)/Release/dist/*.whl
- task: PythonScript@0
displayName: 'Run Release unit tests'
inputs:
scriptPath: $(Build.SourcesDirectory)/tools/ci_build/build.py
workingDirectory: $(Build.BinariesDirectory)/Release
arguments: >-
--build_dir $(Build.BinariesDirectory)
--cmake_generator Ninja
--config Release
--test
--skip_submodule_sync
--build_shared_lib
--parallel
--build_wheel
--enable_onnx_tests
--enable_training
--ctest_path ""
- task: PublishTestResults@2
displayName: 'Publish unit test results'
inputs:

View file

@ -32,7 +32,6 @@ jobs:
parameters:
AgentPool : 'Onnxruntime-Linux-GPU-NC6sv3'
JobName: 'Onnxruntime_Linux_GPU_Training'
SubmoduleCheckoutMode: 'recursive'
RunDockerBuildArgs: >
-o ubuntu20.04 -d gpu
-t onnxruntime_orttraining_ortmodule_tests_image
@ -40,24 +39,16 @@ jobs:
-e
-x "
--enable_training
--config $(buildConfig)
--config Release
--use_cuda --cuda_version=11.8 --cuda_home=/usr/local/cuda-11.8 --cudnn_home=/usr/local/cuda-11.8
--build_wheel
--enable_nvtx_profile
--cmake_extra_defines CMAKE_CUDA_ARCHITECTURES=70
"
DoNugetPack: 'false'
RunInjectedPipeline: 'true'
InjectedPipeline: 'orttraining-linux-gpu-test-ci-pipeline.yml'
DockerImageTag: 'onnxruntime_orttraining_ortmodule_tests_image'
BuildConfig: $(buildConfig)
ArtifactName: 'drop-linux'
TimeoutInMinutes: 140
# Enable unreleased onnx opsets in CI builds
# This facilitates testing the implementation for the new opsets
AllowReleasedOpsetOnly: '0'
Strategy:
maxParallel: 2
matrix:
Release:
buildConfig: Release

View file

@ -97,7 +97,7 @@ jobs:
- task: NodeTool@0
inputs:
versionSpec: '16.x'
versionSpec: '18.x'
force32bit: ${{ parameters.isX86 }}
# Our build machine doesn't have java x86

View file

@ -1,23 +1,14 @@
parameters:
AgentPool : 'onnxruntime-Ubuntu2004-AMD-CPU'
StageName : 'Linux_CI_Dev'
SubmoduleCheckoutMode: ''
RunDockerBuildArgs: '-o ubuntu20.04 -d cpu -x "--build_wheel"'
DoNodejsPack: 'false'
DoNugetPack: 'false'
NuPackScript: ''
RunInjectedPipeline: 'false'
InjectedPipeline: ''
DockerImageTag: ''
BuildConfig: ''
ArtifactName: 'drop-linux'
TimeoutInMinutes: 120
# Controls whether unreleased onnx opsets are allowed. Default is set to 1
AllowReleasedOpsetOnly: '1'
# to inject strategy, you need to pass in the whole yaml structure -
# https://docs.microsoft.com/en-us/azure/devops/pipelines/yaml-schema?view=azure-devops&tabs=schema#strategies
# see example in orttraining-linux-gpu-ci-pipeline.yml
Strategy: ''
jobs:
- job: ${{ parameters.StageName }}
@ -28,16 +19,8 @@ jobs:
ALLOW_RELEASED_ONNX_OPSET_ONLY: ${{ parameters.AllowReleasedOpsetOnly }}
skipComponentGovernanceDetection: true
pool: ${{ parameters.AgentPool }}
${{ if ne(parameters.Strategy, '') }}:
strategy:
${{ parameters.Strategy }}
steps:
- checkout: self
${{ if ne(parameters.SubmoduleCheckoutMode, '') }}:
submodules: ${{ parameters.SubmoduleCheckoutMode }}
- task: NodeTool@0
inputs:
versionSpec: '16.x'
- template: run-docker-build-steps.yml
parameters:
RunDockerBuildArgs: '${{ parameters.RunDockerBuildArgs }}'
@ -48,31 +31,10 @@ jobs:
searchFolder: '$(Build.BinariesDirectory)'
testRunTitle: 'Unit Test Run'
condition: succeededOrFailed()
- ${{ if eq(parameters['DoNugetPack'], 'true') }}:
- script: |
${{ parameters.NuPackScript }}
displayName: 'Create Artifacts'
- task: PublishPipelineArtifact@0
displayName: 'Publish Pipeline Artifact'
inputs:
artifactName: ${{ parameters.ArtifactName }}
targetPath: '$(Build.ArtifactStagingDirectory)'
- ${{ if eq(parameters['DoNodejsPack'], 'true') }}:
- script: |
npm pack
cp $(Build.SourcesDirectory)/js/node/onnxruntime-*.tgz $(Build.ArtifactStagingDirectory)
cp -R $(Build.SourcesDirectory)/js/node/prebuilds $(Build.ArtifactStagingDirectory)/prebuilds
workingDirectory: '$(Build.SourcesDirectory)/js/node'
displayName: 'Create NPM Package'
- task: PublishPipelineArtifact@0
displayName: 'Publish Pipeline Artifact: ${{ parameters.ArtifactName }}'
inputs:
artifactName: ${{ parameters.ArtifactName }}
targetPath: '$(Build.ArtifactStagingDirectory)'
- ${{ if eq(parameters['RunInjectedPipeline'], 'true') }}:
- template: |
${{ parameters.InjectedPipeline }}
parameters:
DockerImageTag: ${{ parameters.DockerImageTag }}
BuildConfig: ${{ parameters.BuildConfig }}
BuildConfig: Release
- template: clean-agent-build-directory-step.yml

View file

@ -83,7 +83,7 @@ jobs:
architecture: $(buildArch)
- task: NodeTool@0
inputs:
versionSpec: '16.x'
versionSpec: '18.x'
- template: download-deps.yml
- task: PythonScript@0

View file

@ -50,7 +50,7 @@ jobs:
versionSpec: 3.11
- task: NodeTool@0
inputs:
versionSpec: '16.x'
versionSpec: '18.x'
- template: set-version-number-variables-step.yml

View file

@ -80,7 +80,7 @@ stages:
- task: NodeTool@0
inputs:
versionSpec: '16.x'
versionSpec: '18.x'
- script:
brew install coreutils ninja npm yarn

View file

@ -29,7 +29,7 @@ jobs:
- task: NodeTool@0
inputs:
versionSpec: '16.x'
versionSpec: '18.x'
- task: DownloadPipelineArtifact@2
inputs:
patterns: 'Release_*/**/*'

View file

@ -74,7 +74,7 @@ stages:
displayName: 'Checkout submodule onnx'
- task: NodeTool@0
inputs:
versionSpec: '16.x'
versionSpec: '18.x'
- template: linux-web-init-and-check.yml
- task: Bash@3
displayName: 'Extract commit SHA and save to __commit.txt'

View file

@ -101,7 +101,7 @@ stages:
- task: NodeTool@0
condition: and(succeeded(), eq('${{ parameters.buildNodejs}}', true))
inputs:
versionSpec: '16.x'
versionSpec: '18.x'
- template: jobs/set-winenv.yml
parameters:

View file

@ -74,7 +74,7 @@ jobs:
architecture: $(buildArch)
- task: NodeTool@0
inputs:
versionSpec: '16.x'
versionSpec: '18.x'
- template: download-deps.yml
- task: PythonScript@0

View file

@ -72,7 +72,7 @@ jobs:
displayName: 'Testing: force EOL to lf on windows for /js/**'
- task: NodeTool@0
inputs:
versionSpec: '16.x'
versionSpec: '18.x'
- task: DownloadPipelineArtifact@2
inputs:
patterns: '${{ parameters.BuildConfig }}_*/**/*'

View file

@ -33,7 +33,7 @@ jobs:
displayName: 'Checkout submodule onnx'
- task: NodeTool@0
inputs:
versionSpec: '16.x'
versionSpec: '18.x'
- task: DownloadPipelineArtifact@2
inputs:
patterns: 'Release_*/**/*'

View file

@ -32,7 +32,7 @@ jobs:
- task: NodeTool@0
inputs:
versionSpec: '16.x'
versionSpec: '18.x'
- task: NuGetToolInstaller@0
displayName: Use Nuget 5.7.0