Skip to content

Commit 978a6dc

Browse files
committed
Proof-of-concept of using new Publish infra in coreclr
1 parent 4c2e60f commit 978a6dc

18 files changed

+380
-110
lines changed

Diff for: buildpipeline/DotNet-CoreClr-Trusted-Linux-Crossbuild.json

+38-2
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,7 @@
184184
"enabled": true,
185185
"continueOnError": false,
186186
"alwaysRun": false,
187-
"displayName": "Run publish-packages.sh",
187+
"displayName": "Publish packages",
188188
"timeoutInMinutes": 0,
189189
"task": {
190190
"id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
@@ -193,7 +193,43 @@
193193
},
194194
"inputs": {
195195
"filename": "docker",
196-
"arguments": "run --rm $(DockerCommonRunArgs) ./publish-packages.sh -AzureAccount=$(CloudDropAccountName) -AzureToken=$(CloudDropAccessToken) -BuildType=$(PB_BuildType) -BuildArch=$(Architecture) -Container=$(Label) -distroRid=$(Rid) -- /p:OverwriteOnPublish=true",
196+
"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=false /p:OverwriteOnPublish=true",
197+
"workingFolder": "",
198+
"failOnStandardError": "false"
199+
}
200+
},
201+
{
202+
"enabled": true,
203+
"continueOnError": false,
204+
"alwaysRun": false,
205+
"displayName": "Publish symbol packages",
206+
"timeoutInMinutes": 0,
207+
"task": {
208+
"id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
209+
"versionSpec": "1.*",
210+
"definitionType": "task"
211+
},
212+
"inputs": {
213+
"filename": "docker",
214+
"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",
215+
"workingFolder": "",
216+
"failOnStandardError": "false"
217+
}
218+
},
219+
{
220+
"enabled": true,
221+
"continueOnError": false,
222+
"alwaysRun": false,
223+
"displayName": "Publish test native binaries",
224+
"timeoutInMinutes": 0,
225+
"task": {
226+
"id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
227+
"versionSpec": "1.*",
228+
"definitionType": "task"
229+
},
230+
"inputs": {
231+
"filename": "docker",
232+
"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) /p:OverwriteOnPublish=true",
197233
"workingFolder": "",
198234
"failOnStandardError": "false"
199235
}

Diff for: buildpipeline/DotNet-CoreClr-Trusted-Linux.json

+38-2
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@
148148
"enabled": true,
149149
"continueOnError": false,
150150
"alwaysRun": false,
151-
"displayName": "Run publish-packages.sh",
151+
"displayName": "Publish packages",
152152
"timeoutInMinutes": 0,
153153
"task": {
154154
"id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
@@ -157,7 +157,43 @@
157157
},
158158
"inputs": {
159159
"filename": "docker",
160-
"arguments": "run --rm $(DockerCommonRunArgs) ./publish-packages.sh -AzureAccount=$(CloudDropAccountName) -AzureToken=$(CloudDropAccessToken) -BuildType=$(PB_BuildType) -BuildArch=$(Platform) -Container=$(Label) -distroRid=$(Rid) -- /p:OverwriteOnPublish=true",
160+
"arguments": "run --rm $(DockerCommonRunArgs) ./publish-packages.sh -AzureAccount=$(CloudDropAccountName) -AzureToken=$(CloudDropAccessToken) -BuildType=$(PB_BuildType) -BuildArch=$(Platform) -Container=$(PB_ContainerName) -distroRid=$(Rid) -PublishPackages -- /p:RelativePath=$(PB_BlobNamePrefix)/$(PB_BuildType)/pkg /p:PublishFlatContainer=false /p:OverwriteOnPublish=true",
161+
"workingFolder": "",
162+
"failOnStandardError": "false"
163+
}
164+
},
165+
{
166+
"enabled": true,
167+
"continueOnError": false,
168+
"alwaysRun": false,
169+
"displayName": "Publish symbol packages",
170+
"timeoutInMinutes": 0,
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) ./publish-packages.sh -AzureAccount=$(CloudDropAccountName) -AzureToken=$(CloudDropAccessToken) -BuildType=$(PB_BuildType) -BuildArch=$(Platform) -Container=$(PB_ContainerName) -distroRid=$(Rid) -PublishSymbols -- /p:RelativePath=$(PB_BlobNamePrefix)/$(PB_BuildType)/symbolpkg /p:OverwriteOnPublish=true",
179+
"workingFolder": "",
180+
"failOnStandardError": "false"
181+
}
182+
},
183+
{
184+
"enabled": true,
185+
"continueOnError": false,
186+
"alwaysRun": false,
187+
"displayName": "Publish test native binaries",
188+
"timeoutInMinutes": 0,
189+
"task": {
190+
"id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
191+
"versionSpec": "1.*",
192+
"definitionType": "task"
193+
},
194+
"inputs": {
195+
"filename": "docker",
196+
"arguments": "run --rm $(DockerCommonRunArgs) ./publish-packages.sh -AzureAccount=$(CloudDropAccountName) -AzureToken=$(CloudDropAccessToken) -BuildType=$(PB_BuildType) -BuildArch=$(Platform) -Container=$(PB_ContainerName) -distroRid=$(Rid) -PublishTestNativeBins -- /p:RelativePath=$(PB_BlobNamePrefix)/$(PB_BuildType)/TestNativeBins/$(Rid) /p:OverwriteOnPublish=true",
161197
"workingFolder": "",
162198
"failOnStandardError": "false"
163199
}

Diff for: buildpipeline/DotNet-CoreClr-Trusted-Mac.json

+38-2
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@
7676
"enabled": true,
7777
"continueOnError": false,
7878
"alwaysRun": false,
79-
"displayName": "Run $(Agent.BuildDirectory)/s/publish-packages.sh",
79+
"displayName": "Publish packages",
8080
"timeoutInMinutes": 0,
8181
"task": {
8282
"id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
@@ -85,7 +85,43 @@
8585
},
8686
"inputs": {
8787
"filename": "$(Agent.BuildDirectory)/s/publish-packages.sh",
88-
"arguments": "-AzureAccount=$(CloudDropAccountName) -AzureToken=$(CloudDropAccessToken) -BuildType=$(PB_BuildType) -BuildArch=$(Architecture) -Container=$(Label) -distroRid=$(Rid) -- /p:OverwriteOnPublish=true",
88+
"arguments": "-AzureAccount=$(CloudDropAccountName) -AzureToken=$(CloudDropAccessToken) -BuildType=$(PB_BuildType) -BuildArch=$(Architecture) -Container=$(PB_ContainerName) -distroRid=$(Rid) -PublishPackages -- /p:RelativePath=$(PB_BlobNamePrefix)/$(PB_BuildType)/pkg /p:PublishFlatContainer=false /p:OverwriteOnPublish=true",
89+
"workingFolder": "",
90+
"failOnStandardError": "false"
91+
}
92+
},
93+
{
94+
"enabled": true,
95+
"continueOnError": false,
96+
"alwaysRun": false,
97+
"displayName": "Publish symbol packages",
98+
"timeoutInMinutes": 0,
99+
"task": {
100+
"id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
101+
"versionSpec": "1.*",
102+
"definitionType": "task"
103+
},
104+
"inputs": {
105+
"filename": "$(Agent.BuildDirectory)/s/publish-packages.sh",
106+
"arguments": "-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",
107+
"workingFolder": "",
108+
"failOnStandardError": "false"
109+
}
110+
},
111+
{
112+
"enabled": true,
113+
"continueOnError": false,
114+
"alwaysRun": false,
115+
"displayName": "Publish test native binaries",
116+
"timeoutInMinutes": 0,
117+
"task": {
118+
"id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
119+
"versionSpec": "1.*",
120+
"definitionType": "task"
121+
},
122+
"inputs": {
123+
"filename": "$(Agent.BuildDirectory)/s/publish-packages.sh",
124+
"arguments": "-AzureAccount=$(CloudDropAccountName) -AzureToken=$(CloudDropAccessToken) -BuildType=$(PB_BuildType) -BuildArch=$(Architecture) -Container=$(PB_ContainerName) -distroRid=$(Rid) -PublishSymbols -PublishTestNativeBins -- /p:RelativePath=$(PB_BlobNamePrefix)/$(PB_BuildType)/TestNativeBins/$(Rid) /p:OverwriteOnPublish=true",
89125
"workingFolder": "",
90126
"failOnStandardError": "false"
91127
}

Diff for: buildpipeline/DotNet-CoreClr-Trusted-Windows-x86.json

+20-2
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@
141141
"enabled": true,
142142
"continueOnError": false,
143143
"alwaysRun": false,
144-
"displayName": "Run publish-packages.cmd",
144+
"displayName": "Publish packages",
145145
"timeoutInMinutes": 0,
146146
"task": {
147147
"id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
@@ -150,7 +150,25 @@
150150
},
151151
"inputs": {
152152
"filename": "publish-packages.cmd",
153-
"arguments": "-AzureAccount=$(CloudDropAccountName) -AzureToken=$(CloudDropAccessToken) -BuildArch=$(Architecture) -BuildType=$(PB_BuildType) -- /p:ContainerName=$(Label) /p:OverwriteOnPublish=true",
153+
"arguments": "-AzureAccount=$(CloudDropAccountName) -AzureToken=$(CloudDropAccessToken) -BuildArch=$(Architecture) -BuildType=$(PB_BuildType) -Container=$(PB_ContainerName) -PublishPackages -- /p:RelativePath=$(PB_BlobNamePrefix)/$(PB_BuildType)/pkg /p:PublishFlatContainer=false /p:OverwriteOnPublish=true",
154+
"workingFolder": "",
155+
"failOnStandardError": "false"
156+
}
157+
},
158+
{
159+
"enabled": true,
160+
"continueOnError": false,
161+
"alwaysRun": false,
162+
"displayName": "Publish symbol packages",
163+
"timeoutInMinutes": 0,
164+
"task": {
165+
"id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
166+
"versionSpec": "1.*",
167+
"definitionType": "task"
168+
},
169+
"inputs": {
170+
"filename": "publish-packages.cmd",
171+
"arguments": "-AzureAccount=$(CloudDropAccountName) -AzureToken=$(CloudDropAccessToken) -BuildArch=$(Architecture) -BuildType=$(PB_BuildType) -Container=$(PB_ContainerName) -PublishSymbols -- /p:RelativePath=$(PB_BlobNamePrefix)/$(PB_BuildType)/symbolpkg /p:OverwriteOnPublish=true",
154172
"workingFolder": "",
155173
"failOnStandardError": "false"
156174
}

Diff for: buildpipeline/DotNet-CoreClr-Trusted-Windows.json

+20-2
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@
141141
"enabled": true,
142142
"continueOnError": false,
143143
"alwaysRun": false,
144-
"displayName": "Run publish-packages.cmd",
144+
"displayName": "Publish packages",
145145
"timeoutInMinutes": 0,
146146
"task": {
147147
"id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
@@ -150,7 +150,25 @@
150150
},
151151
"inputs": {
152152
"filename": "publish-packages.cmd",
153-
"arguments": "-AzureAccount=$(CloudDropAccountName) -AzureToken=$(CloudDropAccessToken) -BuildArch=$(Architecture) -BuildType=$(PB_BuildType) -- /p:ContainerName=$(Label) /p:OverwriteOnPublish=true",
153+
"arguments": "-AzureAccount=$(CloudDropAccountName) -AzureToken=$(CloudDropAccessToken) -BuildArch=$(Architecture) -BuildType=$(PB_BuildType) -Container=$(PB_ContainerName) -PublishPackages -- /p:RelativePath=$(PB_BlobNamePrefix)/$(PB_BuildType)/pkg /p:PublishFlatContainer=false /p:OverwriteOnPublish=true",
154+
"workingFolder": "",
155+
"failOnStandardError": "false"
156+
}
157+
},
158+
{
159+
"enabled": true,
160+
"continueOnError": false,
161+
"alwaysRun": false,
162+
"displayName": "Publish symbol packages",
163+
"timeoutInMinutes": 0,
164+
"task": {
165+
"id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
166+
"versionSpec": "1.*",
167+
"definitionType": "task"
168+
},
169+
"inputs": {
170+
"filename": "publish-packages.cmd",
171+
"arguments": "-AzureAccount=$(CloudDropAccountName) -AzureToken=$(CloudDropAccessToken) -BuildArch=$(Architecture) -BuildType=$(PB_BuildType) -Container=$(PB_ContainerName) -PublishSymbols -- /p:RelativePath=$(PB_BlobNamePrefix)/$(PB_BuildType)/symbolpkg /p:OverwriteOnPublish=true",
154172
"workingFolder": "",
155173
"failOnStandardError": "false"
156174
}

Diff for: buildpipeline/DotNet-Trusted-Publish-Symbols.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,7 @@
178178
"allowOverride": true
179179
},
180180
"AzureContainerSymbolPackageGlob": {
181-
"value": "symbolpkg\\*.nupkg",
181+
"value": "symbolpkg\\*\\*\\*.nupkg",
182182
"allowOverride": true
183183
},
184184
"PB_AzureContainerSymbolPackageGlob": {

Diff for: buildpipeline/DotNet-Trusted-Publish.json

+94-7
Original file line numberDiff line numberDiff line change
@@ -82,19 +82,17 @@
8282
"enabled": true,
8383
"continueOnError": false,
8484
"alwaysRun": false,
85-
"displayName": "sync -ab",
85+
"displayName": "Sync packages",
8686
"timeoutInMinutes": 0,
8787
"task": {
88-
"id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1",
88+
"id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
8989
"versionSpec": "1.*",
9090
"definitionType": "task"
9191
},
9292
"inputs": {
93-
"scriptType": "inlineScript",
94-
"scriptName": "",
95-
"arguments": "$(CloudDropAccountName) $(CloudDropAccessToken) $(Label)",
96-
"inlineScript": "param($account, $token, $container)\nif ($env:UseLegacyBuildScripts -eq \"true\")\n{\n .\\sync.cmd /ab /p:CloudDropAccountName=$account /p:CloudDropAccessToken=$token /p:ContainerName=$container\n}\nelse\n{\n# .\\sync.cmd -ab \"-AzureAccount=$account\" \"-AzureToken=$token\" \"-Container=$container\"\n .\\init-tools.cmd\n msbuild src\\syncAzure.proj /p:CloudDropAccountName=$account /p:CloudDropAccessToken=$token /p:ContainerName=$container\n}",
97-
"workingFolder": "$(Pipeline.SourcesDirectory)",
93+
"filename": "sync.cmd",
94+
"arguments": "-ab -AzureAccount=$(CloudDropAccountName) -AzureToken=$(CloudDropAccessToken) -Container=$(PB_ContainerName) -BlobNamePrefix=$(PB_BlobNamePrefix)",
95+
"workingFolder": "",
9896
"failOnStandardError": "false"
9997
}
10098
},
@@ -215,6 +213,82 @@
215213
"failOnStandardError": "true"
216214
}
217215
},
216+
{
217+
"enabled": true,
218+
"continueOnError": false,
219+
"alwaysRun": false,
220+
"displayName": "Packages -> Azure",
221+
"timeoutInMinutes": 0,
222+
"task": {
223+
"id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
224+
"versionSpec": "1.*",
225+
"definitionType": "task"
226+
},
227+
"inputs": {
228+
"filename": "msbuild",
229+
"arguments": "publish.proj /t:PublishPackages /p:CloudDropAccessToken=$(AzureBlobFeedAccessToken) /p:CloudDropAccountName=$(AzureBlobFeedAccountName) /p:ContainerName=$(AzureBlobFeedContainerName) /p:__PublishPackages=true /p:OverwriteOnPublish=true /p:PackagesPattern=../packages/AzureTransfer/Release/pkg/*/*/*.nupkg /p:RelativePath=packages /p:__BuildType=$(ConfigurationGroup) /p:OfficialPublish=true /p:PublishFlatContainer=false /fileloggerparameters:Verbosity=diag;LogFile=publishpkg.log",
230+
"workingFolder": "src",
231+
"failOnStandardError": "false"
232+
}
233+
},
234+
{
235+
"enabled": true,
236+
"continueOnError": false,
237+
"alwaysRun": false,
238+
"displayName": "Symbol Packages -> Azure",
239+
"timeoutInMinutes": 0,
240+
"task": {
241+
"id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
242+
"versionSpec": "1.*",
243+
"definitionType": "task"
244+
},
245+
"inputs": {
246+
"filename": "msbuild",
247+
"arguments": "publish.proj /t:PublishSymbolPackages /p:CloudDropAccessToken=$(AzureBlobFeedAccessToken) /p:CloudDropAccountName=$(AzureBlobFeedAccountName) /p:ContainerName=$(AzureBlobFeedContainerName) /p:__PublishSymbols=true /p:OverwriteOnPublish=true /p:SymbolsPackagesPattern=../packages/AzureTransfer/Release/symbolpkg/*/*/*.nupkg /p:RelativePath=symbols /p:__BuildType=$(ConfigurationGroup) /p:OfficialPublish=true /p:PublishFlatContainer=true /fileloggerparameters:Verbosity=diag;LogFile=publishpkg.log",
248+
"workingFolder": "src",
249+
"failOnStandardError": "false"
250+
}
251+
},
252+
{
253+
"enabled": false,
254+
"continueOnError": false,
255+
"alwaysRun": false,
256+
"displayName": "Create VSTS auth NuGet.Config",
257+
"timeoutInMinutes": 0,
258+
"task": {
259+
"id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1",
260+
"versionSpec": "1.*",
261+
"definitionType": "task"
262+
},
263+
"inputs": {
264+
"scriptType": "inlineScript",
265+
"scriptName": "",
266+
"arguments": "$(VstsAuthedNuGetConfigPath) $(VstsFeedUrl) $(VstsPat)",
267+
"inlineScript": "param($path, $url, $pat)\n\nSet-Content $path @\"\n<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<configuration>\n <packageSources>\n <add key=\"vsts-dotnet-core\" value=\"$url\" />\n </packageSources>\n <packageSourceCredentials>\n <vsts-dotnet-core>\n <add key=\"Username\" value=\"VssSessionToken\" />\n <add key=\"ClearTextPassword\" value=\"$pat\" />\n </vsts-dotnet-core>\n </packageSourceCredentials>\n</configuration>\n\"@",
268+
"workingFolder": "",
269+
"failOnStandardError": "true"
270+
}
271+
},
272+
{
273+
"enabled": false,
274+
"continueOnError": false,
275+
"alwaysRun": false,
276+
"displayName": "packages -> VSTS",
277+
"timeoutInMinutes": 0,
278+
"task": {
279+
"id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1",
280+
"versionSpec": "1.*",
281+
"definitionType": "task"
282+
},
283+
"inputs": {
284+
"scriptType": "inlineScript",
285+
"scriptName": "",
286+
"arguments": "",
287+
"inlineScript": "if ($env:ConfigurationGroup -ne \"Release\") { exit }\n& $env:CustomNuGetPath push $env:Pipeline.SourcesDirectory\\packages\\AzureTransfer\\$env:ConfigurationGroup\\$env:AzureContainerPackageGlob placeholderapikey -Source vsts-dotnet-core -ConfigFile $env:VstsAuthedNuGetConfigPath -Timeout 3600",
288+
"workingFolder": "",
289+
"failOnStandardError": "true"
290+
}
291+
},
218292
{
219293
"enabled": true,
220294
"continueOnError": false,
@@ -398,6 +472,19 @@
398472
"allowOverride": true,
399473
"isSecret": true
400474
},
475+
"AzureBlobFeedAccountName": {
476+
"value": "dotnetfeed",
477+
"allowOverride": true
478+
},
479+
"AzureBlobFeedAccessToken": {
480+
"value": null,
481+
"allowOverride": true,
482+
"isSecret": true
483+
},
484+
"AzureBlobFeedContainerName": {
485+
"value": "dotnet-core",
486+
"allowOverride": true
487+
},
401488
"OfficialBuildId": {
402489
"value": "$(Build.BuildNumber)",
403490
"allowOverride": true

0 commit comments

Comments
 (0)