| steps: |
| - checkout: self |
| fetchDepth: 1 |
| |
| - template: azure-install-rust.yml |
| |
| - bash: rustup target add $OTHER_TARGET |
| displayName: "Install cross-compile target" |
| |
| - bash: sudo apt update -y && sudo apt install gcc-multilib -y |
| displayName: "Install gcc-multilib (linux)" |
| condition: and(succeeded(), eq(variables['Agent.OS'], 'Linux')) |
| |
| # Some tests rely on a clippy command to run, so let's try to install clippy to |
| # we can be sure to run those tests. |
| - bash: rustup component add clippy || echo "clippy not available" |
| displayName: "Install clippy (maybe)" |
| |
| # Some tests also rely on rustfmt |
| - bash: rustup component add rustfmt || echo "rustfmt not available" |
| displayName: "Install rustfmt (maybe)" |
| |
| # Deny warnings on CI to avoid warnings getting into the codebase, and note the |
| # `force-system-lib-on-osx` which is intended to fix compile issues on OSX where |
| # compiling curl from source on OSX yields linker errors on Azure. |
| # |
| # Note that the curl issue is traced back to alexcrichton/curl-rust#279 where it |
| # looks like the OSX version we're actually running on is such that a symbol is |
| # emitted that's never worked. For now force the system library to be used to |
| # fix the link errors. |
| - bash: cargo test --features 'deny-warnings curl/force-system-lib-on-osx' |
| displayName: "cargo test" |
| |
| - bash: cargo test -p cargo-test-support |
| displayName: "cargo test -p cargo-test-support" |
| |
| - bash: cargo test -p cargo-platform |
| displayName: "cargo test -p cargo-platform" |