diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index cf5acfa..ce0f8bc 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -7,7 +7,15 @@ env: jobs: cargo-tests: runs-on: ubuntu-latest + name: tests (${{ matrix.spec.arch }}) timeout-minutes: 20 + strategy: + matrix: + spec: + - arch: aarch64 + target: aarch64-unknown-linux-gnu + - arch: x86 + target: x86_64-unknown-linux-gnu steps: - name: Checkout sources uses: actions/checkout@v4 @@ -17,12 +25,22 @@ jobs: with: cache-on-failure: true - name: Install xsltproc + shell: bash run: sudo apt-get install xsltproc + - uses: taiki-e/setup-cross-toolchain-action@v1 + with: + target: ${{ matrix.spec.target }} - uses: taiki-e/install-action@nextest - name: cargo test - run: cargo nextest run --workspace --all --locked + run: | + if [ "${{ matrix.spec.arch }}" == "x86" ]; then + cargo nextest run --workspace --all --locked + elif [ "${{ matrix.spec.arch }}" == "aarch64" ]; then + cargo nextest run --workspace --all --locked -F simd-keccak + fi cargo-lint: runs-on: ubuntu-latest + name: lint timeout-minutes: 20 steps: - name: Checkout sources @@ -42,6 +60,7 @@ jobs: run: cargo +nightly clippy --workspace --all --locked -- -D warnings cargo-build: runs-on: ubuntu-latest + name: build timeout-minutes: 20 continue-on-error: true steps: @@ -59,6 +78,7 @@ jobs: run: cargo build --workspace --all --locked cargo-doc: runs-on: ubuntu-latest + name: doc build & test timeout-minutes: 20 continue-on-error: true steps: