2222 runs-on : ubuntu-latest
2323 steps :
2424 - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
25- - uses : actions-rust-lang/setup-rust-toolchain@1780873c7b576612439a134613cc4cc74ce5538c # v1
26- - uses : Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5 # v2
27- with :
28- shared-key : ${{ hashFiles('**/Cargo.lock') }}
25+ - name : setup rust
26+ uses : actions-rust-lang/setup-rust-toolchain@1780873c7b576612439a134613cc4cc74ce5538c # v1
2927 - name : test all
3028 run : cargo test_all
3129 timeout-minutes : 5
3735 runs-on : ubuntu-latest
3836 steps :
3937 - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
40- - uses : actions-rust-lang/setup-rust-toolchain@1780873c7b576612439a134613cc4cc74ce5538c # v1
41- - uses : Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5 # v2
42- with :
43- shared-key : ${{ hashFiles('**/Cargo.lock') }}
38+ - name : setup rust
39+ uses : actions-rust-lang/setup-rust-toolchain@1780873c7b576612439a134613cc4cc74ce5538c # v1
4440 - name : test e2e
4541 run : cargo test_e2e
4642 timeout-minutes : 60
6965 runs-on : ubuntu-latest
7066 steps :
7167 - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
72- - uses : actions-rust-lang/setup-rust-toolchain@1780873c7b576612439a134613cc4cc74ce5538c # v1
73- - uses : Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5 # v2
74- with :
75- shared-key : ${{ hashFiles('**/Cargo.lock') }}
68+ - name : setup rust
69+ uses : actions-rust-lang/setup-rust-toolchain@1780873c7b576612439a134613cc4cc74ce5538c # v1
7670 - name : build
7771 run : cargo build --release
7872
@@ -81,15 +75,10 @@ jobs:
8175 runs-on : ubuntu-latest
8276 steps :
8377 - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
84- - uses : Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5 # v2
85- with :
86- shared-key : ${{ hashFiles('**/Cargo.lock') }}
87- - uses : actions-rust-lang/setup-rust-toolchain@1780873c7b576612439a134613cc4cc74ce5538c # v1
78+ - name : setup rust
79+ uses : actions-rust-lang/setup-rust-toolchain@1780873c7b576612439a134613cc4cc74ce5538c # v1
8880 with :
8981 components : rustfmt
90- - uses : Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5 # v2
91- with :
92- shared-key : ${{ hashFiles('**/Cargo.lock') }}
9382 - name : cargo fmt
9483 uses : actions-rust-lang/rustfmt@4066006ec54a31931b9b1fddfd38f2fdf2d27143 # v1
9584
@@ -98,12 +87,10 @@ jobs:
9887 runs-on : ubuntu-latest
9988 steps :
10089 - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
101- - uses : actions-rust-lang/setup-rust-toolchain@1780873c7b576612439a134613cc4cc74ce5538c # v1
90+ - name : setup rust
91+ uses : actions-rust-lang/setup-rust-toolchain@1780873c7b576612439a134613cc4cc74ce5538c # v1
10292 with :
10393 components : clippy
104- - uses : Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5 # v2
105- with :
106- shared-key : ${{ hashFiles('**/Cargo.lock') }}
10794 - name : cargo clippy
10895 run : cargo clippy --all
10996
@@ -121,10 +108,8 @@ jobs:
121108 runs-on : ubuntu-latest
122109 steps :
123110 - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
124- - uses : actions-rust-lang/setup-rust-toolchain@1780873c7b576612439a134613cc4cc74ce5538c # v1
125- - uses : Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5 # v2
126- with :
127- shared-key : ${{ hashFiles('**/Cargo.lock') }}
111+ - name : setup rust
112+ uses : actions-rust-lang/setup-rust-toolchain@1780873c7b576612439a134613cc4cc74ce5538c # v1
128113 - if : matrix.name == 'executor'
129114 name : Build subgraphs
130115 run : cargo build --release -p subgraphs
@@ -169,10 +154,8 @@ jobs:
169154 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
170155 steps :
171156 - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
172- - uses : actions-rust-lang/setup-rust-toolchain@1780873c7b576612439a134613cc4cc74ce5538c # v1
173- - uses : Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5 # v2
174- with :
175- shared-key : ${{ hashFiles('**/Cargo.lock') }}
157+ - name : setup rust
158+ uses : actions-rust-lang/setup-rust-toolchain@1780873c7b576612439a134613cc4cc74ce5538c # v1
176159 - name : Setup K6
177160 run : |
178161 wget https://github.com/grafana/k6/releases/download/v0.37.0/k6-v0.37.0-linux-amd64.deb
@@ -191,14 +174,9 @@ jobs:
191174 sleep 5
192175 env :
193176 ROUTER_CONFIG_FILE_PATH : ${{matrix.config}}
194- # run only on main
195- - name : Run k6 benchmark for Pull Request
196- if : github.event_name == 'push'
197- run : k6 run bench/k6.js
198- # run only on PR
199- - name : Run k6 benchmark for Pull Request
177+ - name : Run k6 benchmark for ${{ github.ref }}
200178 if : github.event_name == 'pull_request'
201- run : k6 run -e SUMMARY_PATH=./bench/results/pr -e NO_GITHUB_COMMENT=true bench/k6.js
179+ run : k6 run -e SUMMARY_PATH=./bench/results/pr bench/k6.js
202180 - name : Checkout main branch in a separate directory
203181 if : github.event_name == 'pull_request'
204182 uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
@@ -219,7 +197,7 @@ jobs:
219197 ROUTER_CONFIG_FILE_PATH : ${{matrix.config}}
220198 - name : Run k6 benchmark for main
221199 if : github.event_name == 'pull_request'
222- run : k6 run -e SUMMARY_PATH=./bench/results/main -e NO_GITHUB_COMMENT=true bench/k6.js
200+ run : k6 run -e SUMMARY_PATH=./bench/results/main bench/k6.js
223201 - name : Compare benchmark results
224202 if : github.event_name == 'pull_request'
225203 run : |
@@ -231,15 +209,14 @@ jobs:
231209 runs-on : ubuntu-latest
232210 steps :
233211 - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
234- - uses : actions-rust-lang/setup-rust-toolchain@1780873c7b576612439a134613cc4cc74ce5538c # v1
235- - uses : Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5 # v2
236- with :
237- shared-key : ${{ hashFiles('**/Cargo.lock') }}
212+ - name : setup rust
213+ uses : actions-rust-lang/setup-rust-toolchain@1780873c7b576612439a134613cc4cc74ce5538c # v1
238214 - name : setup node
239215 uses : the-guild-org/shared-config/setup@v1
240216 with :
241217 node-version-file : .node-version
242- - run : npm run ci:test:graphql-over-http
218+ - name : Run Audits
219+ run : npm run ci:test:graphql-over-http
243220 working-directory : audits
244221 - name : Publish Test Results for comparison
245222 uses : EnricoMi/publish-unit-test-result-action@27d65e188ec43221b20d26de30f4892fad91df2f # v2
@@ -250,42 +227,22 @@ jobs:
250227 comment_mode : off
251228 files : |
252229 audits/reports/*.xml
253- - name : Publish Test Results for details
254- uses : mikepenz/action-junit-report@74626db7353a25a20a72816467ebf035f674c5f8 # v6
255- if : (!cancelled())
256- with :
257- report_paths : " audits/reports/*.xml"
258- group_reports : false
259- job_name : test / graphql-over-http
260- check_name : test / graphql-over-http
261- annotate_only : true
262- fail_on_failure : true
263- fail_on_parse_error : true
264- job_summary : true
265- verbose_summary : false
266- skip_success_summary : true
267- include_empty_in_summary : false
268- include_time_in_summary : true
269- simplified_summary : true
270- group_suite : true
271- comment : false
272- exclude_sources : /lib/,/audits/node_modules/
273230
274231 federation-audit :
275232 name : test / federation-audit
276233 runs-on : ubuntu-latest
277234 steps :
278235 - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
279- - uses : actions-rust-lang/setup-rust-toolchain@1780873c7b576612439a134613cc4cc74ce5538c # v1
280- - uses : Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5 # v2
281- with :
282- shared-key : ${{ hashFiles('**/Cargo.lock') }}
283- - run : cargo build --package hive-router
236+ - name : setup rust
237+ uses : actions-rust-lang/setup-rust-toolchain@1780873c7b576612439a134613cc4cc74ce5538c # v1
284238 - name : setup node
285239 uses : the-guild-org/shared-config/setup@v1
286240 with :
287241 node-version-file : .node-version
288- - run : npm run test:federation-all
242+ - name : Run Audits
243+ run : npm run test:federation-all
244+ env :
245+ GATEWAY_TIMEOUT : 1_800_000 # 30 minutes, to prevent CI timeout for long-running tests
289246 working-directory : audits
290247 continue-on-error : true # continue even if the test fails
291248 - name : Upload logs
@@ -305,24 +262,3 @@ jobs:
305262 comment_mode : off
306263 files : |
307264 audits/reports/*.xml
308- - name : Publish Test Results for details
309- uses : mikepenz/action-junit-report@74626db7353a25a20a72816467ebf035f674c5f8 # v6
310- if : (!cancelled())
311- with :
312- report_paths : " audits/reports/*.xml"
313- group_reports : false
314- job_name : test / federation-audit
315- check_name : test / federation-audit
316- check_title_template : " {{FILE_NAME}}"
317- fail_on_failure : true
318- fail_on_parse_error : true
319- annotate_only : true
320- job_summary : true
321- verbose_summary : false
322- skip_success_summary : true
323- include_empty_in_summary : false
324- include_time_in_summary : true
325- simplified_summary : true
326- group_suite : true
327- comment : false
328- exclude_sources : /lib/,/audits/node_modules/
0 commit comments