@@ -20,7 +20,6 @@ variables:
20
20
ROOT : $(Build.SourcesDirectory)
21
21
CDP_DEFINITION_BUILD_COUNT : $[counter('', 0)] # needed for onebranch.pipeline.version task https://aka.ms/obpipelines/versioning
22
22
ENABLE_PRS_DELAYSIGN : 1
23
- GitVersion.SemVer : ' '
24
23
25
24
stages :
26
25
- stage : BuildPackage
@@ -50,23 +49,33 @@ stages:
50
49
- script : $(Build.SourcesDirectory)/build.sh $(VcVersion) --build-all
51
50
displayName : ' Build Solutions'
52
51
53
- - script : $(Build.SourcesDirectory)/src/VirtualClient/VirtualClient.Packaging/build-deb-linux-x64.sh $(VcVersion)
54
- displayName : ' Build deb package for linux x64'
52
+ - script : $(Build.SourcesDirectory)/src/VirtualClient/VirtualClient.Packaging/build-rpm-linux-arm64.sh $(VcVersion)
53
+ displayName : ' Build rpm package for linux arm64'
54
+
55
+ - script : $(Build.SourcesDirectory)/src/VirtualClient/VirtualClient.Packaging/build-rpm-linux-x64.sh $(VcVersion)
56
+ displayName : ' Build rpm package for linux x64'
55
57
56
58
- script : $(Build.SourcesDirectory)/src/VirtualClient/VirtualClient.Packaging/build-deb-linux-arm64.sh $(VcVersion)
57
59
displayName : ' Build deb package for linux arm64'
60
+
61
+ - script : $(Build.SourcesDirectory)/src/VirtualClient/VirtualClient.Packaging/build-deb-linux-x64.sh $(VcVersion)
62
+ displayName : ' Build deb package for linux x64'
63
+
58
64
59
65
- task : CopyFiles@2
60
66
inputs :
61
67
SourceFolder : ' $(Build.SourcesDirectory)/out/packages'
62
- Contents : ' *.deb'
68
+ flattenFolders : true
69
+ Contents : |
70
+ *.deb
71
+ **/RPMS/**/*.rpm
63
72
TargetFolder : ' $(Build.ArtifactStagingDirectory)'
64
73
65
74
- task : EsrpCodeSigning@1
66
75
inputs :
67
76
ConnectedServiceName : ' virtualclient-esrp'
68
77
FolderPath : ' $(Build.ArtifactStagingDirectory)'
69
- Pattern : ' *.deb'
78
+ Pattern : ' *.deb,*.rpm '
70
79
signConfigType : ' inlineSignParams'
71
80
inlineOperation : |
72
81
[
@@ -87,6 +96,293 @@ stages:
87
96
pathToPublish : ' $(Build.ArtifactStagingDirectory)'
88
97
artifactName : drop
89
98
99
+ - job : PublishRpmPackage
100
+ timeoutInMinutes : 180
101
+ dependsOn : BuildPackage
102
+ pool :
103
+ vmImage : ' ubuntu-latest'
104
+ container : pmc-cli
105
+
106
+ steps :
107
+ - task : PipAuthenticate@1
108
+ inputs :
109
+ artifactFeeds : ' CRC-Dev'
110
+ - script : pip install pmc-cli
111
+
112
+ - download : current
113
+ artifact : drop
114
+
115
+ - task : CopyFiles@2
116
+ inputs :
117
+ SourceFolder : ' $(Agent.BuildDirectory)/drop/'
118
+ Contents : ' *.rpm'
119
+ TargetFolder : ' $(Agent.BuildDirectory)/drop/rpmpackages'
120
+
121
+ - task : AzureKeyVault@2
122
+ inputs :
123
+ ConnectedServiceName : ' VirtualClient-AzureRM-AME'
124
+ KeyVaultName : ' junoprod01vault01'
125
+ SecretsFilter : ' virtualclient'
126
+ RunAsPreJob : true
127
+
128
+ # Amazon Linux
129
+ - task : PublishLinuxPackagesPMC@0
130
+ displayName : ' Amazon Linux 2023 rpm publish'
131
+ inputs :
132
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
133
+ msal_SNIAuth : ' msal-sniauth'
134
+ msal_cert : $(virtualclient)
135
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
136
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
137
+ repository : ' microsoft-amazonlinux2023-prod-yum'
138
+
139
+ - task : PublishLinuxPackagesPMC@0
140
+ displayName : ' Amazon Linux 2 rpm publish'
141
+ inputs :
142
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
143
+ msal_SNIAuth : ' msal-sniauth'
144
+ msal_cert : $(virtualclient)
145
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
146
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
147
+ repository : ' microsoft-amazonlinux2-prod-yum'
148
+
149
+ # Centos
150
+ - task : PublishLinuxPackagesPMC@0
151
+ displayName : ' CentOS 7 rpm publish'
152
+ inputs :
153
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
154
+ msal_SNIAuth : ' msal-sniauth'
155
+ msal_cert : $(virtualclient)
156
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
157
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
158
+ repository : ' microsoft-centos7-prod-yum'
159
+
160
+ - task : PublishLinuxPackagesPMC@0
161
+ displayName : ' CentOS 6 rpm publish'
162
+ inputs :
163
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
164
+ msal_SNIAuth : ' msal-sniauth'
165
+ msal_cert : $(virtualclient)
166
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
167
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
168
+ repository : ' microsoft-centos6-prod-yum'
169
+
170
+ # Fedora
171
+ - task : PublishLinuxPackagesPMC@0
172
+ displayName : ' Fedora 39 rpm publish'
173
+ inputs :
174
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
175
+ msal_SNIAuth : ' msal-sniauth'
176
+ msal_cert : $(virtualclient)
177
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
178
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
179
+ repository : ' microsoft-fedora39-prod-yum'
180
+
181
+ - task : PublishLinuxPackagesPMC@0
182
+ displayName : ' Fedora 38 rpm publish'
183
+ inputs :
184
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
185
+ msal_SNIAuth : ' msal-sniauth'
186
+ msal_cert : $(virtualclient)
187
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
188
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
189
+ repository : ' microsoft-fedora38-prod-yum'
190
+
191
+ - task : PublishLinuxPackagesPMC@0
192
+ displayName : ' Fedora 37 rpm publish'
193
+ inputs :
194
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
195
+ msal_SNIAuth : ' msal-sniauth'
196
+ msal_cert : $(virtualclient)
197
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
198
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
199
+ repository : ' microsoft-fedora37-prod-yum'
200
+
201
+ # OpenSUSE
202
+ - task : PublishLinuxPackagesPMC@0
203
+ displayName : ' OpenSUSE 15 rpm publish'
204
+ inputs :
205
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
206
+ msal_SNIAuth : ' msal-sniauth'
207
+ msal_cert : $(virtualclient)
208
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
209
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
210
+ repository : ' microsoft-opensuse15-prod-yum'
211
+
212
+ - task : PublishLinuxPackagesPMC@0
213
+ displayName : ' OpenSUSE 42.2 rpm publish'
214
+ inputs :
215
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
216
+ msal_SNIAuth : ' msal-sniauth'
217
+ msal_cert : $(virtualclient)
218
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
219
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
220
+ repository : ' microsoft-opensuse42.2-prod-yum'
221
+
222
+ - task : PublishLinuxPackagesPMC@0
223
+ displayName : ' OpenSUSE 42.3 rpm publish'
224
+ inputs :
225
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
226
+ msal_SNIAuth : ' msal-sniauth'
227
+ msal_cert : $(virtualclient)
228
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
229
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
230
+ repository : ' microsoft-opensuse42.3-prod-yum'
231
+
232
+ # RedHat
233
+ - task : PublishLinuxPackagesPMC@0
234
+ displayName : ' Red Hat 9.0 rpm publish'
235
+ inputs :
236
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
237
+ msal_SNIAuth : ' msal-sniauth'
238
+ msal_cert : $(virtualclient)
239
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
240
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
241
+ repository : ' microsoft-rhel9.0-prod-yum'
242
+
243
+ - task : PublishLinuxPackagesPMC@0
244
+ displayName : ' Red Hat 8.2 rpm publish'
245
+ inputs :
246
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
247
+ msal_SNIAuth : ' msal-sniauth'
248
+ msal_cert : $(virtualclient)
249
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
250
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
251
+ repository : ' microsoft-rhel8.2-prod-yum'
252
+
253
+ - task : PublishLinuxPackagesPMC@0
254
+ displayName : ' Red Hat 8.1 rpm publish'
255
+ inputs :
256
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
257
+ msal_SNIAuth : ' msal-sniauth'
258
+ msal_cert : $(virtualclient)
259
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
260
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
261
+ repository : ' microsoft-rhel8.1-prod-yum'
262
+
263
+ - task : PublishLinuxPackagesPMC@0
264
+ displayName : ' Red Hat 8.0 rpm publish'
265
+ inputs :
266
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
267
+ msal_SNIAuth : ' msal-sniauth'
268
+ msal_cert : $(virtualclient)
269
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
270
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
271
+ repository : ' microsoft-rhel8.0-prod-yum'
272
+
273
+ - task : PublishLinuxPackagesPMC@0
274
+ displayName : ' Red Hat 7.9 rpm publish'
275
+ inputs :
276
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
277
+ msal_SNIAuth : ' msal-sniauth'
278
+ msal_cert : $(virtualclient)
279
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
280
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
281
+ repository : ' microsoft-rhel7.9-prod-yum'
282
+
283
+ - task : PublishLinuxPackagesPMC@0
284
+ displayName : ' Red Hat 7.8 rpm publish'
285
+ inputs :
286
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
287
+ msal_SNIAuth : ' msal-sniauth'
288
+ msal_cert : $(virtualclient)
289
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
290
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
291
+ repository : ' microsoft-rhel7.8-prod-yum'
292
+
293
+ - task : PublishLinuxPackagesPMC@0
294
+ displayName : ' Red Hat 7.5 rpm publish'
295
+ inputs :
296
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
297
+ msal_SNIAuth : ' msal-sniauth'
298
+ msal_cert : $(virtualclient)
299
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
300
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
301
+ repository : ' microsoft-rhel7.5-prod-yum'
302
+
303
+ - task : PublishLinuxPackagesPMC@0
304
+ displayName : ' Red Hat 7.4 rpm publish'
305
+ inputs :
306
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
307
+ msal_SNIAuth : ' msal-sniauth'
308
+ msal_cert : $(virtualclient)
309
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
310
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
311
+ repository : ' microsoft-rhel7.4-prod-yum'
312
+
313
+ - task : PublishLinuxPackagesPMC@0
314
+ displayName : ' Red Hat 7.3 rpm publish'
315
+ inputs :
316
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
317
+ msal_SNIAuth : ' msal-sniauth'
318
+ msal_cert : $(virtualclient)
319
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
320
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
321
+ repository : ' microsoft-rhel7.3-prod-yum'
322
+
323
+ - task : PublishLinuxPackagesPMC@0
324
+ displayName : ' Red Hat 7.2 rpm publish'
325
+ inputs :
326
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
327
+ msal_SNIAuth : ' msal-sniauth'
328
+ msal_cert : $(virtualclient)
329
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
330
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
331
+ repository : ' microsoft-rhel7.2-prod-yum'
332
+
333
+ - task : PublishLinuxPackagesPMC@0
334
+ displayName : ' Red Hat 7.1 rpm publish'
335
+ inputs :
336
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
337
+ msal_SNIAuth : ' msal-sniauth'
338
+ msal_cert : $(virtualclient)
339
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
340
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
341
+ repository : ' microsoft-rhel7.1-prod-yum'
342
+
343
+ - task : PublishLinuxPackagesPMC@0
344
+ displayName : ' Red Hat 6.9 rpm publish'
345
+ inputs :
346
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
347
+ msal_SNIAuth : ' msal-sniauth'
348
+ msal_cert : $(virtualclient)
349
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
350
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
351
+ repository : ' microsoft-rhel6.9-prod-yum'
352
+
353
+
354
+ # SUSE Linux Enterprise Server
355
+ - task : PublishLinuxPackagesPMC@0
356
+ displayName : ' SLES 15 rpm publish'
357
+ inputs :
358
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
359
+ msal_SNIAuth : ' msal-sniauth'
360
+ msal_cert : $(virtualclient)
361
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
362
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
363
+ repository : ' microsoft-sles15-prod-yum'
364
+
365
+ - task : PublishLinuxPackagesPMC@0
366
+ displayName : ' SLES 12 rpm publish'
367
+ inputs :
368
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
369
+ msal_SNIAuth : ' msal-sniauth'
370
+ msal_cert : $(virtualclient)
371
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
372
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
373
+ repository : ' microsoft-sles12-prod-yum'
374
+
375
+ - task : PublishLinuxPackagesPMC@0
376
+ displayName : ' SLES 11 rpm publish'
377
+ inputs :
378
+ profile : ' prod' # or tux-dev or ppe or prod depending on what you selected
379
+ msal_SNIAuth : ' msal-sniauth'
380
+ msal_cert : $(virtualclient)
381
+ msal_client_ID : ' f407a268-1184-4845-92b1-eebfbe0749c0'
382
+ package_path : ' $(Agent.BuildDirectory)/drop/rpmpackages'
383
+ repository : ' microsoft-sles11-prod-yum'
384
+
385
+
90
386
- job : PublishDebPackage
91
387
timeoutInMinutes : 180
92
388
dependsOn : BuildPackage
@@ -108,14 +404,14 @@ stages:
108
404
SourceFolder : ' $(Agent.BuildDirectory)/drop/'
109
405
Contents : ' *.deb'
110
406
TargetFolder : ' $(Agent.BuildDirectory)/drop/packages'
111
-
407
+
112
408
- task : AzureKeyVault@2
113
409
inputs :
114
410
ConnectedServiceName : ' VirtualClient-AzureRM-AME'
115
411
KeyVaultName : ' junoprod01vault01'
116
412
SecretsFilter : ' virtualclient'
117
413
RunAsPreJob : true
118
-
414
+
119
415
# Debian
120
416
- task : PublishLinuxPackagesPMC@0
121
417
displayName : ' Debian 12.0 deb publish'
0 commit comments