Skip to content

Periodic

Periodic #62

Workflow file for this run

name: Periodic
on:
workflow_dispatch:
schedule:
- cron: 0 0 * * SUN
jobs:
format:
name: Format
strategy:
matrix:
platform:
- runner: ubuntu-latest
target: x86_64-unknown-linux-gnu
toolchain: [stable]
runs-on: ${{ matrix.platform.runner }}
steps:
- name: Run checkout
uses: actions/checkout@v6
- name: Install toolchain
uses: dtolnay/rust-toolchain@v1
with:
toolchain: ${{ matrix.toolchain }}
target: ${{ matrix.platform.target }}
components: rustfmt, clippy
- name: Check format
run: cargo fmt --all -- --check
test:
name: Test
needs: [format]
strategy:
matrix:
platform:
- runner: ubuntu-latest
target: x86_64-unknown-linux-gnu
- runner: ubuntu-24.04-arm
target: aarch64-unknown-linux-gnu
- runner: macos-latest
target: aarch64-apple-darwin
- runner: macos-15-intel
target: x86_64-apple-darwin
- runner: windows-latest
target: x86_64-pc-windows-msvc
- runner: windows-latest
target: aarch64-pc-windows-msvc
skip_test_run: true
toolchain: [stable]
runs-on: ${{ matrix.platform.runner }}
steps:
- name: Run checkout
uses: actions/checkout@v6
- name: Install toolchain
uses: dtolnay/rust-toolchain@v1
with:
toolchain: ${{ matrix.toolchain }}
target: ${{ matrix.platform.target }}
components: rustfmt, clippy
- name: Setup Python
uses: actions/setup-python@v6
with:
python-version: 3.x
- name: Run test
shell: bash
run: |
if [ "${{ matrix.platform.skip_test_run }}" == "true" ]; then
cargo check --target "${{ matrix.platform.target }}" --all-features
else
cargo test --target "${{ matrix.platform.target }}" --all-features
fi