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/automation/azure-pipelines.yaml b/build-tools/automation/azure-pipelines.yaml
index 62d582effbf..e455b80707d 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,118 +523,107 @@ 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)
os: windows
workspace:
clean: all
- 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)
+ - output: artifactsDrop
+ dropServiceURI: https://devdiv.artifacts.visualstudio.com/DefaultCollection
+ buildNumber: $(ReleaseDropPrefix)/symbols
+ dropMetadataContainerName: DropMetadata-shipping-symbols
+ sourcePath: $(Build.StagingDirectory)\symbols
+ retentionDays: 120
+ toLowerCase: false
steps:
- checkout: self
+ clean: true
+ submodules: recursive
- - task: DownloadPipelineArtifact@2
+ - task: UseDotNet@2
+ displayName: Install .NET 9.x
inputs:
- artifactName: nuget-signed
- downloadPath: $(Build.StagingDirectory)\nuget-signed
+ version: 9.x
+ includePreviewVersions: true
+ # Download symbols to be published to the symbols artifact drop declared above
- 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-shipping-nugets
+ 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
+ dropServiceURI: https://devdiv.artifacts.visualstudio.com/DefaultCollection
+ buildNumber: $(ReleaseDropPrefix)/nugets
+ destinationPath: $(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)
-
- - 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: AzureCLI@2
displayName: generate and publish BAR manifest
+ inputs:
+ azureSubscription: "Darc: Maestro Production"
+ scriptType: ps
+ scriptLocation: inlineScript
+ inlineScript: >-
+ dotnet build $(System.DefaultWorkingDirectory)\build-tools\create-packs\Microsoft.Android.Sdk.proj
+ -t:PushManifestToBuildAssetRegistry
+ -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-prod.westus2.cloudapp.azure.com/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)
+ - 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 689142072ac..64df3714b51 100644
--- a/build-tools/create-packs/Directory.Build.targets
+++ b/build-tools/create-packs/Directory.Build.targets
@@ -7,10 +7,9 @@
-
+
-
@@ -164,15 +163,27 @@
-
+
+
+
+ $(OutputPath)
+ Assets.xml
+ $(ArtifactsLogDir)AssetManifest\$(AssetManifestFileName)
+
+
+
+
-
+
-
+
+
+
-
+
@@ -181,25 +192,26 @@
-
diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml
index 216201ee997..c745fe0e1b8 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
+ 60ae233c3d77f11c5fdb53e570b64d503b13ba59
https://github.com/dotnet/templating
diff --git a/eng/Versions.props b/eng/Versions.props
index 6e98ae60089..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
- 7.0.0-beta.22103.1
+ 9.0.0-beta.24408.2
8.0.8
$(MicrosoftNETWorkloadEmscriptenCurrentManifest80100Version)
7.0.100-rc.1.22410.7