name: check on: pull_request: branches: - main merge_group: branches: - main permissions: contents: read jobs: rustfmt: name: rustfmt runs-on: ubuntu-latest steps: - name: harden runner uses: step-security/harden-runner@4d991eb9b905ef189e4c376166672c3f2f230481 # v2.11.0 with: egress-policy: audit - name: checkout repository uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: submodules: recursive - name: install stable rust toolchain with rustfmt run: | rustup update --no-self-update stable rustup default stable rustup component add rustfmt - name: install linux dependencies run: ./hack/ci/install-linux-deps.sh - name: cargo fmt run: ./hack/build/cargo.sh fmt --all -- --check shellcheck: name: shellcheck runs-on: ubuntu-latest steps: - name: harden runner uses: step-security/harden-runner@4d991eb9b905ef189e4c376166672c3f2f230481 # v2.11.0 with: egress-policy: audit - name: checkout repository uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: submodules: recursive - name: shellcheck run: ./hack/code/shellcheck.sh full-build: runs-on: ubuntu-latest strategy: fail-fast: false matrix: arch: - x86_64 - aarch64 env: TARGET_ARCH: "${{ matrix.arch }}" name: full build linux-${{ matrix.arch }} steps: - name: harden runner uses: step-security/harden-runner@4d991eb9b905ef189e4c376166672c3f2f230481 # v2.11.0 with: egress-policy: audit - name: checkout repository uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: submodules: recursive - name: install stable rust toolchain run: | rustup update --no-self-update stable rustup default stable - name: install linux dependencies run: ./hack/ci/install-linux-deps.sh - name: cargo build run: ./hack/build/cargo.sh build full-test: runs-on: ubuntu-latest strategy: fail-fast: false matrix: arch: - x86_64 - aarch64 env: TARGET_ARCH: "${{ matrix.arch }}" name: full test linux-${{ matrix.arch }} steps: - name: harden runner uses: step-security/harden-runner@4d991eb9b905ef189e4c376166672c3f2f230481 # v2.11.0 with: egress-policy: audit - name: checkout repository uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: submodules: recursive - name: install stable rust toolchain run: | rustup update --no-self-update stable rustup default stable - name: install linux dependencies run: ./hack/ci/install-linux-deps.sh - name: cargo test run: ./hack/build/cargo.sh test full-clippy: runs-on: ubuntu-latest strategy: matrix: arch: - x86_64 - aarch64 env: TARGET_ARCH: "${{ matrix.arch }}" name: full clippy linux-${{ matrix.arch }} steps: - name: harden runner uses: step-security/harden-runner@4d991eb9b905ef189e4c376166672c3f2f230481 # v2.11.0 with: egress-policy: audit - name: checkout repository uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: submodules: recursive - name: install stable rust toolchain with clippy run: | rustup update --no-self-update stable rustup default stable rustup component add clippy - name: install linux dependencies run: ./hack/ci/install-linux-deps.sh - name: cargo clippy run: ./hack/build/cargo.sh clippy