name: keccak on: pull_request: paths: - ".github/workflows/keccak.yml" - "keccak/**" - "Cargo.*" push: branches: master defaults: run: working-directory: keccak env: RUSTFLAGS: "-Dwarnings" CARGO_INCREMENTAL: 0 jobs: set-msrv: uses: RustCrypto/actions/.github/workflows/set-msrv.yml@master with: msrv: 1.41.0 build: needs: set-msrv runs-on: ubuntu-latest strategy: matrix: rust: - ${{needs.set-msrv.outputs.msrv}} - stable target: - thumbv7em-none-eabi - wasm32-unknown-unknown steps: - uses: actions/checkout@v2 - uses: actions-rs/toolchain@v1 with: profile: minimal toolchain: ${{ matrix.rust }} target: ${{ matrix.target }} override: true - run: cargo build --no-default-features --target ${{ matrix.target }} minimal-versions: uses: RustCrypto/actions/.github/workflows/minimal-versions.yml@master with: working-directory: ${{ github.workflow }} test: needs: set-msrv runs-on: ubuntu-latest strategy: matrix: rust: - ${{needs.set-msrv.outputs.msrv}} - stable steps: - uses: actions/checkout@v2 - uses: actions-rs/toolchain@v1 with: profile: minimal toolchain: ${{ matrix.rust }} override: true - run: cargo check --all-features - run: cargo test --no-default-features - run: cargo test - run: cargo test --all-features # Cross-compiled tests cross: needs: set-msrv strategy: matrix: rust: - ${{needs.set-msrv.outputs.msrv}} - stable target: - i686-unknown-linux-gnu - x86_64-unknown-linux-gnu - aarch64-unknown-linux-gnu - mips-unknown-linux-gnu features: - no_unroll - 'NO_FEATURE' runs-on: ubuntu-latest defaults: run: # Cross mounts only current package, i.e. by default it ignores workspace's Cargo.toml working-directory: . steps: - uses: actions/checkout@v2 - uses: ./.github/actions/cross-tests with: rust: ${{ matrix.rust }} package: ${{ github.workflow }} target: ${{ matrix.target }} features: ${{ matrix.features }}