@@ -96,215 +96,6 @@ jobs:
9696 - name : Target size after job completion
9797 run : du -sh target | sort -k 2
9898
99- test_tier1 :
100- name : Test tier1
101- strategy :
102- matrix :
103- include :
104- - target : i686-unknown-linux-gnu
105- docker : true
106- os : ubuntu-24.04
107- - target : i686-unknown-linux-gnu
108- docker : true
109- os : ubuntu-24.04
110- artifact-tag : offset-bits64
111- env :
112- RUST_LIBC_UNSTABLE_GNU_FILE_OFFSET_BITS : 64
113- - target : i686-unknown-linux-gnu
114- docker : true
115- os : ubuntu-24.04
116- artifact-tag : time-bits64
117- env :
118- RUST_LIBC_UNSTABLE_GNU_TIME_BITS : 64
119- - target : x86_64-unknown-linux-gnu
120- docker : true
121- os : ubuntu-24.04
122- - target : aarch64-apple-darwin
123- os : macos-15
124- - target : x86_64-pc-windows-gnu
125- os : windows-2022
126- env :
127- ARCH_BITS : 64
128- ARCH : x86_64
129- - target : x86_64-pc-windows-msvc
130- os : windows-2022
131- # FIXME: It currently causes segfaults.
132- # - target: i686-pc-windows-gnu
133- # env:
134- # ARCH_BITS: 32
135- # ARCH: i686
136- - target : i686-pc-windows-msvc
137- os : windows-2022
138- runs-on : ${{ matrix.os }}
139- timeout-minutes : 25
140- env :
141- TARGET : ${{ matrix.target }}
142- steps :
143- - uses : actions/checkout@v4
144- - name : Setup Rust toolchain
145- run : ./ci/install-rust.sh
146- - uses : Swatinem/rust-cache@v2
147- with :
148- key : ${{ matrix.target }}
149-
150- - name : Add matrix env variables to the environment
151- if : matrix.env
152- run : |
153- echo '${{ toJson(matrix.env) }}' |
154- jq -r 'to_entries | map("\(.key)=\(.value|tostring)") | .[]' >>$GITHUB_ENV
155- shell : bash
156-
157- - name : Run natively
158- if : " !matrix.docker"
159- run : ./ci/run.sh ${{ matrix.target }}
160- - name : Run in Docker
161- if : " matrix.docker"
162- run : ./ci/run-docker.sh ${{ matrix.target }}
163-
164- - name : Create CI artifacts
165- id : create_artifacts
166- if : always()
167- run : ./ci/create-artifacts.py
168- - uses : actions/upload-artifact@v4
169- if : always() && steps.create_artifacts.outcome == 'success'
170- with :
171- name : ${{ env.ARCHIVE_NAME }}-${{ matrix.target }}${{ matrix.artifact-tag && format('-{0}', matrix.artifact-tag) }}
172- path : ${{ env.ARCHIVE_PATH }}
173- retention-days : 5
174-
175- test_tier2 :
176- name : Test tier2
177- needs : [test_tier1, style_check]
178- runs-on : ubuntu-24.04
179- strategy :
180- fail-fast : true
181- max-parallel : 12
182- matrix :
183- target :
184- # FIXME(sparc): this takes much longer to run than any other job, put
185- # it first to make sure it gets a head start.
186- - sparc64-unknown-linux-gnu
187- - aarch64-linux-android
188- - aarch64-unknown-linux-gnu
189- - aarch64-unknown-linux-musl
190- - arm-linux-androideabi
191- - arm-unknown-linux-musleabihf
192- # FIXME(#4297): Disabled due to spurious failueSome android jobs are disabled because of high rates of
193- # - i686-linux-android
194- - i686-unknown-linux-musl
195- - loongarch64-unknown-linux-gnu
196- - loongarch64-unknown-linux-musl
197- - powerpc64-unknown-linux-gnu
198- - powerpc64le-unknown-linux-gnu
199- - powerpc64le-unknown-linux-musl
200- - riscv64gc-unknown-linux-gnu
201- - s390x-unknown-linux-gnu
202- - wasm32-unknown-emscripten
203- - wasm32-wasip1
204- - wasm32-wasip2
205- - x86_64-linux-android
206- # FIXME: Exec format error (os error 8)
207- # - x86_64-unknown-linux-gnux32
208- - x86_64-unknown-linux-musl
209- # FIXME: It seems some items in `src/unix/mod.rs`
210- # aren't defined on redox actually.
211- # - x86_64-unknown-redox
212- include :
213- - target : arm-unknown-linux-gnueabihf
214- - target : arm-unknown-linux-gnueabihf
215- env :
216- RUST_LIBC_UNSTABLE_GNU_FILE_OFFSET_BITS : 64
217- artifact-tag : offset-bits64
218- - target : arm-unknown-linux-gnueabihf
219- env :
220- RUST_LIBC_UNSTABLE_GNU_TIME_BITS : 64
221- artifact-tag : time-bits64
222- - target : aarch64-unknown-linux-musl
223- env :
224- RUST_LIBC_UNSTABLE_MUSL_V1_2_3 : 1
225- - target : arm-unknown-linux-musleabihf
226- env :
227- RUST_LIBC_UNSTABLE_MUSL_V1_2_3 : 1
228- - target : i686-unknown-linux-musl
229- env :
230- RUST_LIBC_UNSTABLE_MUSL_V1_2_3 : 1
231- - target : loongarch64-unknown-linux-musl
232- env :
233- RUST_LIBC_UNSTABLE_MUSL_V1_2_3 : 1
234- - target : powerpc64le-unknown-linux-musl
235- env :
236- RUST_LIBC_UNSTABLE_MUSL_V1_2_3 : 1
237- # FIXME(ppc): SIGILL running tests, see
238- # https://github.com/rust-lang/libc/pull/4254#issuecomment-2636288713
239- # - target: powerpc-unknown-linux-gnu
240- # - target: powerpc-unknown-linux-gnu
241- # env:
242- # RUST_LIBC_UNSTABLE_GNU_FILE_OFFSET_BITS: 64
243- # artifact-tag: offset-bits64
244- # - target: powerpc-unknown-linux-gnu
245- # env:
246- # RUST_LIBC_UNSTABLE_GNU_TIME_BITS: 64
247- # artifact-tag: time-bits64
248- timeout-minutes : 25
249- env :
250- TARGET : ${{ matrix.target }}
251- steps :
252- - uses : actions/checkout@v4
253- - name : Setup Rust toolchain
254- run : ./ci/install-rust.sh
255- - uses : Swatinem/rust-cache@v2
256- with :
257- key : ${{ matrix.target }}
258-
259- - name : Add matrix env variables to the environment
260- if : matrix.env
261- run : |
262- echo '${{ toJson(matrix.env) }}' |
263- jq -r 'to_entries | map("\(.key)=\(.value|tostring)") | .[]' >>$GITHUB_ENV
264- shell : bash
265-
266- - name : Execute run-docker.sh
267- run : ./ci/run-docker.sh ${{ matrix.target }}
268-
269- - name : Create CI artifacts
270- id : create_artifacts
271- if : always()
272- run : ./ci/create-artifacts.py
273- - uses : actions/upload-artifact@v4
274- if : always() && steps.create_artifacts.outcome == 'success'
275- with :
276- name : ${{ env.ARCHIVE_NAME }}-${{ matrix.target }}${{ matrix.artifact-tag && format('-{0}', matrix.artifact-tag) }}
277- path : ${{ env.ARCHIVE_PATH }}
278- retention-days : 5
279-
280- test_tier2_vm :
281- name : Test tier2 VM
282- needs : [test_tier1, style_check]
283- runs-on : ubuntu-latest
284- strategy :
285- fail-fast : true
286- matrix :
287- target :
288- - x86_64-pc-solaris
289- timeout-minutes : 25
290- steps :
291- - uses : actions/checkout@v4
292- - name : test on Solaris
293- 294- with :
295- release : " 11.4-gcc"
296- usesh : true
297- mem : 4096
298- copyback : false
299- prepare : |
300- set -x
301- source <(curl -s https://raw.githubusercontent.com/psumbera/solaris-rust/refs/heads/main/sh.rust-web-install)
302- rustc --version
303- uname -a
304- run : |
305- export PATH=$HOME/.rust_solaris/bin:$PATH
306- ./ci/run.sh ${{ matrix.target }}
307-
30899 ctest_msrv :
309100 name : Check MSRV
310101 runs-on : ubuntu-24.04
0 commit comments