aboutsummaryrefslogtreecommitdiff
path: root/ci/azure-test-stable.yml
blob: e543eeeb438f49829283dff0a0a808b687ac80c2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
parameters:
  cmd: test
  rust_version: stable
  features: []

jobs:
- job: ${{ parameters.name }}
  displayName: ${{ parameters.displayName }}
  strategy:
    matrix:
      Linux:
        vmImage: ubuntu-16.04

      ${{ if parameters.cross }}:
        MacOS:
          vmImage: macOS-10.13
        Windows:
          vmImage: vs2017-win2016
  pool:
    vmImage: $(vmImage)

  steps:
  - template: azure-install-rust.yml
    parameters:
      rust_version: ${{parameters.rust_version}}

  # Run with default crate features
  - script: cargo ${{ parameters.cmd }}
    displayName: cargo ${{ parameters.cmd }}

  # Run with each specified feature
  - ${{ each feature in parameters.features }}:
    - script: cargo ${{ parameters.cmd }} --features ${{ feature }}
      displayName: cargo ${{ parameters.cmd }} --features ${{ feature }}

  - ${{ if eq(parameters.cmd, 'test') }}:
    - script: cargo doc --no-deps
      displayName: cargo doc --no-deps

  - ${{ if parameters.benches }}:
    - script: cargo check --benches
      displayName: Check benchmarks

  # Run with all features
  - script: cargo ${{ parameters.cmd }} --all-features
    displayName: cargo ${{ parameters.cmd }} --all-features

  # Run with no default features
  - script: cargo check --no-default-features
    displayName: cargo check --no-default-features