forked from extern/nushell
64 lines
2.0 KiB
YAML
64 lines
2.0 KiB
YAML
trigger:
|
|
- main
|
|
|
|
strategy:
|
|
matrix:
|
|
linux-stable:
|
|
image: ubuntu-18.04
|
|
style: 'unflagged'
|
|
macos-stable:
|
|
image: macos-10.14
|
|
style: 'unflagged'
|
|
windows-stable:
|
|
image: windows-2019
|
|
style: 'unflagged'
|
|
linux-nightly-canary:
|
|
image: ubuntu-18.04
|
|
style: 'canary'
|
|
macos-nightly-canary:
|
|
image: macos-10.14
|
|
style: 'canary'
|
|
windows-nightly-canary:
|
|
image: windows-2019
|
|
style: 'canary'
|
|
fmt:
|
|
image: ubuntu-18.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
|
|
if [ "$(uname)" == "Darwin" ]; then
|
|
curl https://sh.rustup.rs -sSf | sh -s -- -y --no-modify-path --default-toolchain "stable"
|
|
echo "Installing clippy"
|
|
rustup component add clippy --toolchain stable-x86_64-apple-darwin
|
|
export PATH=$HOME/.cargo/bin:$PATH
|
|
fi
|
|
rustup update
|
|
rustc -Vv
|
|
echo "##vso[task.prependpath]$HOME/.cargo/bin"
|
|
rustup component add rustfmt
|
|
displayName: Install Rust
|
|
- bash: RUSTFLAGS="-D warnings" cargo test --all --features stable
|
|
condition: eq(variables['style'], 'unflagged')
|
|
displayName: Run tests
|
|
- bash: RUSTFLAGS="-D warnings" cargo clippy --all --features=stable -- -D clippy::result_unwrap_used -D clippy::option_unwrap_used
|
|
condition: eq(variables['style'], 'unflagged')
|
|
displayName: Check clippy lints
|
|
- bash: NUSHELL_ENABLE_ALL_FLAGS=1 RUSTFLAGS="-D warnings" cargo test --all --features stable
|
|
condition: eq(variables['style'], 'canary')
|
|
displayName: Run tests
|
|
- bash: NUSHELL_ENABLE_ALL_FLAGS=1 RUSTFLAGS="-D warnings" cargo clippy --all --features=stable -- -D clippy::result_unwrap_used -D clippy::option_unwrap_used
|
|
condition: eq(variables['style'], 'canary')
|
|
displayName: Check clippy lints
|
|
- bash: cargo fmt --all -- --check
|
|
condition: eq(variables['style'], 'fmt')
|
|
displayName: Lint
|