name: Lint and Test Code
on:
pull_request:
branches:
- main
permissions:
contents: read
jobs:
full-build:
strategy:
fail-fast: false
matrix:
platform:
- { arch: x86_64, on: ubuntu-latest }
- { arch: aarch64, on: ubuntu-24.04-arm }
runs-on: "${{ matrix.platform.on }}"
env:
TARGET_ARCH: "${{ matrix.platform.arch }}"
name: 'Full build and test linux-${{ matrix.platform.arch }}'
steps:
- name: harden runner
uses: step-security/harden-runner@8d3c67de8e2fe68ef647c8db1e6a09f647780f40 with:
egress-policy: audit
- name: checkout repository
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd with:
submodules: recursive
persist-credentials: false
- name: install rust toolchain
uses: dtolnay/rust-toolchain@631a55b12751854ce901bb631d5902ceb48146f7 with:
components: rustfmt, clippy
- name: cargo build
run: cargo build
- name: quality gate
uses: ./.github/actions/quality-gate