onnxruntime/tools/ci_build/github/azure-pipelines/templates/linux-gpu-tensorrt-packaging-pipeline.yml
Changming Sun c6b0d185b4
Update cmake to 3.27 and upgrade Linux CUDA docker files from CentOS7 to UBI8 (#16856)
### Description
1. Update docker files and their build instructions.
ARM64 and x86_64 can use the same docker file.

2. Upgrade Linux CUDA pipeline's base docker image from CentOS7 to UBI8
AB#18990
2023-09-05 18:12:10 -07:00

85 lines
2.9 KiB
YAML

parameters:
- name: artifactName
type: string
default: 'onnxruntime-linux-x64-gpu-tensorrt-$(OnnxRuntimeVersion)'
- name: artifactNameNoVersionString
type: string
default: 'onnxruntime-linux-x64-gpu-tensorrt'
- name: buildJava
type: boolean
default: false
- name: buildJavaOption
type: string
default: ''
- name: buildNodejs
type: boolean
default: true
- name: buildNodejsOption
type: string
default: ''
# We only have CUDA/TRT on x64. We do not have a build for CUDA/TRT for ARM64.
# Therefore this file does not have an `OnnxruntimeNodejsBindingArch` parameter
stages:
- stage: Linux_C_API_Packaging_GPU_TensorRT_x64
dependsOn: []
jobs:
- job:
dependsOn: []
workspace:
clean: all
timeoutInMinutes: 180
pool: 'Onnxruntime-Linux-GPU'
variables:
CUDA_VERSION: '11.8'
steps:
- checkout: self
clean: true
submodules: recursive
- template: get-docker-image-steps.yml
parameters:
Dockerfile: tools/ci_build/github/linux/docker/Dockerfile.manylinux2_28_cuda11_8_tensorrt8_6
Context: tools/ci_build/github/linux/docker
DockerBuildArgs: "--build-arg POLICY=manylinux_2_28 --build-arg PLATFORM=x86_64 --build-arg PREPEND_PATH=/usr/local/cuda/bin --build-arg LD_LIBRARY_PATH_ARG=/usr/local/lib64 --build-arg DEVTOOLSET_ROOTPATH=/usr --build-arg BUILD_UID=$( id -u )"
Repository: onnxruntimecuda118xtrt86build
- template: set-version-number-variables-step.yml
- script: $(Build.SourcesDirectory)/tools/ci_build/github/linux/build_tensorrt_c_api_package.sh
workingDirectory: $(Build.SourcesDirectory)
displayName: 'Build and Test'
- ${{ if eq(parameters.buildJava, true) }}:
- template: java-api-artifacts-package-and-publish-steps-posix.yml
parameters:
arch: 'linux-x64'
buildConfig: 'Release'
artifactName: 'onnxruntime-java-linux-x64-tensorrt'
version: '$(OnnxRuntimeVersion)'
libraryName: 'libonnxruntime.so'
nativeLibraryName: 'libonnxruntime4j_jni.so'
- ${{ if eq(parameters.buildNodejs, 'true') }}:
- template: nodejs-artifacts-package-and-publish-steps-posix.yml
parameters:
arch: 'x64'
os: 'linux'
artifactName: 'drop-onnxruntime-nodejs-linux-x64-tensorrt'
- template: c-api-artifacts-package-and-publish-steps-posix.yml
parameters:
buildConfig: 'Release'
artifactName: ${{ parameters.artifactName }}
artifactNameNoVersionString: ${{ parameters.artifactNameNoVersionString }}
libraryName: 'libonnxruntime.so.$(OnnxRuntimeVersion)'
- template: component-governance-component-detection-steps.yml
parameters :
condition : 'succeeded'
- template: clean-agent-build-directory-step.yml