54 lines
2.4 KiB
YAML
54 lines
2.4 KiB
YAML
# This template contains jobs to run unit tests on the interactive test agents.
|
|
|
|
parameters:
|
|
platform: ''
|
|
|
|
jobs:
|
|
- job: UnitTests${{ parameters.platform }}
|
|
displayName: UnitTests ${{ parameters.platform }}
|
|
dependsOn: Build${{ parameters.platform }}
|
|
pool:
|
|
name: Essential Experiences Interactive
|
|
workspace:
|
|
clean: outputs
|
|
steps:
|
|
- checkout: none
|
|
|
|
- powershell: Write-Host "##vso[task.setvariable variable=agentInstanceId;isOutput=true]$($env:AgentName -replace '\D+' -as [int])"
|
|
name: LogAgentStep
|
|
displayName: Log this agent's instance for later cleanup
|
|
env:
|
|
AgentName: $(Agent.Name)
|
|
|
|
- task: DownloadBuildArtifacts@0
|
|
displayName: Download CalculatorUnitTests
|
|
inputs:
|
|
artifactName: drop
|
|
itemPattern: drop/Release/${{ parameters.platform }}/CalculatorUnitTests_VS/AppPackages/CalculatorUnitTests_Test/**
|
|
|
|
- task: PowerShell@2
|
|
displayName: Install Certificate
|
|
inputs:
|
|
filePath: $(Build.ArtifactStagingDirectory)\drop\Release\${{ parameters.platform }}\CalculatorUnitTests_VS\AppPackages\CalculatorUnitTests_Test\Add-AppDevPackage.ps1
|
|
arguments: -CertificatePath $(Build.ArtifactStagingDirectory)\drop\Release\${{ parameters.platform }}\CalculatorUnitTests_VS\AppPackages\CalculatorUnitTests_Test\CalculatorUnitTests.cer -Force
|
|
|
|
- task: VSTest@2
|
|
displayName: Run CalculatorUnitTests
|
|
inputs:
|
|
testAssemblyVer2: $(Build.ArtifactStagingDirectory)\drop\Release\${{ parameters.platform }}\CalculatorUnitTests_VS\AppPackages\CalculatorUnitTests_Test\CalculatorUnitTests.appx
|
|
otherConsoleOptions: /Platform:${{ parameters.platform }}
|
|
|
|
- job: CleanUpUnitTests${{ parameters.platform }}
|
|
dependsOn: UnitTests${{ parameters.platform }}
|
|
condition: and(always(), ne(dependencies.UnitTests${{ parameters.platform }}.Outputs['LogAgentStep.agentInstanceId'], ''))
|
|
pool: server
|
|
variables:
|
|
agentInstanceId: $[ dependencies.UnitTests${{ parameters.platform }}.outputs['LogAgentStep.agentInstanceId'] ]
|
|
steps:
|
|
- task: InvokeRESTAPI@1
|
|
displayName: Reimage test machine
|
|
inputs:
|
|
connectionType: connectedServiceNameARM
|
|
azureServiceConnection: macool-sandbox-interactiveDesktopRS5
|
|
urlSuffix: subscriptions/012a8008-c00f-45b3-9828-41ebba30141d/resourceGroups/interactiveDesktopRS5/providers/Microsoft.Compute/virtualMachineScaleSets/essential/reimage?api-version=2018-10-01
|
|
body: '{ "instanceIds": ["$(agentInstanceId)"] }' |