@@ -3,144 +3,65 @@ parameters:
33 type : object
44 - name : bootstrapperUrl
55 type : string
6- - name : baseBuildDrop
7- type : string
86 - name : runSettingsURI
97 type : string
10- - name : DartLabEnvironment
8+ - name : VsBootstrapperBranch
119 type : string
1210 - name : condition
1311 type : string
1412 - name : variables
1513 type : object
1614 - name : testExecutionJobTimeoutInMinutes
1715 type : number
18- - name : testMachineCleanUpStrategy
16+ - name : testDeploymentCleanupMode
1917 type : string
20- default : delete
18+ default : OnSuccess
2119 values :
22- - delete
23- - stop
24- - name : isOfficialBuild
25- type : boolean
26- default : false
27- - name : QBuildSessionId
28- type : string
20+ - Always
21+ - Never
22+ - OnSuccess
2923
3024stages :
31- - template : stages\ visual-studio\build-to-build-upgrade\ single-runsettings.yml@DartLabTemplates
25+ - template : stages/cloudtest/ visual-studio/ single-runsettings.yml@DartLabTemplates
3226 parameters :
3327 name : VS_Apex_Tests
3428 displayName : Apex Tests On Windows
3529 condition : ${{parameters.condition}}
3630 dependsOn : ${{parameters.dependsOn}}
3731 variables :
38- - name : bootstrapperUrl
39- value : ${{parameters.bootstrapperUrl}}
4032 - ${{if gt(length(parameters.variables), 0)}} :
4133 - ${{parameters.variables}}
34+ owner : nugetclienteng
35+ testMachineLab : " NuGet"
4236 runSettingsURI : ${{parameters.runSettingsURI}}
43- visualStudioBootstrapperURI : $(bootstrapperUrl)
44- baseVisualStudioBootstrapperURI : https://vsdrop.microsoft.com/file/v1/$(VisualStudio.BaseBuild.ProductsDropName);bootstrappers/Enterprise/vs_enterprise.exe
45- candidateBaselineBuilds : $(BaselineBuildCommitIds)
46- testLabPoolName : VS-Platform
47- dartLabEnvironment : ${{parameters.DartLabEnvironment}}
37+ visualStudioBootstrapperURI : ${{parameters.bootstrapperUrl}}
4838 visualStudioSigning : Test
4939 testMachineConfigurationJobTimeoutInMinutes : 30
50- testMachineDeploymentJobTimeoutInMinutes : 240
5140 testMachineConfigurationJobDisplayName : ' Apex Test Machine Configuration'
52- testMachineDeploymentJobDisplayName : ' Apex Test Machine Deployment'
5341 testExecutionJobDisplayName : ' Apex Test Execution'
54- testMachineCleanUpJobDisplayName : ' Apex Test Machine Clean Up'
55- testRunContinueOnError : ${{ parameters.isOfficialBuild }}
5642 testExecutionJobTimeoutInMinutes : ${{parameters.testExecutionJobTimeoutInMinutes}}
57- testMachineCleanUpStrategy : ${{parameters.testMachineCleanUpStrategy}}
58- testAgentElevated : true
43+ testDeploymentCleanupMode : ${{parameters.testDeploymentCleanupMode}}
44+ testMachineConfigurationJobVariables :
45+ - name : VisualStudio.InstallationUnderTest.BootstrapperBranch
46+ value : ${{parameters.VsBootstrapperBranch}}
5947
6048# #############################
61- # # preTestMachineConfigurationStepList
49+ # # preDeployAndRunTestsOperations
6250# #############################
63- preTestMachineConfigurationStepList :
64- - template : \steps\powershell\execute-script.yml@DartLabTemplates
65- parameters :
66- displayName : Get Baseline Build ID using CloudBuild Session ID
67- continueOnError : true
68- filePath : $(DartLab.Path)\Scripts\AzureDevOps\Build\Get-BuildIdFromCloudBuildSessionID.ps1
69- arguments : -ClientSecret (ConvertTo-SecureString '$(CloudBuild-ClientSecret)' -AsPlainText -Force) -ClientID '$(CloudBuild-ClientID)' -SessionID '${{ parameters.QBuildSessionId }}' -OutVariableName 'BaselineBuildID'
70-
71- - task : PowerShell@2
72- displayName : " Get Baseline build commit ids"
73- name : " getbaselinebuildcommitids"
74- retryCountOnTaskFailure : 3
75- continueOnError : true
76- inputs :
77- targetType : ' inline'
78- script : |
79- try {
80- Write-Host "Getting Baseline build commit ids for build: '$(BaselineBuildID)'"
81-
82- $artifactName = 'BuildArtifacts'
83- $baselineBuildsFile = Join-Path $(Agent.TempDirectory) "BaselineBuilds.json"
84-
85- $artifact = Get-BuildArtifact -InstanceURL 'https://dev.azure.com/devdiv' -ProjectName 'DevDiv' -BuildID $(BaselineBuildID) -ArtifactName $artifactName -OAuthAccessToken (ConvertTo-SecureString '$(System.AccessToken)' -AsPlainText -Force)
86- $containerName = $artifact.Resource.Data -Split '/' | Select-Object -Last 1
87- $fileName = Join-Path $containerName 'BaselineBuilds.json'
88- $jsonString = Read-BuildArtifactFile -InstanceURL 'https://dev.azure.com/devdiv' -ProjectName 'DevDiv' -BuildID $(BaselineBuildID) -ArtifactName $artifactName -FileName $fileName -OAuthAccessToken (ConvertTo-SecureString '$(System.AccessToken)' -AsPlainText -Force)
89-
90- $jsonString | Out-File -FilePath $baselineBuildsFile
91-
92- $(DartLab.Path)\Scripts\VisualStudio\Build\Get-BaselineBuildCommitIDs.ps1 -BuildJson $baselineBuildsFile -OutVariableName "BaselineBuildCommitIds"
93- } catch {
94- Write-Host "Unable to get Baseline build commit ids: $_"
95- }
96- - task : PowerShell@2
97- name : SetVisualStudioBaseBuildID
98- displayName : Set 'VisualStudio.BaseBuild.ID'
99- retryCountOnTaskFailure : 3
100- condition : ne(variables['BaselineBuildCommitIds'], '')
101- continueOnError : true
102- inputs :
103- filePath : $(DartLab.Path)\Scripts\VisualStudio\Build\Get-BaselineBuildID.ps1
104- arguments : -OAuthAccessToken (ConvertTo-SecureString '$(System.AccessToken)' -AsPlainText -Force) -InstanceURL '$(System.CollectionUri)' -RepositoryName 'VS' -ProjectName '$(System.TeamProject)' -CommitIDs $(BaselineBuildCommitIds) -BuildDefinitionIDs 10289 -OutVariableName 'VisualStudio.BaseBuild.ID'
105- - task : PowerShell@2
106- name : SetVisualStudioBaseBuildProductsDropName
107- displayName : Set 'VisualStudio.BaseBuild.ProductsDropName'
108- retryCountOnTaskFailure : 3
109- condition : ne(variables['VisualStudio.BaseBuild.ID'], '')
110- inputs :
111- filePath : $(DartLab.Path)\Scripts\VisualStudio\Build\Get-VisualStudioDropName.ps1
112- arguments : -AccessToken (ConvertTo-SecureString '$(System.AccessToken)' -AsPlainText -Force) -DropNamePrefix 'Products' -AccountURL '$(System.CollectionUri)' -ProjectName '$(System.TeamProject)' -BuildID $(VisualStudio.BaseBuild.ID) -OutVariableName 'VisualStudio.BaseBuild.ProductsDropName'
113- - task : PowerShell@2
114- name : SetBaseProductsDropNameToTarget
115- displayName : Set 'VisualStudio.BaseBuild.ProductsDropName' to drop from target build
116- retryCountOnTaskFailure : 3
117- condition : eq(variables['VisualStudio.BaseBuild.ID'], '')
118- inputs :
119- targetType : ' inline'
120- script : |
121- $buildDrop = "${{parameters.baseBuildDrop}}" -split "/"
122- $dropName = "Products/DevDiv/VS/$($buildDrop[-2])/$($buildDrop[-1])"
123- Write-Host "##vso[task.setvariable variable=VisualStudio.BaseBuild.ProductsDropName]$dropName"
124-
125- # #############################
126- # # preDeployAndRunTestsStepList
127- # #############################
128- preDeployAndRunTestsStepList :
129- - task : PowerShell@1
51+ preDeployAndRunTestsOperations :
52+ - operation : executePowerShellInline
13053 displayName : " Print Environment Variables"
131- inputs :
132- scriptType : " inlineScript"
133- inlineScript : |
134- Get-ChildItem Env: | Sort-Object Name | Format-Table -Wrap -AutoSize
54+ scriptBlock : |
55+ Get-ChildItem Env: | Sort-Object Name | Format-Table -Wrap -AutoSize
56+ timeout : " 0:0:5:0"
13557
136- - task : DownloadPipelineArtifact@2
58+ - operation : downloadAzureArtifactsDrop
13759 displayName : " Download scripts"
138- inputs :
139- artifactName : " scripts "
140- downloadPath : " $(Build.StagingDirectory)/scripts "
60+ dropName : " $(RunSettingsDrop) "
61+ destinationDirectory : " c: \\ nuget \\ RunSettings "
62+ timeout : " 0:0:10:0 "
14163
142- - task : PowerShell@1
64+ - operation : executePowerShellScript
14365 displayName : " SetupFunctionalTests.ps1"
144- inputs :
145- scriptName : " $(Build.StagingDirectory)/scripts/e2etests/SetupFunctionalTests.ps1"
146-
66+ scriptPath : " c:\\ nuget\\ RunSettings\\ scripts\\ e2etests\\ SetupFunctionalTests.ps1"
67+ timeout : " 0:0:10:0"
0 commit comments