Skip to content

Commit 5dcdffa

Browse files
committed
Merge #317: Add cross testing on rust tier 1 and tier 2 with host tools
801c378 disable illumos and netbsd (Riccardo Casatta) a426456 [CI] add cache (Riccardo Casatta) f1bdee2 add cross testing on rust tier 1 and tier 2 with host tools (Riccardo Casatta) Pull request description: After working on rust-bitcoin/rust-bitcoin#627 I thought it may be simple and useful to use [cross](https://github.com/rust-embedded/cross) environment to test across different architectures and started here. So I took all rust tier1 and tier2 with Host tools archictectures and added to the test matrix, run here https://github.com/RCasatta/rust-secp256k1/actions/runs/985791240. Errors on darwin are due to the environment because it works fine on physical machine, however errors on illumos and netbsd maybe are useful to know? ACKs for top commit: apoelstra: utACK 801c378 Tree-SHA512: 43c7220e41856344d4a932426d8acb8e9f004fcf33acfbde4b26f3a6074b0ce3e766d99afaca6c18381a4438775fa693b06c70d3204d83ff5a97fcbebe126056
2 parents 6a774bd + 801c378 commit 5dcdffa

File tree

1 file changed

+60
-0
lines changed

1 file changed

+60
-0
lines changed

.github/workflows/cross.yml

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
on: [push, pull_request]
2+
3+
name: Cross testing
4+
5+
jobs:
6+
7+
Cross:
8+
name: Cross
9+
runs-on: ubuntu-latest
10+
strategy:
11+
fail-fast: false
12+
matrix:
13+
arch:
14+
############ Tier 1
15+
- aarch64-unknown-linux-gnu
16+
# - i686-pc-windows-gnu # not supported by cross
17+
# - i686-pc-windows-msvc # not supported by cross
18+
- i686-unknown-linux-gnu
19+
# - x86_64-apple-darwin # proprietary apple stuff
20+
- x86_64-pc-windows-gnu
21+
# - x86_64-pc-windows-msvc # not supported by cross
22+
- x86_64-unknown-linux-gnu
23+
############ Tier 2 with Host Tools
24+
# - aarch64-apple-darwin # proprietary apple stuff
25+
# - aarch64-pc-windows-msvc # not supported by cross
26+
- aarch64-unknown-linux-musl
27+
- arm-unknown-linux-gnueabi
28+
- arm-unknown-linux-gnueabihf
29+
- armv7-unknown-linux-gnueabihf
30+
- mips-unknown-linux-gnu
31+
- mips64-unknown-linux-gnuabi64
32+
- mips64el-unknown-linux-gnuabi64
33+
- mipsel-unknown-linux-gnu
34+
- powerpc-unknown-linux-gnu
35+
# - powerpc64-unknown-linux-gnu # not supported by cross
36+
- powerpc64le-unknown-linux-gnu
37+
- riscv64gc-unknown-linux-gnu
38+
- s390x-unknown-linux-gnu
39+
# - x86_64-unknown-freebsd # not supported by cross
40+
# - x86_64-unknown-illumos # not supported by cross
41+
- x86_64-unknown-linux-musl
42+
# - x86_64-unknown-netbsd # error in tests "error: test failed, to rerun pass '--lib'", disabled for now
43+
steps:
44+
- name: Checkout Crate
45+
uses: actions/checkout@v2
46+
- uses: Swatinem/rust-cache@v1.2.0
47+
with:
48+
key: ${{ matrix.feature }}${{ matrix.os }}
49+
- name: Checkout Toolchain
50+
uses: actions-rs/toolchain@v1
51+
with:
52+
profile: minimal
53+
toolchain: stable
54+
override: true
55+
- name: Install target
56+
run: rustup target add ${{ matrix.arch }}
57+
- name: install cross
58+
run: cargo install cross
59+
- name: run cross test
60+
run: cross test --target ${{ matrix.arch }}

0 commit comments

Comments
 (0)