Skip to content

Commit

Permalink
Add azure templates and add test matrix entries
Browse files Browse the repository at this point in the history
  • Loading branch information
Perseus101 committed Sep 9, 2019
1 parent 532a5b6 commit 3f0d100
Show file tree
Hide file tree
Showing 3 changed files with 80 additions and 24 deletions.
52 changes: 28 additions & 24 deletions azure-pipelines.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,36 +2,40 @@ strategy:
matrix:
windows-nightly:
imageName: 'vs2017-win2016'
rustup_toolchain: nightly
rust: nightly
features: '--all'
mac-nightly:
imageName: 'macos-10.13'
rustup_toolchain: nightly
linux-stable:
imageName: 'ubuntu-16.04'
rustup_toolchain: stable
linux-beta:
imageName: 'ubuntu-16.04'
rustup_toolchain: beta
rust: nightly
features: '--all'
# linux-stable:
# imageName: 'ubuntu-16.04'
# rust: stable
# features: '--no-default-features --features runtime,__internal_happy_eyeballs_tests'
# linux-stable-no-features:
# imageName: 'ubuntu-16.04'
# rust: stable
# features: '--no-default-features'
# linux-beta:
# imageName: 'ubuntu-16.04'
# rust: beta
# features: '--no-default-features --features runtime,__internal_happy_eyeballs_tests'
linux-nightly:
imageName: 'ubuntu-16.04'
rustup_toolchain: nightly
rust: nightly
features: '--no-default-features --features runtime,nightly'
# linux-minimum-supported-version:
# imageName: 'ubuntu-16.04'
# rust: stable
# features: '--no-default-features --features runtime'

pool:
vmImage: $(imageName)

steps:
- script: |
curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain $RUSTUP_TOOLCHAIN
echo "##vso[task.setvariable variable=PATH;]$PATH:$HOME/.cargo/bin"
displayName: Install rust
condition: ne( variables['Agent.OS'], 'Windows_NT' )
- script: |
curl -sSf -o rustup-init.exe https://win.rustup.rs
rustup-init.exe -y --default-toolchain %RUSTUP_TOOLCHAIN%
echo "##vso[task.setvariable variable=PATH;]%PATH%;%USERPROFILE%\.cargo\bin"
displayName: Windows install rust
condition: eq( variables['Agent.OS'], 'Windows_NT' )
- script: cargo build --all
displayName: Cargo build
- script: cargo test --all
displayName: Cargo test
- template: ci/azure-install-rust.yml
parameters:
rust_version: $(rust)
- template: ci/azure-test.yml
parameters:
features: $(features)
33 changes: 33 additions & 0 deletions ci/azure-install-rust.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
steps:
# Linux and macOS.
- script: |
set -e
curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain none
export PATH=$PATH:$HOME/.cargo/bin
rustup toolchain install $RUSTUP_TOOLCHAIN
rustup default $RUSTUP_TOOLCHAIN
echo "##vso[task.setvariable variable=PATH;]$PATH:$HOME/.cargo/bin"
env:
RUSTUP_TOOLCHAIN: ${{parameters.rust_version}}
displayName: "Install rust (*nix)"
condition: ne( variables['Agent.OS'], 'Windows_NT' )
# Windows.
- script: |
curl -sSf -o rustup-init.exe https://win.rustup.rs
rustup-init.exe -y --default-toolchain none
set PATH=%PATH%;%USERPROFILE%\.cargo\bin
rustup toolchain install %RUSTUP_TOOLCHAIN%
rustup default %RUSTUP_TOOLCHAIN%
echo "##vso[task.setvariable variable=PATH;]%PATH%;%USERPROFILE%\.cargo\bin"
env:
RUSTUP_TOOLCHAIN: ${{parameters.rust_version}}
displayName: "Install rust (Windows)"
condition: eq( variables['Agent.OS'], 'Windows_NT' )
# All platforms.
- script: |
rustup toolchain list
rustc -Vv
cargo -V
displayName: Query rust and cargo versions
19 changes: 19 additions & 0 deletions ci/azure-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
steps:
# Linux and macOS.
- script: |
set -e
cargo build $FEATURES
cargo test $FEATURES
env:
FEATURES: ${{parameters.features}}
displayName: "Build & Test (*nix)"
condition: ne( variables['Agent.OS'], 'Windows_NT' )
# Windows.
- script: |
cargo build %FEATURES%
cargo test %FEATURES%
env:
FEATURES: ${{parameters.features}}
displayName: "Build & Test (Windows)"
condition: eq( variables['Agent.OS'], 'Windows_NT' )

0 comments on commit 3f0d100

Please sign in to comment.