name: Rust on: push: branches: [ "main" ] pull_request: branches: [ "main" ] env: CARGO_TERM_COLOR: always jobs: test: name: Test on ${{ matrix.target }} runs-on: ubuntu-latest strategy: fail-fast: false matrix: target: - x86_64-unknown-linux-gnu - aarch64-unknown-linux-gnu - riscv64gc-unknown-linux-gnu steps: - name: "Checkout" uses: actions/checkout@v6 - name: "Setup Rust toolchain" uses: actions-rust-lang/setup-rust-toolchain@v1 with: target: ${{ matrix.target }} rustflags: "" - name: "Make Mold the default linker" uses: rui314/setup-mold@v1 - name: "Setup cross-compilation toolchain" uses: taiki-e/setup-cross-toolchain-action@v1 with: target: ${{ matrix.target }} - name: "Build" run: cargo build --verbose - name: "Run tests" run: cargo test --workspace --exclude microfetch --verbose