Merge pull request #15354 from MichalStrehovsky/master-merge
[platform/upstream/coreclr.git] / buildpipeline / DotNet-CoreClr-Trusted-Linux-Crossbuild.json
1 {
2   "build": [
3     {
4       "environment": {},
5       "enabled": true,
6       "continueOnError": false,
7       "alwaysRun": false,
8       "displayName": "Initialize tools",
9       "timeoutInMinutes": 0,
10       "refName": "Task1",
11       "task": {
12         "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
13         "versionSpec": "1.*",
14         "definitionType": "task"
15       },
16       "inputs": {
17         "filename": "$(Build.SourcesDirectory)/init-tools.sh",
18         "arguments": "",
19         "workingFolder": "",
20         "failOnStandardError": "false"
21       }
22     },
23     {
24       "environment": {},
25       "enabled": true,
26       "continueOnError": false,
27       "alwaysRun": false,
28       "displayName": "Initialize Docker",
29       "timeoutInMinutes": 0,
30       "refName": "Task2",
31       "task": {
32         "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
33         "versionSpec": "1.*",
34         "definitionType": "task"
35       },
36       "inputs": {
37         "filename": "$(Build.SourcesDirectory)/Tools/scripts/docker/init-docker.sh",
38         "arguments": "$(DockerImageName)",
39         "workingFolder": "",
40         "failOnStandardError": "false"
41       }
42     },
43     {
44       "environment": {},
45       "enabled": true,
46       "continueOnError": false,
47       "alwaysRun": false,
48       "displayName": "Clone repository",
49       "timeoutInMinutes": 0,
50       "refName": "Task3",
51       "task": {
52         "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
53         "versionSpec": "1.*",
54         "definitionType": "task"
55       },
56       "inputs": {
57         "filename": "docker",
58         "arguments": "run --rm $(DockerCommonRunArgs) git clone $(VsoCoreClrGitUrl) $(GitHubDirectory)",
59         "workingFolder": "",
60         "failOnStandardError": "false"
61       }
62     },
63     {
64       "environment": {},
65       "enabled": true,
66       "continueOnError": false,
67       "alwaysRun": false,
68       "displayName": "Run clean.sh",
69       "timeoutInMinutes": 0,
70       "refName": "Task4",
71       "task": {
72         "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
73         "versionSpec": "1.*",
74         "definitionType": "task"
75       },
76       "inputs": {
77         "filename": "docker",
78         "arguments": "run --rm $(DockerCommonRunArgs) ./clean.sh -all",
79         "workingFolder": "",
80         "failOnStandardError": "false"
81       }
82     },
83     {
84       "environment": {},
85       "enabled": true,
86       "continueOnError": false,
87       "alwaysRun": false,
88       "displayName": "Check out the specified commit",
89       "timeoutInMinutes": 0,
90       "refName": "Task5",
91       "task": {
92         "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
93         "versionSpec": "1.*",
94         "definitionType": "task"
95       },
96       "inputs": {
97         "filename": "docker",
98         "arguments": "run --rm $(DockerCommonRunArgs) git checkout $(Build.SourceVersion)",
99         "workingFolder": "",
100         "failOnStandardError": "false"
101       }
102     },
103     {
104       "environment": {},
105       "enabled": true,
106       "continueOnError": false,
107       "alwaysRun": false,
108       "displayName": "Run sync.sh",
109       "timeoutInMinutes": 0,
110       "refName": "Task6",
111       "task": {
112         "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
113         "versionSpec": "1.*",
114         "definitionType": "task"
115       },
116       "inputs": {
117         "filename": "docker",
118         "arguments": "run --rm $(DockerCommonRunArgs) ./sync.sh",
119         "workingFolder": "",
120         "failOnStandardError": "false"
121       }
122     },
123     {
124       "environment": {},
125       "enabled": false,
126       "continueOnError": false,
127       "alwaysRun": false,
128       "displayName": "Run build-rootfs.sh",
129       "timeoutInMinutes": 0,
130       "refName": "Task7",
131       "task": {
132         "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
133         "versionSpec": "1.*",
134         "definitionType": "task"
135       },
136       "inputs": {
137         "filename": "sudo",
138         "arguments": "docker run --privileged --rm $(DockerCommonRunArgs) ./cross/build-rootfs.sh $(Architecture) $(CrossToolsetVersion) $(SkipUnmount)",
139         "workingFolder": "",
140         "failOnStandardError": "false"
141       }
142     },
143     {
144       "environment": {},
145       "enabled": true,
146       "continueOnError": false,
147       "alwaysRun": false,
148       "displayName": "Run build.sh",
149       "timeoutInMinutes": 0,
150       "refName": "Task8",
151       "task": {
152         "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
153         "versionSpec": "1.*",
154         "definitionType": "task"
155       },
156       "inputs": {
157         "filename": "docker",
158         "arguments": "run --rm -e ROOTFS_DIR $(DockerCommonRunArgs) ./build.sh $(PB_BuildType) $(Architecture) skipnuget cross -skiprestore stripSymbols -OfficialBuildId=$(OfficialBuildId) -- /flp:\"v=diag\"",
159         "workingFolder": "",
160         "failOnStandardError": "false"
161       }
162     },
163     {
164       "environment": {},
165       "enabled": true,
166       "continueOnError": false,
167       "alwaysRun": false,
168       "displayName": "Run build-packages.sh",
169       "timeoutInMinutes": 0,
170       "refName": "Task9",
171       "task": {
172         "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
173         "versionSpec": "1.*",
174         "definitionType": "task"
175       },
176       "inputs": {
177         "filename": "docker",
178         "arguments": "run --rm $(DockerCommonRunArgs) ./build-packages.sh -BuildType=$(PB_BuildType) -BuildArch=$(Architecture) -- /p:OfficialBuildId=$(OfficialBuildId)",
179         "workingFolder": "",
180         "failOnStandardError": "false"
181       }
182     },
183     {
184       "environment": {},
185       "enabled": false,
186       "continueOnError": false,
187       "alwaysRun": false,
188       "displayName": "Cleanup RootFS",
189       "timeoutInMinutes": 0,
190       "refName": "Task10",
191       "task": {
192         "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
193         "versionSpec": "1.*",
194         "definitionType": "task"
195       },
196       "inputs": {
197         "filename": "docker",
198         "arguments": "run --rm --privileged $(DockerCommonRunArgs) git clean -xdf $(GitHubDirectory)/cross/",
199         "workingFolder": "",
200         "failOnStandardError": "false"
201       }
202     },
203     {
204       "environment": {},
205       "enabled": true,
206       "continueOnError": false,
207       "alwaysRun": false,
208       "displayName": "Publish packages",
209       "timeoutInMinutes": 0,
210       "refName": "Task11",
211       "task": {
212         "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
213         "versionSpec": "1.*",
214         "definitionType": "task"
215       },
216       "inputs": {
217         "filename": "docker",
218         "arguments": "run --rm $(DockerCommonRunArgs) ./publish-packages.sh -AzureAccount=$(CloudDropAccountName) -AzureToken=$(CloudDropAccessToken) -BuildType=$(PB_BuildType) -BuildArch=$(Architecture) -Container=$(PB_ContainerName) -distroRid=$(Rid) -PublishPackages -- /p:RelativePath=$(PB_BlobNamePrefix)$(PB_BuildType)/pkg /p:PublishFlatContainer=$(PublishFlat) /p:OverwriteOnPublish=true",
219         "workingFolder": "",
220         "failOnStandardError": "false"
221       }
222     },
223     {
224       "environment": {},
225       "enabled": true,
226       "continueOnError": false,
227       "alwaysRun": false,
228       "displayName": "Publish symbol packages",
229       "timeoutInMinutes": 0,
230       "refName": "Task12",
231       "task": {
232         "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
233         "versionSpec": "1.*",
234         "definitionType": "task"
235       },
236       "inputs": {
237         "filename": "docker",
238         "arguments": "run --rm $(DockerCommonRunArgs) ./publish-packages.sh -AzureAccount=$(CloudDropAccountName) -AzureToken=$(CloudDropAccessToken) -BuildType=$(PB_BuildType) -BuildArch=$(Architecture) -Container=$(PB_ContainerName) -distroRid=$(Rid) -PublishSymbols -- /p:RelativePath=$(PB_BlobNamePrefix)$(PB_BuildType)/symbolpkg /p:OverwriteOnPublish=true",
239         "workingFolder": "",
240         "failOnStandardError": "false"
241       }
242     },
243     {
244       "environment": {},
245       "enabled": true,
246       "continueOnError": false,
247       "alwaysRun": false,
248       "displayName": "Publish test native binaries",
249       "timeoutInMinutes": 0,
250       "refName": "Task13",
251       "task": {
252         "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
253         "versionSpec": "1.*",
254         "definitionType": "task"
255       },
256       "inputs": {
257         "filename": "docker",
258         "arguments": "run --rm $(DockerCommonRunArgs) ./publish-packages.sh -AzureAccount=$(CloudDropAccountName) -AzureToken=$(CloudDropAccessToken) -BuildType=$(PB_BuildType) -BuildArch=$(Architecture) -Container=$(PB_ContainerName) -distroRid=$(Rid) -PublishTestNativeBins -- /p:RelativePath=$(PB_BlobNamePrefix)$(PB_BuildType)/TestNativeBins/$(Rid)-$(Architecture) /p:OverwriteOnPublish=true",
259         "workingFolder": "",
260         "failOnStandardError": "false"
261       }
262     },
263     {
264       "environment": {},
265       "enabled": true,
266       "continueOnError": true,
267       "alwaysRun": false,
268       "displayName": "Create Copy Container",
269       "timeoutInMinutes": 0,
270       "refName": "Task14",
271       "task": {
272         "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
273         "versionSpec": "1.*",
274         "definitionType": "task"
275       },
276       "inputs": {
277         "filename": "docker",
278         "arguments": "run $(DockerCommonRunArgs) echo",
279         "workingFolder": "",
280         "failOnStandardError": "false"
281       }
282     },
283     {
284       "environment": {},
285       "enabled": true,
286       "continueOnError": true,
287       "alwaysRun": true,
288       "displayName": "Expose Docker repo for publishing",
289       "timeoutInMinutes": 0,
290       "condition": "succeededOrFailed()",
291       "refName": "Task15",
292       "task": {
293         "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
294         "versionSpec": "1.*",
295         "definitionType": "task"
296       },
297       "inputs": {
298         "filename": "docker",
299         "arguments": "cp $(DockerContainerName):$(GitHubDirectory) $(DockerCopyDest)",
300         "workingFolder": "",
301         "failOnStandardError": "false"
302       }
303     },
304     {
305       "environment": {},
306       "enabled": true,
307       "continueOnError": true,
308       "alwaysRun": true,
309       "displayName": "Copy Files to: $(Build.StagingDirectory)\\BuildLogs",
310       "timeoutInMinutes": 0,
311       "condition": "succeededOrFailed()",
312       "refName": "CopyFiles1",
313       "task": {
314         "id": "5bfb729a-a7c8-4a78-a7c3-8d717bb7c13c",
315         "versionSpec": "2.*",
316         "definitionType": "task"
317       },
318       "inputs": {
319         "SourceFolder": "$(DockerCopyDest)",
320         "Contents": "**/*.log",
321         "TargetFolder": "$(Build.StagingDirectory)\\BuildLogs",
322         "CleanTargetFolder": "false",
323         "OverWrite": "false",
324         "flattenFolders": "false"
325       }
326     },
327     {
328       "environment": {},
329       "enabled": true,
330       "continueOnError": true,
331       "alwaysRun": true,
332       "displayName": "Publish Artifact: BuildLogs",
333       "timeoutInMinutes": 0,
334       "condition": "succeededOrFailed()",
335       "refName": "PublishBuildArtifacts2",
336       "task": {
337         "id": "2ff763a7-ce83-4e1f-bc89-0ae63477cebe",
338         "versionSpec": "1.*",
339         "definitionType": "task"
340       },
341       "inputs": {
342         "PathtoPublish": "$(Build.StagingDirectory)\\BuildLogs",
343         "ArtifactName": "BuildLogs",
344         "ArtifactType": "Container",
345         "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)",
346         "Parallel": "false",
347         "ParallelCount": "8"
348       }
349     },
350     {
351       "environment": {},
352       "enabled": true,
353       "continueOnError": true,
354       "alwaysRun": false,
355       "displayName": "Cleanup Docker",
356       "timeoutInMinutes": 0,
357       "condition": "always()",
358       "refName": "Task16",
359       "task": {
360         "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
361         "versionSpec": "1.*",
362         "definitionType": "task"
363       },
364       "inputs": {
365         "filename": "$(Build.SourcesDirectory)/Tools/scripts/docker/cleanup-docker.sh",
366         "arguments": "",
367         "workingFolder": "",
368         "failOnStandardError": "false"
369       }
370     },
371     {
372       "environment": {},
373       "enabled": true,
374       "continueOnError": true,
375       "alwaysRun": false,
376       "displayName": "Cleanup VSTS Agent",
377       "timeoutInMinutes": 0,
378       "condition": "always()",
379       "refName": "Task17",
380       "task": {
381         "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
382         "versionSpec": "1.*",
383         "definitionType": "task"
384       },
385       "inputs": {
386         "filename": "$(Build.SourcesDirectory)/Tools/msbuild.sh",
387         "arguments": "cleanupagent.proj /p:AgentDirectory=$(Agent.HomeDirectory) /p:DoClean=$(PB_CleanAgent)",
388         "workingFolder": "$(Build.SourcesDirectory)/Tools/scripts/vstsagent/",
389         "failOnStandardError": "false"
390       }
391     }
392   ],
393   "options": [
394     {
395       "enabled": false,
396       "definition": {
397         "id": "a9db38f9-9fdc-478c-b0f9-464221e58316"
398       },
399       "inputs": {
400         "workItemType": "234347",
401         "assignToRequestor": "true",
402         "additionalFields": "{}"
403       }
404     },
405     {
406       "enabled": false,
407       "definition": {
408         "id": "57578776-4c22-4526-aeb0-86b6da17ee9c"
409       },
410       "inputs": {
411         "additionalFields": "{}"
412       }
413     },
414     {
415       "enabled": false,
416       "definition": {
417         "id": "5d58cc01-7c75-450c-be18-a388ddb129ec"
418       },
419       "inputs": {
420         "branchFilters": "[\"+refs/heads/*\"]",
421         "additionalFields": "{}"
422       }
423     }
424   ],
425   "variables": {
426     "system.debug": {
427       "value": "false",
428       "allowOverride": true
429     },
430     "Platform": {
431       "value": "x64"
432     },
433     "PB_BuildType": {
434       "value": "Release"
435     },
436     "GitHubRepo": {
437       "value": "https://github.com/dotnet/coreclr.git"
438     },
439     "GitHubDirectory": {
440       "value": "/root/coreclr"
441     },
442     "DockerContainerName": {
443       "value": "coreclr-cross-$(Build.BuildId)"
444     },
445     "DockerImageName": {
446       "value": "$(DockerRepository):$(DockerTag)"
447     },
448     "DockerRepository": {
449       "value": "microsoft/dotnet-buildtools-prereqs"
450     },
451     "DockerTag": {
452       "value": "ubuntu-14.04-cross-0cd4667-20170319080304",
453       "allowOverride": true
454     },
455     "CloudDropAccountName": {
456       "value": "dotnetbuildoutput"
457     },
458     "CloudDropAccessToken": {
459       "value": null,
460       "isSecret": true
461     },
462     "OfficialBuildId": {
463       "value": "$(Build.BuildNumber)",
464       "allowOverride": true
465     },
466     "Label": {
467       "value": "$(Build.BuildNumber)"
468     },
469     "GitHubBranch": {
470       "value": "sni_plus_latestbuildtools"
471     },
472     "Priority": {
473       "value": "0"
474     },
475     "RepoAccessToken": {
476       "value": null,
477       "isSecret": true
478     },
479     "Architecture": {
480       "value": "arm"
481     },
482     "CommitToCheckout": {
483       "value": "HEAD",
484       "allowOverride": true
485     },
486     "DockerCopyDest": {
487       "value": "$(Build.BinariesDirectory)/docker_repo"
488     },
489     "ROOTFS_DIR": {
490       "value": "/crossrootfs/$(Architecture)"
491     },
492     "DockerVolumeName": {
493       "value": "coreclr-cross-$(Build.BuildId)"
494     },
495     "DockerCommonRunArgs": {
496       "value": "--name $(DockerContainerName) --ulimit core=-1 -v \"$(DockerVolumeName):$(GitHubDirectory)\" -w=\"$(GitHubDirectory)\" $(DockerImageName)"
497     },
498     "PB_CleanAgent": {
499       "value": "true"
500     },
501     "VsoAccountName": {
502       "value": "dn-bot"
503     },
504     "VsoCoreClrGitUrl": {
505       "value": "https://$(VsoAccountName):$(VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/$(VsoRepositoryName)/"
506     },
507     "VsoPassword": {
508       "value": null,
509       "isSecret": true
510     },
511     "VsoRepositoryName": {
512       "value": "DotNet-CoreCLR-Trusted"
513     }
514   },
515   "demands": [
516     "Agent.OS -equals linux"
517   ],
518   "retentionRules": [
519     {
520       "branches": [
521         "+refs/heads/*"
522       ],
523       "artifacts": [],
524       "artifactTypesToDelete": [
525         "FilePath",
526         "SymbolStore"
527       ],
528       "daysToKeep": 10,
529       "minimumToKeep": 1,
530       "deleteBuildRecord": true,
531       "deleteTestResults": true
532     }
533   ],
534   "buildNumberFormat": "$(date:yyyyMMdd)$(rev:-rr)-$(DockerTag)",
535   "jobAuthorizationScope": "projectCollection",
536   "jobTimeoutInMinutes": 90,
537   "jobCancelTimeoutInMinutes": 5,
538   "repository": {
539     "properties": {
540       "labelSources": "0",
541       "reportBuildStatus": "true",
542       "fetchDepth": "0",
543       "gitLfsSupport": "false",
544       "skipSyncSource": "false",
545       "cleanOptions": "0",
546       "checkoutNestedSubmodules": "false",
547       "labelSourcesFormat": "$(build.buildNumber)"
548     },
549     "id": "670e3783-ab4f-44fc-9786-d332007da311",
550     "type": "TfsGit",
551     "name": "DotNet-CoreCLR-Trusted",
552     "url": "https://devdiv.visualstudio.com/DevDiv/_git/DotNet-CoreCLR-Trusted",
553     "defaultBranch": "refs/heads/master",
554     "clean": "true",
555     "checkoutSubmodules": false
556   },
557   "processParameters": {},
558   "quality": "definition",
559   "drafts": [],
560   "queue": {
561     "id": 36,
562     "name": "DotNet-Build",
563     "pool": {
564       "id": 39,
565       "name": "DotNet-Build"
566     }
567   },
568   "id": 5019,
569   "name": "DotNet-CoreClr-Trusted-Linux-Crossbuild",
570   "path": "\\",
571   "type": "build",
572   "queueStatus": "enabled",
573   "project": {
574     "id": "0bdbc590-a062-4c3f-b0f6-9383f67865ee",
575     "name": "DevDiv",
576     "description": "Visual Studio and DevDiv team project for git source code repositories.  Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv.  ",
577     "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee",
578     "state": "wellFormed",
579     "revision": 418098432,
580     "visibility": "organization"
581   }
582 }