Skip to content
This repository was archived by the owner on Dec 29, 2022. It is now read-only.

Commit 28f64f8

Browse files
committed
Extract formatting check and tests to template-based jobs
1 parent f8580dc commit 28f64f8

File tree

3 files changed

+76
-37
lines changed

3 files changed

+76
-37
lines changed

azure-pipelines.yml

Lines changed: 29 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,36 @@
1-
trigger:
2-
- master
3-
pr:
4-
- master
5-
6-
strategy:
7-
matrix:
8-
linux:
9-
imageName: 'ubuntu-16.04'
10-
mac:
11-
imageName: 'macos-10.14'
12-
windows:
13-
imageName: 'vs2017-win2016'
14-
15-
pool:
16-
vmImage: $(imageName)
1+
trigger: ["master"]
2+
pr: ["master"]
173

184
variables:
195
CARGO_INCREMENTAL: 0
206
RUST_BACKTRACE: 1
217
RLS_TEST_WAIT_FOR_AGES: 1
228

23-
steps:
24-
- template: ci/azure-install-rust.yml
9+
jobs:
10+
# Check formatting
11+
- template: ci/azure-rustfmt.yml
12+
parameters:
13+
rust: nightly-2019-08-01 # Use last well-known available nightly
14+
name: rustfmt
15+
crates:
16+
rls-analysis: []
17+
rls-data: []
18+
rls-rustc: []
19+
rls-span: []
20+
rls-vfs: []
21+
".": []
22+
23+
# Run unit and integration tests
24+
- template: ci/azure-test.yml
2525
parameters:
26-
rust_version: nightly
27-
- script: rustup component add rustfmt
28-
displayName: 'Add Rustfmt to enforce consistent formatting'
29-
- script: rustup component add rust-src rust-analysis
30-
displayName: 'Install distributed Rust source code for Racer autocompletion'
31-
- script: (cd rls-analysis && cargo test -v && cargo fmt -- --check)
32-
displayName: Test rls-analysis
33-
- script: (cd rls-data && cargo test -v && cargo fmt -- --check)
34-
displayName: Test rls-data
35-
- script: (cd rls-rustc && cargo test -v && cargo fmt -- --check)
36-
displayName: Test rls-rustc
37-
- script: (cd rls-span && cargo test -v && cargo fmt -- --check)
38-
displayName: Test rls-span
39-
- script: (cd rls-vfs && cargo test -v && cargo fmt -- --check)
40-
displayName: Test rls-vfs
41-
- script: cargo fmt -- --check
42-
- script: cargo build -v
43-
- script: cargo test -v
44-
- script: cargo test test_tooltip_std -- --ignored
26+
rust: nightly
27+
name: tests
28+
crates:
29+
rls-analysis: []
30+
rls-data: []
31+
rls-rustc: []
32+
rls-span: []
33+
rls-vfs: []
34+
".":
35+
- test_name: test_tooltip_std
36+
args: --ignored

ci/azure-rustfmt.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
jobs:
2+
# Check formatting
3+
- job: ${{ parameters.name }}
4+
displayName: Check formatting
5+
pool:
6+
vmImage: ubuntu-16.04
7+
steps:
8+
- template: azure-install-rust.yml
9+
parameters:
10+
rust_version: ${{ parameters.rust }}
11+
- script: |
12+
rustup component add rustfmt
13+
cargo fmt --version
14+
displayName: Install rustfmt
15+
- ${{ each crate in parameters.crates }}:
16+
- script: cargo fmt --all -- --check
17+
displayName: Check formatting - ${{ crate.key }}
18+
workingDirectory: $(Build.SourcesDirectory)/${{ crate.key }}

ci/azure-test.yml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
jobs:
2+
# Check formatting
3+
- job: ${{ parameters.name }}
4+
displayName: Run tests on
5+
strategy:
6+
matrix:
7+
linux:
8+
imageName: 'ubuntu-16.04'
9+
mac:
10+
imageName: 'macos-10.14'
11+
windows:
12+
imageName: 'vs2017-win2016'
13+
pool:
14+
vmImage: $(imageName)
15+
steps:
16+
- template: azure-install-rust.yml
17+
parameters:
18+
rust_version: ${{ parameters.rust }}
19+
- script: |
20+
rustup component add rust-src rust-analysis
21+
displayName: Install distributed Rust source code for Racer autocompletion
22+
- ${{ each crate in parameters.crates }}:
23+
- script: cargo test -v
24+
displayName: Run tests - ${{ crate.key }}
25+
workingDirectory: $(Build.SourcesDirectory)/${{ crate.key }}
26+
- ${{ each extra in crate.value }}:
27+
- script: cargo test -v ${{ extra.test_name }} -- ${{ extra.args }}
28+
displayName: Run tests - ${{ crate.key }} - ${{ extra.test_name }}
29+
workingDirectory: $(Build.SourcesDirectory)/${{ crate.key }}

0 commit comments

Comments
 (0)