Add Linux, Node8, and Node10 to test matrix (#1445)

- Test both Node8 and Node10 on Windows and Linux
- Only test Node8 on MacOS, since the ASP.NET Core 2.1.X templates are incompatible with Node10 on macOS
  - https://github.com/aspnet/Templating/issues/608
- Move Windows build to "Hosted VS2017" pool which has more agents
  - We would rather use the "Hosted" pool, but "npm restore" currently fails on agents in this pool
- Remove "Preview" from Mac pool name
This commit is contained in:
Mike Harder 2018-10-03 11:02:59 -07:00 committed by GitHub
parent 44a8e0812b
commit 9c37082a74
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 81 additions and 15 deletions

View File

@ -2,22 +2,38 @@ trigger: none
phases: phases:
- phase: Host_Windows - phase: Host_Windows
queue: queue:
name: DotNetCore-Windows name: Hosted VS2017
parallel: 4 parallel: 8
matrix: matrix:
Portable: Portable_Node8:
Test.RuntimeIdentifier: none Test.RuntimeIdentifier: none
SelfContainedWindows: Node.Version: 8.x
Portable_Node10:
Test.RuntimeIdentifier: none
Node.Version: 10.x
SelfContainedWindows_Node8:
Test.RuntimeIdentifier: win-x64 Test.RuntimeIdentifier: win-x64
SelfContainedLinux: Node.Version: 8.x
SelfContainedWindows_Node10:
Test.RuntimeIdentifier: win-x64
Node.Version: 10.x
SelfContainedLinux_Node8:
Test.RuntimeIdentifier: linux-x64 Test.RuntimeIdentifier: linux-x64
SelfContainedMacOs: Node.Version: 8.x
SelfContainedLinux_Node10:
Test.RuntimeIdentifier: linux-x64
Node.Version: 10.x
SelfContainedMacOs_Node8:
Test.RuntimeIdentifier: osx-x64 Test.RuntimeIdentifier: osx-x64
Node.Version: 8.x
SelfContainedMacOs_Node10:
Test.RuntimeIdentifier: osx-x64
Node.Version: 10.x
steps: steps:
- task: NodeTool@0 - task: NodeTool@0
displayName: Install Node 10.x displayName: Install Node $(Node.Version)
inputs: inputs:
versionSpec: 10.x versionSpec: $(Node.Version)
- powershell: | - powershell: |
test/Cli.FunctionalTests/run-tests.ps1 -ci -ProdConManifestUrl $env:PRODCONMANIFESTURL -TestRuntimeIdentifier $(Test.RuntimeIdentifier) -AdditionalRestoreSources $env:ADDITIONALRESTORESOURCES test/Cli.FunctionalTests/run-tests.ps1 -ci -ProdConManifestUrl $env:PRODCONMANIFESTURL -TestRuntimeIdentifier $(Test.RuntimeIdentifier) -AdditionalRestoreSources $env:ADDITIONALRESTORESOURCES
condition: ne(variables['PB_SkipTests'], 'true') condition: ne(variables['PB_SkipTests'], 'true')
@ -30,22 +46,72 @@ phases:
testResultsFiles: 'artifacts/logs/**/*.trx' testResultsFiles: 'artifacts/logs/**/*.trx'
- phase: Host_macOS - phase: Host_macOS
queue: queue:
name: Hosted macOS Preview name: Hosted macOS
parallel: 4 parallel: 4
# The ASP.NET Core 2.1.X templates are incompatible with Node10 on macOS
# https://github.com/aspnet/Templating/issues/608
matrix: matrix:
Portable: Portable_Node8:
Test.RuntimeIdentifier: none Test.RuntimeIdentifier: none
SelfContainedWindows: Node.Version: 8.x
SelfContainedWindows_Node8:
Test.RuntimeIdentifier: win-x64 Test.RuntimeIdentifier: win-x64
SelfContainedLinux: Node.Version: 8.x
SelfContainedLinux_Node8:
Test.RuntimeIdentifier: linux-x64 Test.RuntimeIdentifier: linux-x64
SelfContainedMacOs: Node.Version: 8.x
SelfContainedMacOs_Node8:
Test.RuntimeIdentifier: osx-x64 Test.RuntimeIdentifier: osx-x64
Node.Version: 8.x
steps: steps:
- task: NodeTool@0 - task: NodeTool@0
displayName: Install Node 8.x displayName: Install Node $(Node.Version)
inputs: inputs:
versionSpec: 8.x versionSpec: $(Node.Version)
- powershell: |
test/Cli.FunctionalTests/run-tests.ps1 -ci -ProdConManifestUrl $env:PRODCONMANIFESTURL -TestRuntimeIdentifier $(Test.RuntimeIdentifier) -AdditionalRestoreSources $env:ADDITIONALRESTORESOURCES
condition: ne(variables['PB_SkipTests'], 'true')
displayName: Run E2E tests
- task: PublishTestResults@2
displayName: Publish test results
condition: always()
inputs:
testRunner: vstest
testResultsFiles: 'artifacts/logs/**/*.trx'
- phase: Host_Linux
queue:
name: Hosted Linux Preview
parallel: 8
matrix:
Portable_Node8:
Test.RuntimeIdentifier: none
Node.Version: 8.x
Portable_Node10:
Test.RuntimeIdentifier: none
Node.Version: 10.x
SelfContainedWindows_Node8:
Test.RuntimeIdentifier: win-x64
Node.Version: 8.x
SelfContainedWindows_Node10:
Test.RuntimeIdentifier: win-x64
Node.Version: 10.x
SelfContainedLinux_Node8:
Test.RuntimeIdentifier: linux-x64
Node.Version: 8.x
SelfContainedLinux_Node10:
Test.RuntimeIdentifier: linux-x64
Node.Version: 10.x
SelfContainedMacOs_Node8:
Test.RuntimeIdentifier: osx-x64
Node.Version: 8.x
SelfContainedMacOs_Node10:
Test.RuntimeIdentifier: osx-x64
Node.Version: 10.x
steps:
- task: NodeTool@0
displayName: Install Node $(Node.Version)
inputs:
versionSpec: $(Node.Version)
- powershell: | - powershell: |
test/Cli.FunctionalTests/run-tests.ps1 -ci -ProdConManifestUrl $env:PRODCONMANIFESTURL -TestRuntimeIdentifier $(Test.RuntimeIdentifier) -AdditionalRestoreSources $env:ADDITIONALRESTORESOURCES test/Cli.FunctionalTests/run-tests.ps1 -ci -ProdConManifestUrl $env:PRODCONMANIFESTURL -TestRuntimeIdentifier $(Test.RuntimeIdentifier) -AdditionalRestoreSources $env:ADDITIONALRESTORESOURCES
condition: ne(variables['PB_SkipTests'], 'true') condition: ne(variables['PB_SkipTests'], 'true')