diff --git a/.vsts-ci/linux.yml b/.vsts-ci/linux.yml index 4201d77c6a..a4fef528f2 100644 --- a/.vsts-ci/linux.yml +++ b/.vsts-ci/linux.yml @@ -28,77 +28,79 @@ pr: variables: DOTNET_CLI_TELEMETRY_OPTOUT: 1 POWERSHELL_TELEMETRY_OPTOUT: 1 - # Avoid expensive initialization of dotnet cli, see: http://donovanbrown.com/post/Stop-wasting-time-during-NET-Core-builds + # Avoid expensive initialization of dotnet cli, see: https://donovanbrown.com/post/Stop-wasting-time-during-NET-Core-builds DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1 resources: - repo: self clean: true jobs: -- job: Linux_CI +- template: templates/ci-build.yml + parameters: + pool: Hosted Ubuntu 1604 + jobName: linux_build + displayName: linux Build +- template: templates/nix-test.yml + parameters: + name: Linux + pool: Hosted Ubuntu 1604 + purpose: UnelevatedPesterTests + tagSet: CI + parentJobs: + - linux_build + +- template: templates/nix-test.yml + parameters: + name: Linux + pool: Hosted Ubuntu 1604 + purpose: ElevatedPesterTests + tagSet: CI + parentJobs: + - linux_build + +- template: templates/nix-test.yml + parameters: + name: Linux + pool: Hosted Ubuntu 1604 + purpose: UnelevatedPesterTests + tagSet: Others + parentJobs: + - linux_build + +- template: templates/nix-test.yml + parameters: + name: Linux + pool: Hosted Ubuntu 1604 + purpose: ElevatedPesterTests + tagSet: Others + parentJobs: + - linux_build + +- job: verify_xunit + displayName: Verify xUnit Results pool: name: Hosted Ubuntu 1604 - - timeoutInMinutes: 120 - + dependsOn: + - linux_build steps: - - powershell: | - Get-Process - displayName: Capture Processes - condition: succeededOrFailed() + - task: DownloadBuildArtifacts@0 + displayName: 'Download build artifacts' + inputs: + downloadType: specific + itemPattern: | + xunit/**/* + downloadPath: '$(System.ArtifactsDirectory)' - - powershell: | - Get-ChildItem -Path env: - displayName: Capture environment - condition: succeededOrFailed() - - - powershell: | - # sometimes the file is locked and we must wait or things will fail - $filePath = '/var/lib/dpkg/lock' - $lockList = sudo lsof '/var/lib/dpkg/lock' - while($lockList) - { - Write-Verbose "waiting..." -verbose - Write-Verbose ($lockList -join "`n") -verbose - Start-Sleep -Second 30 - $lockList = sudo lsof $filePath - } - exit 0 - displayName: Wait for /var/lib/dpkg/lock - condition: succeededOrFailed() - - - powershell: Write-Host "##vso[build.updatebuildnumber]$env:BUILD_SOURCEBRANCHNAME-$env:BUILD_SOURCEVERSION-$((get-date).ToString("yyyyMMddhhmmss"))" - displayName: Set Build Name for Non-PR - condition: ne(variables['Build.Reason'], 'PullRequest') - -# Several scripts require TMPDIR to exist -# Set it to AGENT_TEMPDIRECTORY so that we know it exists - - powershell: | - Write-Host "##vso[task.setvariable variable=TEMP]$env:AGENT_TEMPDIRECTORY" - displayName: Set TEMP to AGENT_TEMPDIRECTORY - condition: succeededOrFailed() - - - template: ../tools/releaseBuild/azureDevOps/templates/insert-nuget-config-azfeed.yml - - - powershell: | - Import-Module ./tools/ci.psm1 - Invoke-BootstrapStage - displayName: Bootstrap - condition: succeeded() - - - powershell: | - Import-Module ./tools/ci.psm1 - $env:NugetKey = '$(NUGET_KEY)' - Invoke-LinuxTests - displayName: Build and Test - condition: succeeded() - - # Uploads any packages as an artifact - - powershell: | - Get-ChildItem -Path ${env:BUILD_ARTIFACTSTAGINGDIRECTORY} -Include *.nupkg, *.rpm, *.deb, *.tar.gz, TestPackage.zip -Recurse | Select-Object -ExpandProperty FullName | ForEach-Object { - Write-Host "##vso[artifact.upload containerfolder=artifacts;artifactname=artifacts]$_" - } - displayName: Publish Artifacts - condition: succeededOrFailed() + - pwsh: | + Get-ChildItem "$(System.ArtifactsDirectory)\*" -Recurse + displayName: 'Capture artifacts directory' continueOnError: true + + - pwsh: | + Import-Module .\tools\ci.psm1 + $xUnitTestResultsFile = "$(System.ArtifactsDirectory)\xunit\xUnitTestResults.xml" + + Test-XUnitTestResults -TestResultsFile $xUnitTestResultsFile + displayName: Test + condition: succeeded() diff --git a/.vsts-ci/mac.yml b/.vsts-ci/mac.yml index b7903f0dbc..1ae0ef4d14 100644 --- a/.vsts-ci/mac.yml +++ b/.vsts-ci/mac.yml @@ -32,8 +32,6 @@ variables: DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1 # Turn off Homebrew analytics HOMEBREW_NO_ANALYTICS: 1 - # Enable VSTS debug mode until stabilitized - system.debug: 'true' resources: - repo: self