@@ -4,50 +4,75 @@ name: Continuous integration
4
4
5
5
jobs :
6
6
check :
7
- name : Check
7
+ name : Check features
8
8
runs-on : ubuntu-latest
9
9
steps :
10
10
- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
11
11
with :
12
12
persist-credentials : false
13
- - name : Rustup
14
- run : |
15
- rustup install --profile minimal stable
16
- rustup override set stable
13
+ - uses : dtolnay/rust-toolchain@38b70195107dddab2c7bbd522bcf763bac00963b # stable
17
14
- uses : Swatinem/rust-cache@f0deed1e0edfc6a9be95417288c0e1099b1eeec3 # v2.7.7
15
+ - uses : taiki-e/install-action@7ea888af71a31437ad4e71c62d021b3bb2728ea9 # v2.49.3
16
+ with :
17
+ tool : cargo-hack
18
+
19
+ # cosign, full, mock-client, registry will ONLY compile with a *-tls feature
20
+ - run : |
21
+ cargo hack check --each-feature --skip cosign --skip full --skip mock-client --skip registry
22
+
23
+ check-native-tls :
24
+ name : Check native-tls features
25
+ runs-on : ubuntu-latest
26
+ steps :
27
+ - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
28
+ with :
29
+ persist-credentials : false
30
+ - uses : dtolnay/rust-toolchain@38b70195107dddab2c7bbd522bcf763bac00963b # stable
31
+ - uses : Swatinem/rust-cache@f0deed1e0edfc6a9be95417288c0e1099b1eeec3 # v2.7.7
32
+ - uses : taiki-e/install-action@7ea888af71a31437ad4e71c62d021b3bb2728ea9 # v2.49.3
33
+ with :
34
+ tool : cargo-hack
35
+ - run : |
36
+ cargo hack check --feature-powerset --features native-tls --skip wasm --skip test-registry --skip rustls-tls --skip rustls-tls-native-roots
37
+
38
+ check-rustls-tls :
39
+ name : Check rusttls-tls features
40
+ runs-on : ubuntu-latest
41
+ steps :
42
+ - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
43
+ with :
44
+ persist-credentials : false
45
+ - uses : dtolnay/rust-toolchain@38b70195107dddab2c7bbd522bcf763bac00963b # stable
46
+ - uses : Swatinem/rust-cache@f0deed1e0edfc6a9be95417288c0e1099b1eeec3 # v2.7.7
47
+ - uses : taiki-e/install-action@7ea888af71a31437ad4e71c62d021b3bb2728ea9 # v2.49.3
48
+ with :
49
+ tool : cargo-hack
18
50
- run : |
19
- cargo check
51
+ cargo hack check --feature-powerset --features rustls-tls --skip wasm --skip test-registry --skip native-tls
20
52
21
- check-wasm :
22
- name : Check WASM
53
+ test-native-tls :
54
+ name : Test Suite
23
55
runs-on : ubuntu-latest
24
56
steps :
25
57
- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
26
58
with :
27
59
persist-credentials : false
28
- - name : Rustup
29
- run : |
30
- rustup install --profile minimal stable
31
- rustup override set stable
32
- rustup target add wasm32-unknown-unknown
60
+ - uses : dtolnay/rust-toolchain@38b70195107dddab2c7bbd522bcf763bac00963b # stable
33
61
- uses : Swatinem/rust-cache@f0deed1e0edfc6a9be95417288c0e1099b1eeec3 # v2.7.7
34
62
- run : |
35
- cargo check --no-default-features --features wasm
63
+ cargo test --workspace -- no-default-features --features full,native-tls,test-registry
36
64
37
- test :
65
+ test-rustls-tls :
38
66
name : Test Suite
39
67
runs-on : ubuntu-latest
40
68
steps :
41
69
- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
42
70
with :
43
71
persist-credentials : false
44
- - name : Rustup
45
- run : |
46
- rustup install --profile minimal stable
47
- rustup override set stable
72
+ - uses : dtolnay/rust-toolchain@38b70195107dddab2c7bbd522bcf763bac00963b # stable
48
73
- uses : Swatinem/rust-cache@f0deed1e0edfc6a9be95417288c0e1099b1eeec3 # v2.7.7
49
74
- run : |
50
- cargo test --workspace --features full-native -tls,test-registry
75
+ cargo test --workspace --no-default- features --features full,rustls -tls,test-registry
51
76
52
77
doc :
53
78
name : Build Documentation
@@ -56,26 +81,36 @@ jobs:
56
81
- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
57
82
with :
58
83
persist-credentials : false
59
- - name : Rustup (nightly)
60
- run : |
61
- rustup install --profile minimal nightly
62
- rustup override set nightly
84
+ - uses : dtolnay/rust-toolchain@4f94fbe7e03939b0e674bcc9ca609a16088f63ff # nightly
63
85
- uses : Swatinem/rust-cache@f0deed1e0edfc6a9be95417288c0e1099b1eeec3 # v2.7.7
64
86
- run : |
65
87
make doc
66
88
89
+ toml :
90
+ name : Toml format
91
+ runs-on : ubuntu-latest
92
+ steps :
93
+ - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
94
+ with :
95
+ persist-credentials : false
96
+ - uses : Swatinem/rust-cache@f0deed1e0edfc6a9be95417288c0e1099b1eeec3 # v2.7.7
97
+ - uses : dtolnay/rust-toolchain@38b70195107dddab2c7bbd522bcf763bac00963b # stable
98
+ - uses : taiki-e/install-action@7ea888af71a31437ad4e71c62d021b3bb2728ea9 # v2.49.3
99
+ with :
100
+ tool : taplo-cli
101
+ - run : |
102
+ taplo fmt --check
103
+
67
104
fmt :
68
105
name : Rustfmt
69
106
runs-on : ubuntu-latest
70
107
steps :
71
108
- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
72
109
with :
73
110
persist-credentials : false
74
- - name : Rustup
75
- run : |
76
- rustup install --profile minimal stable
77
- rustup override set stable
78
- rustup component add rustfmt
111
+ - uses : dtolnay/rust-toolchain@38b70195107dddab2c7bbd522bcf763bac00963b # stable
112
+ with :
113
+ components : rustfmt
79
114
- uses : Swatinem/rust-cache@f0deed1e0edfc6a9be95417288c0e1099b1eeec3 # v2.7.7
80
115
- run : |
81
116
cargo fmt --all -- --check
@@ -87,11 +122,9 @@ jobs:
87
122
- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
88
123
with :
89
124
persist-credentials : false
90
- - name : Rustup
91
- run : |
92
- rustup install --profile minimal stable
93
- rustup override set stable
94
- rustup component add clippy
125
+ - uses : dtolnay/rust-toolchain@38b70195107dddab2c7bbd522bcf763bac00963b # stable
126
+ with :
127
+ components : clippy
95
128
- uses : Swatinem/rust-cache@f0deed1e0edfc6a9be95417288c0e1099b1eeec3 # v2.7.7
96
129
- run : |
97
130
cargo clippy --workspace -- -D warnings
0 commit comments