summaryrefslogtreecommitdiffstats
path: root/azure-pipelines.yml
blob: 1ad71db8ada953cfe72d808c63d2dbc83de0a884 (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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
trigger: ["master"]
pr: ["master"]

variables:
  nightly: nightly-2019-05-09

jobs:
# Check formatting
- template: ci/azure-rustfmt.yml
  parameters:
    name: rustfmt

# Test top level crate
- template: ci/azure-test-stable.yml
  parameters:
    name: test_tokio
    displayName: Test tokio
    cross: true
    crates:
      - tokio

# Test crates that are platform specific
- template: ci/azure-test-stable.yml
  parameters:
    name: test_sub_cross
    displayName: Test sub crates -
    cross: true
    crates:
      - tokio-fs
      - tokio-reactor
      - tokio-signal
      - tokio-tcp
      - tokio-tls
      - tokio-udp
      - tokio-uds

# Test crates that are NOT platform specific
- template: ci/azure-test-stable.yml
  parameters:
    name: test_linux
    displayName: Test sub crates -
    crates:
      - tokio-buf
      - tokio-codec
      - tokio-current-thread
      - tokio-executor
      - tokio-io
      - tokio-sync
      - tokio-threadpool
      - tokio-timer
      - tokio-test
      - tokio-trace
      - tokio-trace/tokio-trace-core
      - tokio-trace/test-log-support
      - tokio-trace/test_static_max_level_features

- template: ci/azure-cargo-check.yml
  parameters:
    name: features
    displayName: Check feature permtuations
    rust: stable
    crates:
      tokio:
        - codec
        - fs
        - io
        - reactor
        - rt-full
        - tcp
        - timer
        - udp
        - uds
        - sync
      tokio-buf:
        - util

# Run async-await tests
- template: ci/azure-test-nightly.yml
  parameters:
    name: test_nightly
    displayName: Test Async / Await
    rust: $(nightly)

# Try cross compiling
- template: ci/azure-cross-compile.yml
  parameters:
    name: cross_32bit_linux
    target: i686-unknown-linux-gnu

# This represents the minimum Rust version supported by
# Tokio. Updating this should be done in a dedicated PR and
# cannot be greater than two 0.x releases prior to the
# current stable.
#
# Tests are not run as tests may require newer versions of
# rust.
- template: ci/azure-check-minrust.yml
  parameters:
    name: minrust
    rust_version: 1.34.0

- template: ci/azure-tsan.yml
  parameters:
    name: tsan
    rust: $(nightly)

- template: ci/azure-deploy-docs.yml
  parameters:
    dependsOn:
      - rustfmt
      - test_tokio
      - test_sub_cross
      - test_linux
      - features
      - test_nightly
      - cross_32bit_linux
      - minrust
      - tsan