Skip to content

Commit 00f3eb2

Browse files
authored
Update ADO pipeline to use GDK new layouts for 2510 (#649)
1 parent 2f50e14 commit 00f3eb2

13 files changed

+507
-197
lines changed

.azuredevops/pipelines/DirectXTex-GitHub-CMake-Xbox-Dev17.yml

Lines changed: 103 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,8 @@ pool:
6565
vmImage: windows-2022
6666

6767
jobs:
68-
- job: CMAKE_BUILD
69-
displayName: CMake using VS Generator
68+
- job: CMAKE_BUILD_VS_SCAR
69+
displayName: CMake using VS Generator (x64+Xbox Series X|S)
7070
steps:
7171
- checkout: self
7272
clean: true
@@ -98,13 +98,19 @@ jobs:
9898
displayName: 'Secure Supply Chain Analysis'
9999
- task: NuGetAuthenticate@1
100100
displayName: 'NuGet Auth'
101-
- task: PowerShell@2
102-
displayName: 'NuGet Install GDK'
101+
- template: '/.azuredevops/templates/DirectXTex-setup-gdk-auto.yml'
102+
parameters:
103+
windows: true
104+
scarlett: true
105+
- task: CmdLine@2
106+
displayName: Setup required env variables
103107
inputs:
104-
targetType: filePath
105-
filePath: ./build/RestoreGDK.ps1
106-
arguments: -GDKEditionNumber $(GDK_EDITION) -OutputDirectory $(EXTRACTED_FOLDER)
107-
failOnStderr: true
108+
script: |
109+
call $(Build.SourcesDirectory)\build\SetupBWOI.cmd $(EXTRACTED_FOLDER) $(GDK_EDITION) Scarlett
110+
echo ##vso[task.setvariable variable=GameDK;]%GameDK%
111+
echo ##vso[task.setvariable variable=GameDKLatest;]%GameDKLatest%
112+
echo ##vso[task.setvariable variable=GameDKXboxLatest;]%GameDKXboxLatest%
113+
108114
- task: CMake@1
109115
displayName: 'CMake (MSVC): Config x64 (Xbox Series X|S)'
110116
inputs:
@@ -142,69 +148,126 @@ jobs:
142148
cwd: ''
143149
cmakeArgs: --build out2 -v --config RelWithDebInfo
144150
- task: CMake@1
145-
displayName: 'CMake (MSVC): Config x64 (Xbox One)'
151+
displayName: 'CMake (DLL): Config x64 (Xbox Series X|S)'
146152
inputs:
147153
cwd: ''
148154
cmakeArgs: >
149155
-G "$(VS_GENERATOR)" -A x64 -B out3
150156
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
151-
-DBUILD_XBOX_EXTS_XBOXONE=ON -DBUILD_SAMPLE=OFF
157+
-DBUILD_XBOX_EXTS_SCARLETT=ON -DBUILD_SAMPLE=OFF
158+
-DBUILD_SHARED_LIBS=ON
152159
- task: CMake@1
153-
displayName: 'CMake (MSVC): Build x64 Debug (Xbox One)'
160+
displayName: 'CMake (DLL): Build x64 Debug (Xbox Series X|S)'
154161
inputs:
155162
cwd: ''
156163
cmakeArgs: --build out3 -v --config Debug
157164
- task: CMake@1
158-
displayName: 'CMake (MSVC): Build x64 Release (Xbox One)'
165+
displayName: 'CMake (DLL): Build x64 Release (Xbox Series X|S)'
159166
inputs:
160167
cwd: ''
161168
cmakeArgs: --build out3 -v --config RelWithDebInfo
169+
170+
- job: CMAKE_BUILD_VS_XBONE
171+
displayName: CMake using VS Generator (x64+Xbox One)
172+
steps:
173+
- checkout: self
174+
clean: true
175+
fetchTags: false
176+
- task: NuGetToolInstaller@1
177+
displayName: 'Use NuGet'
178+
- task: PowerShell@2
179+
displayName: 'Create nuget.config with single source'
180+
inputs:
181+
targetType: inline
182+
script: |
183+
$xml = @'
184+
<?xml version="1.0" encoding="utf-8"?>
185+
<configuration>
186+
<packageSources>
187+
<clear />
188+
</packageSources>
189+
</configuration>
190+
'@
191+
$xml | Set-Content -Path "$(Build.SourcesDirectory)\NuGet.config"
192+
193+
- task: NuGetCommand@2
194+
# We have to use a nuget.config to provide the feed for the 'nuget install' option.
195+
displayName: 'NuGet set package source to ADO feed'
196+
inputs:
197+
command: custom
198+
arguments: sources add -Name xboxgdk -Source $(URL_FEED) -ConfigFile $(Build.SourcesDirectory)\NuGet.config
199+
- task: nuget-security-analysis@0
200+
displayName: 'Secure Supply Chain Analysis'
201+
- task: NuGetAuthenticate@1
202+
displayName: 'NuGet Auth'
203+
- template: '/.azuredevops/templates/DirectXTex-setup-gdk-auto.yml'
204+
parameters:
205+
windows: true
206+
scarlett: false
207+
- task: CmdLine@2
208+
displayName: Setup required env variables
209+
inputs:
210+
script: |
211+
call $(Build.SourcesDirectory)\build\SetupBWOI.cmd $(EXTRACTED_FOLDER) $(GDK_EDITION) XboxOne
212+
echo ##vso[task.setvariable variable=GameDK;]%GameDK%
213+
echo ##vso[task.setvariable variable=GameDKLatest;]%GameDKLatest%
214+
echo ##vso[task.setvariable variable=GameDKXboxLatest;]%GameDKXboxLatest%
215+
162216
- task: CMake@1
163-
displayName: 'CMake (ClangCl): Config x64 (Xbox One)'
217+
displayName: 'CMake (MSVC): Config x64 (Xbox One)'
164218
inputs:
165219
cwd: ''
166220
cmakeArgs: >
167-
-G "$(VS_GENERATOR)" -A x64 -T clangcl -B out4
221+
-G "$(VS_GENERATOR)" -A x64 -B out
168222
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
169223
-DBUILD_XBOX_EXTS_XBOXONE=ON -DBUILD_SAMPLE=OFF
170224
- task: CMake@1
171-
displayName: 'CMake (ClangCl): Build x64 Debug (Xbox One)'
225+
displayName: 'CMake (MSVC): Build x64 Debug (Xbox One)'
172226
inputs:
173227
cwd: ''
174-
cmakeArgs: --build out4 -v --config Debug
228+
cmakeArgs: --build out -v --config Debug
175229
- task: CMake@1
176-
displayName: 'CMake (ClangCl): Build x64 Release (Xbox One)'
230+
displayName: 'CMake (MSVC): Build x64 Release (Xbox One)'
177231
inputs:
178232
cwd: ''
179-
cmakeArgs: --build out4 -v --config RelWithDebInfo
233+
cmakeArgs: --build out -v --config RelWithDebInfo
180234
- task: CMake@1
181-
displayName: 'CMake (DLL): Config x64 (Xbox Series X|S)'
235+
displayName: 'CMake (ClangCl): Config x64 (Xbox One)'
182236
inputs:
183237
cwd: ''
184238
cmakeArgs: >
185-
-G "$(VS_GENERATOR)" -A x64 -B out5
239+
-G "$(VS_GENERATOR)" -A x64 -T clangcl -B out2
186240
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
187-
-DBUILD_XBOX_EXTS_SCARLETT=ON -DBUILD_SAMPLE=OFF
188-
-DBUILD_SHARED_LIBS=ON
241+
-DBUILD_XBOX_EXTS_XBOXONE=ON -DBUILD_SAMPLE=OFF
189242
- task: CMake@1
190-
displayName: 'CMake (DLL): Build x64 Debug (Xbox Series X|S)'
243+
displayName: 'CMake (ClangCl): Build x64 Debug (Xbox One)'
191244
inputs:
192245
cwd: ''
193-
cmakeArgs: --build out5 -v --config Debug
246+
cmakeArgs: --build out2 -v --config Debug
247+
- task: CMake@1
248+
displayName: 'CMake (ClangCl): Build x64 Release (Xbox One)'
249+
inputs:
250+
cwd: ''
251+
cmakeArgs: --build out2 -v --config RelWithDebInfo
194252
- task: CMake@1
195253
displayName: 'CMake (DLL): Config x64 (Xbox One)'
196254
inputs:
197255
cwd: ''
198256
cmakeArgs: >
199-
-G "$(VS_GENERATOR)" -A x64 -B out6
257+
-G "$(VS_GENERATOR)" -A x64 -B out3
200258
-DCMAKE_SYSTEM_VERSION=$(WIN10_SDK)
201259
-DBUILD_XBOX_EXTS_XBOXONE=ON -DBUILD_SAMPLE=OFF
202260
-DBUILD_SHARED_LIBS=ON
203261
- task: CMake@1
204262
displayName: 'CMake (DLL): Build x64 Debug (Xbox One)'
205263
inputs:
206264
cwd: ''
207-
cmakeArgs: --build out6 -v --config Debug
265+
cmakeArgs: --build out3 -v --config Debug
266+
- task: CMake@1
267+
displayName: 'CMake (DLL): Build x64 Release (Xbox One)'
268+
inputs:
269+
cwd: ''
270+
cmakeArgs: --build out3 -v --config Release
208271

209272
- job: BUILD_GDK_CMAKE_XS
210273
displayName: 'Xbox Series X|S Extensions BUILD_TESTING=ON'
@@ -249,13 +312,10 @@ jobs:
249312
displayName: 'Secure Supply Chain Analysis'
250313
- task: NuGetAuthenticate@1
251314
displayName: 'NuGet Auth'
252-
- task: PowerShell@2
253-
displayName: 'NuGet Install GDK'
254-
inputs:
255-
targetType: filePath
256-
filePath: ./build/RestoreGDK.ps1
257-
arguments: -GDKEditionNumber $(GDK_EDITION) -OutputDirectory $(EXTRACTED_FOLDER)
258-
failOnStderr: true
315+
- template: '/.azuredevops/templates/DirectXTex-setup-gdk-auto.yml'
316+
parameters:
317+
windows: true
318+
scarlett: true
259319
- task: CmdLine@2
260320
displayName: Setup BWOI for GDK command-line
261321
inputs:
@@ -268,7 +328,10 @@ jobs:
268328
echo ##vso[task.prependpath]%WindowsSdkVerBinPath%x64
269329
echo ##vso[task.prependpath]%VCToolsInstallDir%bin\HostX64\x64
270330
call $(Build.SourcesDirectory)\build\SetupBWOI.cmd $(EXTRACTED_FOLDER) $(GDK_EDITION) Scarlett
331+
echo ##vso[task.setvariable variable=GameDK;]%GameDK%
271332
echo ##vso[task.setvariable variable=GameDKLatest;]%GameDKLatest%
333+
echo ##vso[task.setvariable variable=GameDKCoreLatest;]%GameDKCoreLatest%
334+
echo ##vso[task.setvariable variable=GameDKXboxLatest;]%GameDKXboxLatest%
272335
echo ##vso[task.setvariable variable=GRDKLatest;]%GRDKLatest%
273336
echo ##vso[task.setvariable variable=GXDKLatest;]%GXDKLatest%
274337
echo ##vso[task.setvariable variable=INCLUDE;]%INCLUDE%
@@ -340,13 +403,10 @@ jobs:
340403
displayName: 'Secure Supply Chain Analysis'
341404
- task: NuGetAuthenticate@1
342405
displayName: 'NuGet Auth'
343-
- task: PowerShell@2
344-
displayName: 'NuGet Install GDK'
345-
inputs:
346-
targetType: filePath
347-
filePath: ./build/RestoreGDK.ps1
348-
arguments: -GDKEditionNumber $(GDK_EDITION) -OutputDirectory $(EXTRACTED_FOLDER)
349-
failOnStderr: true
406+
- template: '/.azuredevops/templates/DirectXTex-setup-gdk-auto.yml'
407+
parameters:
408+
windows: true
409+
scarlett: false
350410
- task: CmdLine@2
351411
displayName: Setup BWOI for GDK command-line
352412
inputs:
@@ -359,7 +419,10 @@ jobs:
359419
echo ##vso[task.prependpath]%WindowsSdkVerBinPath%x64
360420
echo ##vso[task.prependpath]%VCToolsInstallDir%bin\HostX64\x64
361421
call $(Build.SourcesDirectory)\build\SetupBWOI.cmd $(EXTRACTED_FOLDER) $(GDK_EDITION) XboxOne
422+
echo ##vso[task.setvariable variable=GameDK;]%GameDK%
362423
echo ##vso[task.setvariable variable=GameDKLatest;]%GameDKLatest%
424+
echo ##vso[task.setvariable variable=GameDKCoreLatest;]%GameDKCoreLatest%
425+
echo ##vso[task.setvariable variable=GameDKXboxLatest;]%GameDKXboxLatest%
363426
echo ##vso[task.setvariable variable=GRDKLatest;]%GRDKLatest%
364427
echo ##vso[task.setvariable variable=GXDKLatest;]%GXDKLatest%
365428
echo ##vso[task.setvariable variable=INCLUDE;]%INCLUDE%

.azuredevops/pipelines/DirectXTex-GitHub-CMake-Xbox.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ pool:
7676
vmImage: windows-2022
7777

7878
jobs:
79-
- job: CMAKE_BUILD
79+
- job: CMAKE_BUILD_VS
8080
displayName: CMake using VS Generator
8181
steps:
8282
- checkout: self
@@ -116,6 +116,11 @@ jobs:
116116
filePath: ./build/RestoreGDK.ps1
117117
arguments: -GDKEditionNumber $(GDK_EDITION) -OutputDirectory $(EXTRACTED_FOLDER)
118118
failOnStderr: true
119+
- task: NuGetCommand@2
120+
displayName: 'NuGet install Xbox GDK'
121+
inputs:
122+
command: custom
123+
arguments: 'install -directdownload Microsoft.GDK.Xbox -ExcludeVersion -Version $(GDKNuGetPackageVersion) -OutputDirectory $(EXTRACTED_FOLDER)'
119124
- task: CMake@1
120125
displayName: 'CMake (MSVC): Config x64 (Xbox Series X|S)'
121126
inputs:

0 commit comments

Comments
 (0)