@@ -74,7 +74,9 @@ extends:
7474 binskim :
7575 scanOutputDirectoryOnly : true
7676 codeql :
77- runSourceLanguagesInSourceAnalysis : true
77+ compiled :
78+ enabled : false
79+ justificationForDisabling : CodeQL runs against the nightly build
7880 policheck :
7981 enabled : false
8082 justification : Built in task does not support multi-language scanning
@@ -465,7 +467,7 @@ extends:
465467 condition : and(eq(dependencies.mac_build.result, 'Succeeded'), eq(dependencies.linux_build.result, 'Succeeded'), eq(variables['MicroBuildSignType'], 'Real'))
466468 jobs :
467469 # Check - "Xamarin.Android (Prepare .NET Release Sign Archives)"
468- - template : sign-artifacts/jobs/v2 .yml@yaml-templates
470+ - template : sign-artifacts/jobs/v3 .yml@yaml-templates
469471 parameters :
470472 name : sign_net_mac_win
471473 poolName : $(VSEngMicroBuildPool)
@@ -474,9 +476,12 @@ extends:
474476 signedArtifactName : nuget-signed
475477 usePipelineArtifactTasks : true
476478 use1ESTemplate : true
479+ uploadPrefix : sign-mac-win
480+ handleUnmappedFiles : fail
481+ timeoutInMinutes : 240
477482
478483 # Check - "Xamarin.Android (Prepare .NET Release Sign Linux Archive)"
479- - template : sign-artifacts/jobs/v2 .yml@yaml-templates
484+ - template : sign-artifacts/jobs/v3 .yml@yaml-templates
480485 parameters :
481486 name : sign_net_linux
482487 displayName : Sign Linux Archive
@@ -486,9 +491,12 @@ extends:
486491 signedArtifactName : nuget-linux-signed
487492 usePipelineArtifactTasks : true
488493 use1ESTemplate : true
494+ uploadPrefix : sign-linux
495+ handleUnmappedFiles : fail
496+ timeoutInMinutes : 120
489497
490498 # Check - "Xamarin.Android (Prepare .NET Release Convert NuGet to MSI)"
491- - template : nuget-msi-convert/job/v3 .yml@yaml-templates
499+ - template : nuget-msi-convert/job/v4 .yml@yaml-templates
492500 parameters :
493501 yamlResourceName : yaml-templates
494502 dependsOn : sign_net_mac_win
@@ -497,32 +505,42 @@ extends:
497505 !*Darwin*
498506 propsArtifactName : $(NuGetArtifactName)
499507 signType : $(MicroBuildSignType)
500- use1ESTemplate : true
508+ preConvertSteps :
509+ - task : DownloadPipelineArtifact@2
510+ inputs :
511+ artifactName : nuget-signed
512+ artifactPatterns : |
513+ *Darwin*
514+ downloadPath : $(Build.StagingDirectory)\drop\nugets
515+ - task : DownloadPipelineArtifact@2
516+ inputs :
517+ artifactName : nuget-linux-signed
518+ downloadPath : $(Build.StagingDirectory)\drop\nugets
501519 postConvertSteps :
502520 - task : DownloadPipelineArtifact@2
503521 inputs :
504522 artifactName : $(NuGetArtifactName)
505523 downloadPath : $(Build.StagingDirectory)\sign-verify
506524 patterns : |
507525 **/SignVerifyIgnore.txt
508-
509526 - task : MicroBuildCodesignVerify@3
510527 displayName : verify signed msi content
511528 inputs :
512529 TargetFolders : |
513530 $(Build.ArtifactStagingDirectory)\bin\manifests
514- $(Build.ArtifactStagingDirectory)\bin\manifests-multitarget
531+ $(Build.ArtifactStagingDirectory)\bin\manifests-packs
532+ $(Build.ArtifactStagingDirectory)\bin\msi-nupkgs
515533 ExcludeSNVerify : true
516534 ApprovalListPathForCerts : $(Build.StagingDirectory)\sign-verify\SignVerifyIgnore.txt
517535
518- # Check - "Xamarin.Android (Prepare .NET Release Push Internal )"
536+ # Check - "Xamarin.Android (Prepare .NET Release Publish symbols and Push to Maestro )"
519537 - job : push_signed_nugets
520- displayName : Push Internal
538+ displayName : Publish symbols and Push to Maestro
521539 dependsOn :
522540 - nuget_convert
523541 - sign_net_linux
524542 condition : and(eq(dependencies.nuget_convert.result, 'Succeeded'), eq(dependencies.sign_net_linux.result, 'Succeeded'))
525- timeoutInMinutes : 60
543+ timeoutInMinutes : 90
526544 pool :
527545 name : AzurePipelines-EO
528546 image : $(WindowsPoolImage1ESPT)
@@ -532,67 +550,45 @@ extends:
532550 variables :
533551 - ${{ if eq(variables['MicroBuildSignType'], 'Real') }} :
534552 - group : Publish-Build-Assets
553+ templateContext :
554+ outputs :
555+ - output : artifactsDrop
556+ dropServiceURI : https://devdiv.artifacts.visualstudio.com/DefaultCollection
557+ buildNumber : $(ReleaseDropPrefix)/symbols
558+ dropMetadataContainerName : DropMetadata-$(Build.BuildId)-symbols-$(System.JobAttempt)
559+ sourcePath : $(Build.StagingDirectory)\symbols
560+ retentionDays : 120
561+ toLowerCase : false
535562 steps :
536563 - checkout : self
537564 clean : true
538565 submodules : recursive
539566
567+ # Download symbols to be published to the symbols artifact drop declared above
540568 - task : DownloadPipelineArtifact@2
541569 inputs :
542- artifactName : nuget-signed
543- downloadPath : $(Build.StagingDirectory)\nuget-signed
544-
545- - task : DownloadPipelineArtifact@2
546- inputs :
547- artifactName : nuget-linux-signed
548- downloadPath : $(Build.StagingDirectory)\nuget-signed
570+ artifactName : $(WindowsToolchainPdbArtifactName)
571+ downloadPath : $(Build.StagingDirectory)\symbols
549572
550573 - task : DownloadPipelineArtifact@2
551574 inputs :
552- artifactName : vs-msi-nugets
553- downloadPath : $(Build.StagingDirectory)\nuget-signed
575+ artifactName : DropMetadata-$(Build.BuildId)-nugets-$(System.JobAttempt)
576+ downloadPath : $(Build.StagingDirectory)\metadata
577+ displayName : Download nugets drop metadata
554578
555- - task : DownloadPipelineArtifact@2
579+ - powershell : |
580+ $jsonContent = Get-Content -Path "$(Build.StagingDirectory)\metadata\VSTSDrop.json" -Raw | ConvertFrom-Json
581+ $dropPrefix = $jsonContent.VstsDropBuildArtifact.VstsDropUrl -replace 'https://devdiv.artifacts.visualstudio.com/DefaultCollection/_apis/drop/drops/' -replace '/nugets'
582+ Write-Host "##vso[task.setvariable variable=ReleaseDropPrefix]$dropPrefix"
583+ displayName: Set variable ReleaseDropPrefix
584+
585+ # Download nugets drop created by nuget-msi-convert/job/v4.yml and publish to maestro
586+ - task : ms-vscs-artifact.build-tasks.artifactDropDownloadTask-1.artifactDropDownloadTask@1
587+ displayName : Download $(ReleaseDropPrefix)/nugets
556588 inputs :
557- artifactName : $(WindowsToolchainPdbArtifactName)
558- downloadPath : $(Build.StagingDirectory)\nuget-signed
559-
560- - template : templates\common\upload-vs-insertion-artifacts.yml@sdk-insertions
561- parameters :
562- githubToken : $(GitHub.Token)
563- githubContext : $(NupkgCommitStatusName)
564- blobName : $(NupkgCommitStatusName)
565- packagePrefix : xamarin-android
566- artifactsPath : $(Build.StagingDirectory)\nuget-signed
567- yamlResourceName : yaml-templates
568-
569- - template : templates\common\upload-vs-insertion-artifacts.yml@sdk-insertions
570- parameters :
571- githubToken : $(GitHub.Token)
572- githubContext : $(VSDropCommitStatusName)
573- blobName : $(VSDropCommitStatusName)
574- packagePrefix : xamarin-android
575- artifactsPath : $(Build.StagingDirectory)\$(VSDropCommitStatusName)
576- yamlResourceName : yaml-templates
577- downloadSteps :
578- - task : DownloadPipelineArtifact@2
579- inputs :
580- artifactName : vsdrop-signed
581- downloadPath : $(Build.StagingDirectory)\$(VSDropCommitStatusName)
582-
583- - template : templates\common\upload-vs-insertion-artifacts.yml@sdk-insertions
584- parameters :
585- githubToken : $(GitHub.Token)
586- githubContext : $(MultiTargetVSDropCommitStatusName)
587- blobName : $(MultiTargetVSDropCommitStatusName)
588- packagePrefix : xamarin-android
589- artifactsPath : $(Build.StagingDirectory)\$(MultiTargetVSDropCommitStatusName)
590- yamlResourceName : yaml-templates
591- downloadSteps :
592- - task : DownloadPipelineArtifact@2
593- inputs :
594- artifactName : vsdrop-multitarget-signed
595- downloadPath : $(Build.StagingDirectory)\$(MultiTargetVSDropCommitStatusName)
589+ dropServiceURI : https://devdiv.artifacts.visualstudio.com/DefaultCollection
590+ buildNumber : $(ReleaseDropPrefix)/nugets
591+ destinationPath : $(Build.StagingDirectory)\nuget-signed
596592
597593 - task : DotNetCoreCLI@2
598594 displayName : build Xamarin.Android.Tools.BootstrapTasks.sln
0 commit comments