From 0473c752667b62f6c19897378f5c9d112fcc37ca Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Wed, 15 May 2024 13:01:59 -0700 Subject: [PATCH 1/7] [ci] Improve maestro artifact publishing (#8945) Context: https://github.com/dotnet/arcade/blob/efc3da96e5ac110513e92ebd9ef87c73f44d8540/Documentation/DependencyFlowOnboardingWithoutArcade.md The steps used to publish build asset information to maestro have been updated. With the new `PushToAzureDevOpsArtifacts` task the build pipeline should now create all of the artifacts required for maestro artifact publishing. The `add-build-to-channel` darc command will now trigger a [Build Promotion Pipeline][0] that pushes build assets to the feed that corresponds to the maestro channel that is being updated. We should no longer need to push assets to various NuGet feeds in a separate step. [0]: https://dev.azure.com/devdiv/DevDiv/_build/results?buildId=9577012&view=logs&j=ba23343f-f710-5af9-782d-5bd26b102304&t=c7a8693b-2f9c-5ea8-c909-cde9405ac2e1&l=238 --- build-tools/automation/azure-pipelines.yaml | 13 ++----- .../create-packs/Directory.Build.targets | 36 ++++++++++++------- eng/Version.Details.xml | 4 +-- eng/Versions.props | 2 +- 4 files changed, 28 insertions(+), 27 deletions(-) diff --git a/build-tools/automation/azure-pipelines.yaml b/build-tools/automation/azure-pipelines.yaml index 62d582effbf..2a1983cbb78 100644 --- a/build-tools/automation/azure-pipelines.yaml +++ b/build-tools/automation/azure-pipelines.yaml @@ -540,15 +540,6 @@ extends: variables: - ${{ if eq(variables['MicroBuildSignType'], 'Real') }}: - group: Publish-Build-Assets - templateContext: - outputs: - - output: nuget - condition: and(succeeded(), eq('${{ parameters.pushXAPackagesToMaestro }}', 'true')) - useDotNetTask: false # The default is false to use the NuGetCommand task. Set to true to use the DotNetCoreCLI task to publish packages. - packagesToPush: $(Build.StagingDirectory)\nuget-signed\*.nupkg - packageParentPath: $(Build.StagingDirectory)\nuget-signed - nuGetFeedType: external - publishFeedCredentials: $(DotNetFeedCredential) steps: - checkout: self @@ -620,11 +611,11 @@ extends: condition: and(succeeded(), eq('${{ parameters.pushXAPackagesToMaestro }}', 'true')) - powershell: | - $versionEndpoint = 'https://maestro-prod.westus2.cloudapp.azure.com/api/assets/darc-version?api-version=2019-01-16' + $versionEndpoint = 'https://maestro.dot.net/api/assets/darc-version?api-version=2019-01-16' $darcVersion = $(Invoke-WebRequest -Uri $versionEndpoint -UseBasicParsing).Content $arcadeServicesSource = 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json' & dotnet tool update microsoft.dotnet.darc --version "$darcVersion" --add-source "$arcadeServicesSource" --tool-path $(Agent.ToolsDirectory)\darc -v n - & $(Agent.ToolsDirectory)\darc\darc add-build-to-channel --default-channels --id $(BARBuildId) --publishing-infra-version 3 --skip-assets-publishing --password $(MaestroAccessToken) --azdev-pat $(publishing-dnceng-devdiv-code-r-build-re) + & $(Agent.ToolsDirectory)\darc\darc add-build-to-channel --default-channels --id $(BARBuildId) --publishing-infra-version 3 --password $(MaestroAccessToken) --azdev-pat $(publishing-dnceng-devdiv-code-r-build-re) displayName: add build to default darc channel condition: and(succeeded(), eq('${{ parameters.pushXAPackagesToMaestro }}', 'true')) diff --git a/build-tools/create-packs/Directory.Build.targets b/build-tools/create-packs/Directory.Build.targets index 689142072ac..2923add5486 100644 --- a/build-tools/create-packs/Directory.Build.targets +++ b/build-tools/create-packs/Directory.Build.targets @@ -10,7 +10,6 @@ - @@ -164,15 +163,26 @@ + + + $(OutputPath) + Assets.xml + $(ArtifactsLogDir)AssetManifest\$(AssetManifestFileName) + + + + - + - + + + - + @@ -181,14 +191,14 @@ - diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 216201ee997..5bd1336cb2c 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -30,9 +30,9 @@ https://github.com/dotnet/arcade 70831f0d126fe88b81d7dc8de11358e17a5ce364 - + https://github.com/dotnet/arcade - 70831f0d126fe88b81d7dc8de11358e17a5ce364 + 67d23f4ba1813b315e7e33c71d18b63475f5c5f8 https://github.com/dotnet/templating diff --git a/eng/Versions.props b/eng/Versions.props index 6e98ae60089..6e2cbcdf7ae 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -6,7 +6,7 @@ 8.0.8 8.0.8 7.0.0-beta.22103.1 - 7.0.0-beta.22103.1 + 8.0.0-beta.24225.1 8.0.8 $(MicrosoftNETWorkloadEmscriptenCurrentManifest80100Version) 7.0.100-rc.1.22410.7 From e94f6a7658d0daa2fb62a19d93b939ddb9b644b5 Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Mon, 20 May 2024 13:13:07 -0700 Subject: [PATCH 2/7] [ci] Use long version for maestro publishing (#8964) Commit bbac9fe ran into some issues when attempting to publish to maestro: error : Asset 'D:\a\_work\1\a\7dc04dfe-406a-4fa3-aea0-199acc2763fa\MergedManifest.xml' already exists with different contents at assets/manifests/xamarin-xamarin-android/34.99.0-dev/MergedManifest.xml We should be able to fix this by using the long package version which optionally includes pre-release labeling and commit distance info. --- build-tools/automation/azure-pipelines.yaml | 24 +++++++++++++------ .../create-packs/Directory.Build.targets | 7 +++--- 2 files changed, 21 insertions(+), 10 deletions(-) diff --git a/build-tools/automation/azure-pipelines.yaml b/build-tools/automation/azure-pipelines.yaml index 2a1983cbb78..111664e24c0 100644 --- a/build-tools/automation/azure-pipelines.yaml +++ b/build-tools/automation/azure-pipelines.yaml @@ -542,6 +542,8 @@ extends: - group: Publish-Build-Assets steps: - checkout: self + clean: true + submodules: recursive - task: DownloadPipelineArtifact@2 inputs: @@ -600,14 +602,22 @@ extends: artifactName: vsdrop-multitarget-signed downloadPath: $(Build.StagingDirectory)\$(MultiTargetVSDropCommitStatusName) - - powershell: >- - & dotnet build -v:n -c $(XA.Build.Configuration) - -t:PushManifestToBuildAssetRegistry - -p:BuildAssetRegistryToken=$(MaestroAccessToken) - -p:OutputPath=$(Build.StagingDirectory)\nuget-signed\ - $(System.DefaultWorkingDirectory)\build-tools\create-packs\Microsoft.Android.Sdk.proj - -bl:$(System.DefaultWorkingDirectory)\bin\Build$(XA.Build.Configuration)\push-bar-manifest.binlog + - task: DotNetCoreCLI@2 + displayName: build Xamarin.Android.Tools.BootstrapTasks.sln + inputs: + projects: $(System.DefaultWorkingDirectory)\Xamarin.Android.BootstrapTasks.sln + arguments: -c $(XA.Build.Configuration) -bl:$(System.DefaultWorkingDirectory)\bin\Build$(XA.Build.Configuration)\bootstrap.binlog + condition: and(succeeded(), eq('${{ parameters.pushXAPackagesToMaestro }}', 'true')) + + - task: DotNetCoreCLI@2 displayName: generate and publish BAR manifest + inputs: + projects: $(System.DefaultWorkingDirectory)\build-tools\create-packs\Microsoft.Android.Sdk.proj + arguments: >- + -t:PushManifestToBuildAssetRegistry + -p:BuildAssetRegistryToken=$(MaestroAccessToken) + -p:OutputPath=$(Build.StagingDirectory)\nuget-signed\ + -c $(XA.Build.Configuration) -bl:$(System.DefaultWorkingDirectory)\bin\Build$(XA.Build.Configuration)\push-bar-manifest.binlog condition: and(succeeded(), eq('${{ parameters.pushXAPackagesToMaestro }}', 'true')) - powershell: | diff --git a/build-tools/create-packs/Directory.Build.targets b/build-tools/create-packs/Directory.Build.targets index 2923add5486..91e7c6c8108 100644 --- a/build-tools/create-packs/Directory.Build.targets +++ b/build-tools/create-packs/Directory.Build.targets @@ -164,7 +164,8 @@ - + $(OutputPath) Assets.xml @@ -204,12 +205,12 @@ From 932e6eddff8a8b8385f5033ea2d8132e6e5b36ad Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Fri, 19 Jul 2024 12:53:21 -0400 Subject: [PATCH 3/7] [ci] Use drop service for SDK insertion artifacts (#9116) Context: xamarin/yaml-templates@8759ec9 Context: https://github.com/xamarin/sdk-insertions/pull/149 Steps to upload release artifacts to custom blob storage have been replaced with azure-artifacts-drop (aka.ms/drop). A new version of nuget-msi-convert has been added that will create a set of artifact drops for the following shipping artifacts: * nugets * vs-components * vs-packs The nugets drop contains all shipping packages that should be pushed to various feeds or NuGet.org. The components and packs drops are used for VS insertions. --- build-tools/automation/azure-pipelines.yaml | 100 +++++++++----------- 1 file changed, 44 insertions(+), 56 deletions(-) diff --git a/build-tools/automation/azure-pipelines.yaml b/build-tools/automation/azure-pipelines.yaml index 111664e24c0..c9f9a1bdabd 100644 --- a/build-tools/automation/azure-pipelines.yaml +++ b/build-tools/automation/azure-pipelines.yaml @@ -496,7 +496,7 @@ extends: use1ESTemplate: true # Check - "Xamarin.Android (Prepare .NET Release Convert NuGet to MSI)" - - template: nuget-msi-convert/job/v3.yml@yaml-templates + - template: nuget-msi-convert/job/v4.yml@yaml-templates parameters: yamlResourceName: yaml-templates dependsOn: sign_net_mac_win @@ -505,7 +505,17 @@ extends: !*Darwin* propsArtifactName: $(NuGetArtifactName) signType: $(MicroBuildSignType) - use1ESTemplate: true + preConvertSteps: + - task: DownloadPipelineArtifact@2 + inputs: + artifactName: nuget-signed + artifactPatterns: | + *Darwin* + downloadPath: $(Build.StagingDirectory)\drop\nugets + - task: DownloadPipelineArtifact@2 + inputs: + artifactName: nuget-linux-signed + downloadPath: $(Build.StagingDirectory)\drop\nugets postConvertSteps: - task: DownloadPipelineArtifact@2 inputs: @@ -513,24 +523,24 @@ extends: downloadPath: $(Build.StagingDirectory)\sign-verify patterns: | **/SignVerifyIgnore.txt - - task: MicroBuildCodesignVerify@3 displayName: verify signed msi content inputs: TargetFolders: | $(Build.ArtifactStagingDirectory)\bin\manifests - $(Build.ArtifactStagingDirectory)\bin\manifests-multitarget + $(Build.ArtifactStagingDirectory)\bin\manifests-packs + $(Build.ArtifactStagingDirectory)\bin\msi-nupkgs ExcludeSNVerify: true ApprovalListPathForCerts: $(Build.StagingDirectory)\sign-verify\SignVerifyIgnore.txt - # Check - "Xamarin.Android (Prepare .NET Release Push Internal)" + # Check - "Xamarin.Android (Prepare .NET Release Publish symbols and Push to Maestro)" - job: push_signed_nugets - displayName: Push Internal + displayName: Publish symbols and Push to Maestro dependsOn: - nuget_convert - sign_net_linux condition: and(eq(dependencies.nuget_convert.result, 'Succeeded'), eq(dependencies.sign_net_linux.result, 'Succeeded')) - timeoutInMinutes: 60 + timeoutInMinutes: 90 pool: name: AzurePipelines-EO image: $(WindowsPoolImage1ESPT) @@ -540,67 +550,45 @@ extends: variables: - ${{ if eq(variables['MicroBuildSignType'], 'Real') }}: - group: Publish-Build-Assets + templateContext: + outputs: + - output: artifactsDrop + dropServiceURI: https://devdiv.artifacts.visualstudio.com/DefaultCollection + buildNumber: $(ReleaseDropPrefix)/symbols + dropMetadataContainerName: DropMetadata-$(Build.BuildId)-symbols-$(System.JobAttempt) + sourcePath: $(Build.StagingDirectory)\symbols + retentionDays: 120 + toLowerCase: false steps: - checkout: self clean: true submodules: recursive + # Download symbols to be published to the symbols artifact drop declared above - task: DownloadPipelineArtifact@2 inputs: - artifactName: nuget-signed - downloadPath: $(Build.StagingDirectory)\nuget-signed - - - task: DownloadPipelineArtifact@2 - inputs: - artifactName: nuget-linux-signed - downloadPath: $(Build.StagingDirectory)\nuget-signed + artifactName: $(WindowsToolchainPdbArtifactName) + downloadPath: $(Build.StagingDirectory)\symbols - task: DownloadPipelineArtifact@2 inputs: - artifactName: vs-msi-nugets - downloadPath: $(Build.StagingDirectory)\nuget-signed + artifactName: DropMetadata-$(Build.BuildId)-nugets-$(System.JobAttempt) + downloadPath: $(Build.StagingDirectory)\metadata + displayName: Download nugets drop metadata - - task: DownloadPipelineArtifact@2 + - powershell: | + $jsonContent = Get-Content -Path "$(Build.StagingDirectory)\metadata\VSTSDrop.json" -Raw | ConvertFrom-Json + $dropPrefix = $jsonContent.VstsDropBuildArtifact.VstsDropUrl -replace 'https://devdiv.artifacts.visualstudio.com/DefaultCollection/_apis/drop/drops/' -replace '/nugets' + Write-Host "##vso[task.setvariable variable=ReleaseDropPrefix]$dropPrefix" + displayName: Set variable ReleaseDropPrefix + + # Download nugets drop created by nuget-msi-convert/job/v4.yml and publish to maestro + - task: ms-vscs-artifact.build-tasks.artifactDropDownloadTask-1.artifactDropDownloadTask@1 + displayName: Download $(ReleaseDropPrefix)/nugets inputs: - artifactName: $(WindowsToolchainPdbArtifactName) - downloadPath: $(Build.StagingDirectory)\nuget-signed - - - template: templates\common\upload-vs-insertion-artifacts.yml@sdk-insertions - parameters: - githubToken: $(GitHub.Token) - githubContext: $(NupkgCommitStatusName) - blobName: $(NupkgCommitStatusName) - packagePrefix: xamarin-android - artifactsPath: $(Build.StagingDirectory)\nuget-signed - yamlResourceName: yaml-templates - - - template: templates\common\upload-vs-insertion-artifacts.yml@sdk-insertions - parameters: - githubToken: $(GitHub.Token) - githubContext: $(VSDropCommitStatusName) - blobName: $(VSDropCommitStatusName) - packagePrefix: xamarin-android - artifactsPath: $(Build.StagingDirectory)\$(VSDropCommitStatusName) - yamlResourceName: yaml-templates - downloadSteps: - - task: DownloadPipelineArtifact@2 - inputs: - artifactName: vsdrop-signed - downloadPath: $(Build.StagingDirectory)\$(VSDropCommitStatusName) - - - template: templates\common\upload-vs-insertion-artifacts.yml@sdk-insertions - parameters: - githubToken: $(GitHub.Token) - githubContext: $(MultiTargetVSDropCommitStatusName) - blobName: $(MultiTargetVSDropCommitStatusName) - packagePrefix: xamarin-android - artifactsPath: $(Build.StagingDirectory)\$(MultiTargetVSDropCommitStatusName) - yamlResourceName: yaml-templates - downloadSteps: - - task: DownloadPipelineArtifact@2 - inputs: - artifactName: vsdrop-multitarget-signed - downloadPath: $(Build.StagingDirectory)\$(MultiTargetVSDropCommitStatusName) + dropServiceURI: https://devdiv.artifacts.visualstudio.com/DefaultCollection + buildNumber: $(ReleaseDropPrefix)/nugets + destinationPath: $(Build.StagingDirectory)\nuget-signed - task: DotNetCoreCLI@2 displayName: build Xamarin.Android.Tools.BootstrapTasks.sln From 220569586a80458a586eecd349e93c96bb10a67d Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Thu, 18 Jul 2024 15:17:26 -0400 Subject: [PATCH 4/7] [ci] Fix maestro publishing for stable packages (#9118) We've seen the build promotion pipeline fail when trying to publish stable package versions: error : Package 'Microsoft.iOS.Ref.net8.0_17.5' has stable version '17.5.8001' but is targeted at a non-isolated feed 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet8/nuget/v3/index.json' This is because we were not declaring these packages as stable when building the build asset registry manifest. Fix this by passing the `$(IsStableBuild)` property to the build asset manifest creation task. This property needs to be updated manually when switching to stable package versioning (see commit 4ea5dbb921). When `$(IsStableBuild)` is set to true, packages will be pushed to an isolated feed during publishing, such as: Package Microsoft.Android.Ref.34@34.0.125 (Shipping) should go to https://pkgs.dev.azure.com/dnceng/public/_packaging/darc-pub-dotnet-android-b8317b6f/nuget/v3/index.json (Isolated, Public) --- Directory.Build.props | 2 ++ build-tools/create-packs/Directory.Build.targets | 1 + 2 files changed, 3 insertions(+) diff --git a/Directory.Build.props b/Directory.Build.props index e143b8190da..aad52f3a1b9 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -39,6 +39,8 @@ $(AndroidPackVersion.Substring(0,$(AndroidPackVersionPatchIndex))) $(AndroidPackVersion.Substring($([MSBuild]::Add($(AndroidPackVersionPatchIndex), 1)))) rtm + false + true diff --git a/build-tools/create-packs/Directory.Build.targets b/build-tools/create-packs/Directory.Build.targets index 91e7c6c8108..8d8fb6cb560 100644 --- a/build-tools/create-packs/Directory.Build.targets +++ b/build-tools/create-packs/Directory.Build.targets @@ -194,6 +194,7 @@ Date: Wed, 14 Aug 2024 15:04:30 -0400 Subject: [PATCH 5/7] [ci] Use passwordless auth for darc/maestro (#9182) Fixes: https://github.com/dotnet/android/issues/9164 Migrates darc/maestro commands to use a passwordless auth flow, as token based authentication is deprecated and will be removed in the future. --- build-tools/automation/azure-pipelines.yaml | 36 ++++++++++++------- .../create-packs/Directory.Build.targets | 4 +-- eng/Version.Details.xml | 4 +-- eng/Versions.props | 2 +- 4 files changed, 28 insertions(+), 18 deletions(-) diff --git a/build-tools/automation/azure-pipelines.yaml b/build-tools/automation/azure-pipelines.yaml index c9f9a1bdabd..eb3147f9a30 100644 --- a/build-tools/automation/azure-pipelines.yaml +++ b/build-tools/automation/azure-pipelines.yaml @@ -547,9 +547,6 @@ extends: os: windows workspace: clean: all - variables: - - ${{ if eq(variables['MicroBuildSignType'], 'Real') }}: - - group: Publish-Build-Assets templateContext: outputs: - output: artifactsDrop @@ -564,6 +561,12 @@ extends: clean: true submodules: recursive + - task: UseDotNet@2 + displayName: Install .NET 9.x + inputs: + version: 9.x + includePreviewVersions: true + # Download symbols to be published to the symbols artifact drop declared above - task: DownloadPipelineArtifact@2 inputs: @@ -597,23 +600,30 @@ extends: arguments: -c $(XA.Build.Configuration) -bl:$(System.DefaultWorkingDirectory)\bin\Build$(XA.Build.Configuration)\bootstrap.binlog condition: and(succeeded(), eq('${{ parameters.pushXAPackagesToMaestro }}', 'true')) - - task: DotNetCoreCLI@2 + - task: AzureCLI@2 displayName: generate and publish BAR manifest inputs: - projects: $(System.DefaultWorkingDirectory)\build-tools\create-packs\Microsoft.Android.Sdk.proj - arguments: >- + azureSubscription: "Darc: Maestro Production" + scriptType: ps + scriptLocation: inlineScript + inlineScript: >- + dotnet build $(System.DefaultWorkingDirectory)\build-tools\create-packs\Microsoft.Android.Sdk.proj -t:PushManifestToBuildAssetRegistry - -p:BuildAssetRegistryToken=$(MaestroAccessToken) -p:OutputPath=$(Build.StagingDirectory)\nuget-signed\ -c $(XA.Build.Configuration) -bl:$(System.DefaultWorkingDirectory)\bin\Build$(XA.Build.Configuration)\push-bar-manifest.binlog condition: and(succeeded(), eq('${{ parameters.pushXAPackagesToMaestro }}', 'true')) - - powershell: | - $versionEndpoint = 'https://maestro.dot.net/api/assets/darc-version?api-version=2019-01-16' - $darcVersion = $(Invoke-WebRequest -Uri $versionEndpoint -UseBasicParsing).Content - $arcadeServicesSource = 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json' - & dotnet tool update microsoft.dotnet.darc --version "$darcVersion" --add-source "$arcadeServicesSource" --tool-path $(Agent.ToolsDirectory)\darc -v n - & $(Agent.ToolsDirectory)\darc\darc add-build-to-channel --default-channels --id $(BARBuildId) --publishing-infra-version 3 --password $(MaestroAccessToken) --azdev-pat $(publishing-dnceng-devdiv-code-r-build-re) + - task: AzureCLI@2 + inputs: + azureSubscription: "Darc: Maestro Production" + scriptType: ps + scriptLocation: inlineScript + inlineScript: | + $versionEndpoint = 'https://maestro.dot.net/api/assets/darc-version?api-version=2019-01-16' + $darcVersion = $(Invoke-WebRequest -Uri $versionEndpoint -UseBasicParsing).Content + $arcadeServicesSource = 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json' + & dotnet tool update microsoft.dotnet.darc --version "$darcVersion" --add-source "$arcadeServicesSource" --tool-path $(Agent.ToolsDirectory)\darc -v n + & $(Agent.ToolsDirectory)\darc\darc add-build-to-channel --default-channels --id $(BARBuildId) --ci --publishing-infra-version 3 --azdev-pat $(System.AccessToken) displayName: add build to default darc channel condition: and(succeeded(), eq('${{ parameters.pushXAPackagesToMaestro }}', 'true')) diff --git a/build-tools/create-packs/Directory.Build.targets b/build-tools/create-packs/Directory.Build.targets index 8d8fb6cb560..aee058aee80 100644 --- a/build-tools/create-packs/Directory.Build.targets +++ b/build-tools/create-packs/Directory.Build.targets @@ -163,7 +163,7 @@ - + @@ -192,7 +192,7 @@ - https://github.com/dotnet/arcade 70831f0d126fe88b81d7dc8de11358e17a5ce364 - + https://github.com/dotnet/arcade - 67d23f4ba1813b315e7e33c71d18b63475f5c5f8 + 60ae233c3d77f11c5fdb53e570b64d503b13ba59 https://github.com/dotnet/templating diff --git a/eng/Versions.props b/eng/Versions.props index 6e2cbcdf7ae..ad8ab52463f 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -6,7 +6,7 @@ 8.0.8 8.0.8 7.0.0-beta.22103.1 - 8.0.0-beta.24225.1 + 9.0.0-beta.24408.2 8.0.8 $(MicrosoftNETWorkloadEmscriptenCurrentManifest80100Version) 7.0.100-rc.1.22410.7 From 18ae96ab2e736eb3816807f1b9f727b2db67c388 Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Wed, 14 Aug 2024 16:03:49 -0400 Subject: [PATCH 6/7] Use net8.0 version of Microsoft.DotNet.SharedFramework.Sdk --- build-tools/create-packs/Directory.Build.targets | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build-tools/create-packs/Directory.Build.targets b/build-tools/create-packs/Directory.Build.targets index aee058aee80..64df3714b51 100644 --- a/build-tools/create-packs/Directory.Build.targets +++ b/build-tools/create-packs/Directory.Build.targets @@ -7,7 +7,7 @@ - + From b577565274ce942c37657ff7dfc4d5592e0e36d0 Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Mon, 12 Aug 2024 14:57:00 -0400 Subject: [PATCH 7/7] [ci] Simplify shipping drop metadata names (#9181) Using the $(System.JobAttempt) variable in the drop metadata artifact name is problematic. In some cases the drop artifacts created by the nuget-msi-convert job will be used by a different job, and the job attempt number will not necessarily match if any jobs are re-ran. --- build-tools/automation/azure-pipelines.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build-tools/automation/azure-pipelines.yaml b/build-tools/automation/azure-pipelines.yaml index eb3147f9a30..e455b80707d 100644 --- a/build-tools/automation/azure-pipelines.yaml +++ b/build-tools/automation/azure-pipelines.yaml @@ -552,7 +552,7 @@ extends: - output: artifactsDrop dropServiceURI: https://devdiv.artifacts.visualstudio.com/DefaultCollection buildNumber: $(ReleaseDropPrefix)/symbols - dropMetadataContainerName: DropMetadata-$(Build.BuildId)-symbols-$(System.JobAttempt) + dropMetadataContainerName: DropMetadata-shipping-symbols sourcePath: $(Build.StagingDirectory)\symbols retentionDays: 120 toLowerCase: false @@ -575,7 +575,7 @@ extends: - task: DownloadPipelineArtifact@2 inputs: - artifactName: DropMetadata-$(Build.BuildId)-nugets-$(System.JobAttempt) + artifactName: DropMetadata-shipping-nugets downloadPath: $(Build.StagingDirectory)\metadata displayName: Download nugets drop metadata