trigger: - master strategy: matrix: linux-stable: image: ubuntu-16.04 style: 'unflagged' macos-stable: image: macos-10.14 style: 'unflagged' windows-stable: image: vs2017-win2016 style: 'unflagged' linux-nightly-canary: image: ubuntu-16.04 style: 'canary' macos-nightly-canary: image: macos-10.14 style: 'canary' windows-nightly-canary: image: vs2017-win2016 style: 'canary' fmt: image: ubuntu-16.04 style: 'fmt' pool: vmImage: $(image) steps: - bash: | set -e if [ -e /etc/debian_version ] then sudo apt-get -y install libxcb-composite0-dev libx11-dev fi curl https://sh.rustup.rs -sSf | sh -s -- -y --no-modify-path --default-toolchain "stable" export PATH=$HOME/.cargo/bin:$PATH rustup update rustc -Vv echo "##vso[task.prependpath]$HOME/.cargo/bin" rustup component add rustfmt --toolchain "stable" displayName: Install Rust - bash: RUSTFLAGS="-D warnings" cargo test --all-features condition: eq(variables['style'], 'unflagged') displayName: Run tests - bash: NUSHELL_ENABLE_ALL_FLAGS=1 RUSTFLAGS="-D warnings" cargo test --all-features condition: eq(variables['style'], 'canary') displayName: Run tests - bash: cargo fmt --all -- --check condition: eq(variables['style'], 'fmt') displayName: Lint