Skip to content

Commit 311ae90

Browse files
committed
chore(ci): setup cmd tests
1 parent d3b660c commit 311ae90

File tree

15 files changed

+744
-145
lines changed

15 files changed

+744
-145
lines changed

.cargo/config.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
[alias]
2-
bin = ["run", "--quiet", "--release", "--package", "cargo-bin", "--"]
2+
bin = ["run", "--quiet", "--package", "cargo-bin", "--"]

.github/workflows/ci.yml

Lines changed: 28 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
# TODO: still need cross platform E2E testing
2-
31
name: CI
42

53
on:
@@ -15,7 +13,9 @@ on:
1513
- cron: "27 0 * * *" # nightly test for RA
1614

1715
env:
18-
CARGO_TERM_COLOR: always
16+
CARGO_TERM_COLOR: "always"
17+
RUST_LOG: "info"
18+
RUST_BACKTRACE: "1"
1919

2020
concurrency:
2121
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event_name }}
@@ -25,11 +25,16 @@ jobs:
2525
test:
2626
name: Test
2727

28-
runs-on: ubuntu-latest
2928
strategy:
3029
matrix:
3130
toolchain:
3231
- stable
32+
platform:
33+
- ubuntu-latest
34+
- windows-latest
35+
fail-fast: false
36+
37+
runs-on: ${{ matrix.platform }}
3338

3439
permissions:
3540
contents: read
@@ -44,6 +49,8 @@ jobs:
4449
with:
4550
toolchain: ${{ matrix.toolchain }}
4651

52+
- uses: cargo-bins/cargo-binstall@b9bf4400702f721d469eec4d280125f650c85638
53+
4754
- name: Get cache key
4855
run: |
4956
CARGO_VERSION=$(cargo --version)
@@ -56,6 +63,7 @@ jobs:
5663
echo "EOF"
5764
} >> "$GITHUB_OUTPUT"
5865
id: cache-key
66+
shell: bash
5967

6068
- uses: actions/cache/restore@v4
6169
with:
@@ -65,12 +73,12 @@ jobs:
6573
restore-keys: ${{ steps.cache-key.outputs.CACHE_KEY_RESTORE }}
6674
id: cache-restore
6775

68-
- name: Prepare rust-analyzer
69-
run: cargo run --package util-rust-analyzer -- download
76+
- name: Prepare binaries
77+
run: |
78+
cargo bin --install
79+
cargo run --package util-rust-analyzer -- download
7080
71-
- run: cargo test --release --all-features
72-
env:
73-
RUST_LOG: info
81+
- run: cargo test --all-features --no-fail-fast -- --include-ignored
7482

7583
- name: Evict cache
7684
run: gh cache delete '${{ steps.cache-key.outputs.CACHE_KEY }}'
@@ -91,8 +99,7 @@ jobs:
9199
CACHE_KEY_RESTORE: ${{ steps.cache-key.outputs.CACHE_KEY_RESTORE }}
92100

93101
build_features:
94-
name: Build
95-
runs-on: ubuntu-latest
102+
name: Build features
96103

97104
needs:
98105
- test
@@ -106,6 +113,9 @@ jobs:
106113
- link-forever
107114
- lib-link-forever,common-logger
108115
- lib-link-forever
116+
fail-fast: false
117+
118+
runs-on: ubuntu-latest
109119

110120
steps:
111121
- uses: actions/checkout@v4
@@ -123,11 +133,10 @@ jobs:
123133
key: ${{ needs.test.outputs.CACHE_KEY }}
124134
restore-keys: ${{ needs.test.outputs.CACHE_KEY_RESTORE }}
125135

126-
- run: cargo build --release --features ${{ matrix.features }}
136+
- run: cargo build --features ${{ matrix.features }}
127137

128138
test_rustdoc_link_ra:
129-
name: rustdoc-link RA
130-
runs-on: ubuntu-latest
139+
name: (rustdoc-link) Test RA
131140

132141
needs:
133142
- test
@@ -138,6 +147,9 @@ jobs:
138147
- "2025-03-17"
139148
- "2025-03-04"
140149
- "nightly"
150+
fail-fast: false
151+
152+
runs-on: ubuntu-latest
141153

142154
steps:
143155
- uses: actions/checkout@v4
@@ -155,10 +167,8 @@ jobs:
155167
key: ${{ needs.test.outputs.CACHE_KEY }}
156168
restore-keys: ${{ needs.test.outputs.CACHE_KEY_RESTORE }}
157169

158-
- run: cargo run --package util-rust-analyzer -- download
170+
- run: cargo run --package util-rust-analyzer -- download
159171
env:
160172
RA_VERSION: ${{ matrix.ra-version }}
161173

162-
- run: cargo test --release --features rustdoc-link
163-
env:
164-
RUST_LOG: info
174+
- run: cargo test --features rustdoc-link

0 commit comments

Comments
 (0)