on: push: pull_request: branches: - main jobs: zigbuild: runs-on: docker container: image: docker.io/node:20-bookworm steps: - uses: https://github.com/actions/checkout@v4 - uses: https://github.com/dtolnay/rust-toolchain@1.75.0 with: targets: x86_64-unknown-linux-musl,armv7-unknown-linux-musleabihf,aarch64-unknown-linux-musl components: clippy - uses: https://github.com/taiki-e/install-action@v2 with: tool: cargo-binstall - uses: https://github.com/goto-bus-stop/setup-zig@v2 - run: | cargo zigbuild --target x86_64-unknown-linux-musl ; cargo zigbuild --target armv7-unknown-linux-musleabihf ; cargo zigbuild --target aarch64-unknown-linux-musl ; cargo clippy --no-default-features -- -D warnings ; clippy: runs-on: docker container: image: docker.io/asonix/rust-builder:latest-linux-amd64 steps: - run: | git clone ${{ env.github_server_url }}/${{ env.github_repository }} . git checkout ${{ env.github_sha }} rustup component add clippy cargo clippy --no-default-features -- -D warnings cargo clippy --no-default-features --features io-uring -- -D warnings tests: runs-on: docker container: image: docker.io/asonix/rust-builder:latest-linux-amd64 steps: - run: | git clone ${{ env.github_server_url }}/${{ env.github_repository }} . git checkout ${{ env.github_sha }} cargo test check: strategy: matrix: include: - image: docker.io/asonix/rust-builder:latest-linux-amd64 target: x86_64-unknown-linux-musl - image: docker.io/asonix/rust-builder:latest-linux-arm32v7 target: armv7-unknown-linux-musleabihf - image: docker.io/asonix/rust-builder:latest-linux-arm64v8 target: aarch64-unknown-linux-musl runs-on: docker container: image: ${{ matrix.image }} steps: - run: | git clone ${{ env.github_server_url }}/${{ env.github_repository }} . git checkout ${{ env.github_sha }} cargo check --target ${{ matrix.target }}