Skip to content

Commit 5f9a00f

Browse files
update
1 parent cb2cce0 commit 5f9a00f

File tree

1 file changed

+56
-50
lines changed

1 file changed

+56
-50
lines changed

azure-pipelines.yml

Lines changed: 56 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,27 @@
44

55
name: $(TeamProject)_$(Build.DefinitionName)_$(SourceBranchName)_$(Date:yyyyMMdd)$(Rev:.r)
66

7-
variables:
8-
MyRunNumber: $[counter('MyRunNumber', 52201)]
9-
7+
parameters:
108
# Set this to 'true' to build the libtorch-* packages as part of main branch CI and
119
# push them to the artifacts feed of the Azure CI project
12-
BuildLibTorchPackages: true
13-
PushPackagesToFeed: false
10+
- name: BuildLibTorchPackages
11+
type: boolean
12+
default: false
13+
- name: PushPackagesToFeed
14+
type: boolean
15+
default: false
16+
17+
variables:
18+
MyRunNumber: $[counter('MyRunNumber', 52201)]
19+
LinuxPrepScript: |
20+
ldd --version && (/sbin/ldconfig -p | grep stdc++) && (strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep LIBCXX)
21+
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys DE19EB17684BA42D
22+
sudo apt-get -y update
23+
sudo apt-get -y install cmake clang git libunwind8 curl libomp-dev libomp5 wget
24+
wget https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
25+
sudo dpkg --purge packages-microsoft-prod && sudo dpkg -i packages-microsoft-prod.deb
26+
sudo apt-get update; sudo apt-get install -y apt-transport-https && sudo apt-get update
27+
ldd --version && (/sbin/ldconfig -p | grep stdc++) && (strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep LIBCXX)
1428
1529
resources:
1630
containers:
@@ -29,15 +43,7 @@ jobs:
2943
# This reports the GLIB_ and GLIBCXX_ dependencies on the system which ends up getting baked into
3044
# the generated libTorchSharp.so (and partly determines which Linux systems that binary will
3145
# be usable on), then installs clang-7.0 (LibTorch likes this for building C++ 14), then installs .NET 6.0
32-
prepScript:
33-
ldd --version && (/sbin/ldconfig -p | grep stdc++) && (strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep LIBCXX) &&
34-
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys DE19EB17684BA42D &&
35-
sudo apt-get -y update &&
36-
sudo apt-get -y install cmake clang git libunwind8 curl libomp-dev libomp5 &&
37-
wget https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb &&
38-
sudo dpkg --purge packages-microsoft-prod && sudo dpkg -i packages-microsoft-prod.deb &&
39-
sudo apt-get update; sudo apt-get install -y apt-transport-https && sudo apt-get update &&
40-
ldd --version && (/sbin/ldconfig -p | grep stdc++) && (strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep LIBCXX)
46+
prepScript: ${{ variables.LinuxPrepScript }}
4147
buildScript: dotnet build /p:SkipCuda=true -c
4248
testScript: dotnet test /p:SkipCuda=true --blame test/TorchSharpTest/TorchSharpTest.csproj -c
4349
pool:
@@ -88,7 +94,8 @@ jobs:
8894
################################################################################
8995
- job: Linux_Native_Build_For_Packages
9096
################################################################################
91-
condition: and(ne(variables['system.pullrequest.isfork'], true), eq(variables['build.sourcebranchname'], 'kickBuild'))
97+
- {{ if ne(parameters['BuildLibTorchPackages'], 'true') }}
98+
condition: false
9299
variables:
93100
BuildConfig: Release
94101
OfficialBuildId: $(BUILD.BUILDNUMBER)
@@ -107,23 +114,13 @@ jobs:
107114
version: 6.0.402
108115
installationPath: $(Agent.ToolsDirectory)/dotnet
109116

110-
- script:
111-
ldd --version && (/sbin/ldconfig -p | grep stdc++) && (strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep LIBCXX) &&
112-
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys DE19EB17684BA42D &&
113-
sudo apt-get -y update &&
114-
sudo apt-get -y install cmake clang git libunwind8 curl libomp-dev libomp5 &&
115-
wget https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb &&
116-
sudo dpkg --purge packages-microsoft-prod && sudo dpkg -i packages-microsoft-prod.deb &&
117-
sudo apt-get update; sudo apt-get install -y apt-transport-https && sudo apt-get update &&
118-
ldd --version && (/sbin/ldconfig -p | grep stdc++) && (strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep LIBCXX)
117+
- script: ${{ variables.LinuxPrepScript }}
119118
displayName: Install dependencies
120119

121120
- script: dotnet build -c $(BuildConfig) src/Redist/libtorch-cpu/libtorch-cpu.proj /p:UpdateSHA=true /p:SkipTests=true /p:TargetOS=linux /t:Build /p:IncludeLibTorchCpuPackages=true
122-
condition: eq(variables['BuildLibTorchPackages'], 'true')
123121
displayName: Download libtorch native binaries
124122

125123
- script: dotnet build -c $(BuildConfig) src/Redist/libtorch-cuda-12.1/libtorch-cuda-12.1.proj /p:UpdateSHA=true /p:SkipTests=true /p:TargetOS=linux /t:Build /p:IncludeLibTorchCudaPackages=true
126-
condition: eq(variables['BuildLibTorchPackages'], 'true')
127124
displayName: Download libtorch native CUDA binaries
128125

129126
- script: dotnet build -c $(BuildConfig) src/TorchSharp/TorchSharp.csproj /p:SkipCuda=true /p:SkipTests=true
@@ -141,7 +138,8 @@ jobs:
141138
################################################################################
142139
- job: Windows_Native_Build_For_Packages
143140
################################################################################
144-
condition: and(ne(variables['system.pullrequest.isfork'], true), eq(variables['build.sourcebranchname'], 'kickBuild'))
141+
- {{ if ne(variables['BuildLibTorchPackages'], 'true') }}
142+
condition: false
145143
variables:
146144
BuildConfig: Release
147145
OfficialBuildId: $(BUILD.BUILDNUMBER)
@@ -152,7 +150,6 @@ jobs:
152150
vmImage: 'windows-latest'
153151

154152
steps:
155-
156153
- task: UseDotNet@2
157154
displayName: 'Use .NET Core sdk'
158155
inputs:
@@ -161,14 +158,11 @@ jobs:
161158
installationPath: $(Agent.ToolsDirectory)/dotnet
162159

163160
- script: dotnet build -c $(BuildConfig) src/Redist/libtorch-cpu/libtorch-cpu.proj /p:UpdateSHA=true /p:SkipTests=true /p:TargetOS=windows /t:Build /p:IncludeLibTorchCpuPackages=true
164-
condition: eq(variables['BuildLibTorchPackages'], 'true')
165161
displayName: Download libtorch native binaries
166162

167163
- script: dotnet build -c $(BuildConfig) src/Redist/libtorch-cuda-12.1/libtorch-cuda-12.1.proj /p:UpdateSHA=true /p:SkipTests=true /p:TargetOS=windows /t:Build /p:IncludeLibTorchCudaPackages=true
168-
condition: eq(variables['BuildLibTorchPackages'], 'true')
169164
displayName: Download libtorch native CUDA binaries
170165

171-
172166
- script: dotnet build -c $(BuildConfig) src/TorchSharp/TorchSharp.csproj /p:SkipCuda=true /p:SkipTests=true
173167
displayName: Build Windows
174168

@@ -184,7 +178,8 @@ jobs:
184178
# ################################################################################
185179
- job: MacOS_x64_Native_Build_For_Packages
186180
# ################################################################################
187-
condition: and(ne(variables['system.pullrequest.isfork'], true), eq(variables['build.sourcebranchname'], 'main'))
181+
- {{ if ne(parameters['BuildLibTorchPackages'], 'true') }}
182+
condition: false
188183
variables:
189184
BuildConfig: Release
190185
OfficialBuildId: $(BUILD.BUILDNUMBER)
@@ -195,7 +190,6 @@ jobs:
195190
vmImage: 'macos-latest'
196191
steps:
197192
- script: dotnet build -c $(BuildConfig) src/Redist/libtorch-cpu/libtorch-cpu.proj /p:UpdateSHA=true /p:SkipTests=true /p:TargetOS=mac /t:Build /p:IncludeLibTorchCpuPackages=true
198-
condition: eq(variables['BuildLibTorchPackages'], 'true')
199193
displayName: Download libtorch native binaries
200194

201195
- script: dotnet build -c $(BuildConfig) src/TorchSharp/TorchSharp.csproj /p:SkipCuda=true /p:SkipTests=true
@@ -213,7 +207,8 @@ jobs:
213207
# ################################################################################
214208
- job: MacOS_arm64_Native_Build_For_Packages
215209
# ################################################################################
216-
condition: and(ne(variables['system.pullrequest.isfork'], true), eq(variables['build.sourcebranchname'], 'main'))
210+
- {{ if ne(parameters['BuildLibTorchPackages'], 'true') }}
211+
condition: false
217212
variables:
218213
BuildConfig: Release
219214
OfficialBuildId: $(BUILD.BUILDNUMBER)
@@ -242,7 +237,8 @@ jobs:
242237
################################################################################
243238
- job: Build_TorchSharp_And_libtorch_cpu_Packages
244239
################################################################################
245-
condition: and(ne(variables['system.pullrequest.isfork'], true), eq(variables['build.sourcebranchname'], 'main'))
240+
- {{ if ne(parameters['BuildLibTorchPackages'], 'true') }}
241+
condition: false
246242
dependsOn:
247243
- Linux_Native_Build_For_Packages
248244
- Windows_Native_Build_For_Packages
@@ -416,7 +412,8 @@ jobs:
416412
# Only run if BuildLibTorchPackages is true
417413
- job: Build_libtorch_cuda_win_Packages
418414
################################################################################
419-
condition: and(ne(variables['system.pullrequest.isfork'], true), eq(variables['build.sourcebranchname'], 'kickBuild'), eq(variables['BuildLibTorchPackages'], 'true'))
415+
- {{ if ne(parameters['BuildLibTorchPackages'], 'true') }}
416+
condition: false
420417
dependsOn:
421418
- Windows_Native_Build_For_Packages
422419
variables:
@@ -471,7 +468,8 @@ jobs:
471468
################################################################################
472469
- job: Build_libtorch_cuda_linux_Packages
473470
################################################################################
474-
condition: and(ne(variables['system.pullrequest.isfork'], true), eq(variables['build.sourcebranchname'], 'kickBuild'), eq(variables['BuildLibTorchPackages'], 'true'))
471+
- {{ if ne(parameters['BuildLibTorchPackages'], 'true') }}
472+
condition: false
475473
dependsOn:
476474
- Linux_Native_Build_For_Packages
477475
variables:
@@ -492,15 +490,7 @@ jobs:
492490
version: 6.x
493491
installationPath: $(Agent.ToolsDirectory)/dotnet
494492

495-
- script:
496-
ldd --version && (/sbin/ldconfig -p | grep stdc++) && (strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep LIBCXX) &&
497-
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys DE19EB17684BA42D &&
498-
sudo apt-get -y update &&
499-
sudo apt-get -y install cmake clang git libunwind8 curl libomp-dev libomp5 &&
500-
wget https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb &&
501-
sudo dpkg --purge packages-microsoft-prod && sudo dpkg -i packages-microsoft-prod.deb &&
502-
sudo apt-get update; sudo apt-get install -y apt-transport-https && sudo apt-get update &&
503-
ldd --version && (/sbin/ldconfig -p | grep stdc++) && (strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep LIBCXX)
493+
- script: ${{ variables.LinuxPrepScript }}
504494
displayName: Install dependencies
505495

506496
# We are 10GB space-constrained on the Azure Pipelines CI system so clean up what we can
@@ -545,7 +535,10 @@ jobs:
545535
################################################################################
546536
- job: CodeSign_Core
547537
################################################################################
548-
condition: and(ne(variables['system.pullrequest.isfork'], true), eq(variables['build.sourcebranchname'], 'main'))
538+
- {{ if and(eq(parameters['BuildLibTorchPackages'], 'true'), eq(parameters['PushPackagesToFeed'], true)) }}
539+
condition: and(ne(variables['system.pullrequest.isfork'], true))
540+
- {{ else }}
541+
condition: false
549542
dependsOn:
550543
- Build_TorchSharp_And_libtorch_cpu_Packages
551544
variables:
@@ -593,7 +586,10 @@ jobs:
593586
################################################################################
594587
- job: CodeSign_Extras
595588
################################################################################
596-
condition: and(ne(variables['system.pullrequest.isfork'], true), eq(variables['build.sourcebranchname'], 'main'), eq(variables['BuildLibTorchPackages'], 'true'))
589+
- {{ if and(eq(parameters['BuildLibTorchPackages'], 'true'), eq(parameters['PushPackagesToFeed'], true)) }}
590+
condition: and(ne(variables['system.pullrequest.isfork'], true))
591+
- {{ else }}
592+
condition: false
597593
dependsOn:
598594
- Build_libtorch_cuda_win_Packages
599595
- Build_libtorch_cuda_linux_Packages
@@ -667,7 +663,10 @@ jobs:
667663
################################################################################
668664
- job: Push_TorchSharp_And_libtorch_cpu_Packages
669665
################################################################################
670-
condition: and(ne(variables['system.pullrequest.isfork'], true), eq(variables['build.sourcebranchname'], 'main'), eq(variables['PushPackagesToFeed'], true))
666+
- {{ if and(eq(parameters['BuildLibTorchPackages'], 'true'), eq(parameters['PushPackagesToFeed'], true)) }}
667+
condition: eq(variables['system.pullrequest.isfork'], false))
668+
- {{ else }}
669+
condition: false
671670

672671
dependsOn:
673672
- Build_TorchSharp_And_libtorch_cpu_Packages
@@ -769,6 +768,10 @@ jobs:
769768
# Only run if BuildLibTorchPackages is true
770769
- job: Push_libtorch_cuda_win_Packages
771770
################################################################################
771+
- {{ if and(eq(parameters['BuildLibTorchPackages'], 'true'), eq(parameters['PushPackagesToFeed'], true)) }}
772+
condition: eq(variables['system.pullrequest.isfork'], false))
773+
- {{ else }}
774+
condition: false
772775
condition: and(ne(variables['system.pullrequest.isfork'], true), eq(variables['build.sourcebranchname'], 'main'), eq(variables['BuildLibTorchPackages'], 'true'), eq(variables['PushPackagesToFeed'], true))
773776
dependsOn:
774777
- Build_libtorch_cuda_win_Packages
@@ -854,7 +857,10 @@ jobs:
854857
################################################################################
855858
- job: Push_libtorch_cuda_linux_Packages
856859
################################################################################
857-
condition: and(ne(variables['system.pullrequest.isfork'], true), eq(variables['build.sourcebranchname'], 'main'), eq(variables['BuildLibTorchPackages'], 'true'), eq(variables['PushPackagesToFeed'], true))
860+
- {{ if and(eq(parameters['BuildLibTorchPackages'], 'true'), eq(parameters['PushPackagesToFeed'], true)) }}
861+
condition: eq(variables['system.pullrequest.isfork'], false))
862+
- {{ else }}
863+
condition: false
858864
dependsOn:
859865
- Build_libtorch_cuda_linux_Packages
860866
- CodeSign_Extras

0 commit comments

Comments
 (0)