From 062e6128b0b4b69ce75592102e8bf309e4b0fcc4 Mon Sep 17 00:00:00 2001 From: clabby Date: Fri, 10 Nov 2023 11:49:36 -0500 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20MacOS=20CI?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/ci.yaml | 34 ++++++++++++++++++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index cf5acfa..5441b8a 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,32 @@ jobs: with: cache-on-failure: true - name: Install xsltproc - run: sudo apt-get install xsltproc + shell: bash + run: | + if [ "${{ matrix.spec.host }}" == "ubuntu-latest" ]; then + sudo apt-get install xsltproc + elif [ "${{ matrix.spec.host }}" == "macos-latest-large" ]; then + brew install libxslt + fi + - uses: taiki-e/setup-cross-toolchain-action@v1 + with: + target: ${{ matrix.spec.target }} - uses: taiki-e/install-action@nextest + - uses: uraimo/run-on-arch-action@v2 + if: matrix.spec.arch == 'aarch64' + name: Run tests + with: + arch: ${{ matrix.spec.arch }} + distro: ubuntu22.04 + run: | + cargo nextest run --workspace --all --locked --target ${{ matrix.spec.target }} -F simd-keccak - name: cargo test - run: cargo nextest run --workspace --all --locked + if: matrix.spec.arch == 'x86' + run: | + cargo nextest run --workspace --all --locked --target ${{ matrix.spec.target }} cargo-lint: runs-on: ubuntu-latest + name: lint timeout-minutes: 20 steps: - name: Checkout sources @@ -42,6 +70,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 +88,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: