69 lines
1.6 KiB
YAML
69 lines
1.6 KiB
YAML
name: Rust Formatting
|
|
|
|
on:
|
|
push:
|
|
pull_request:
|
|
|
|
jobs:
|
|
format:
|
|
name: Format
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v4
|
|
with:
|
|
persist-credentials: false
|
|
|
|
- name: Install rust
|
|
uses: ./.forgejo/actions/rust-toolchain
|
|
with:
|
|
toolchain: "nightly"
|
|
components: "rustfmt"
|
|
|
|
- name: Check formatting
|
|
run: |
|
|
cargo +nightly fmt --all -- --check
|
|
|
|
clippy:
|
|
name: Clippy
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v4
|
|
with:
|
|
persist-credentials: false
|
|
|
|
- name: Install rust
|
|
uses: ./.forgejo/actions/rust-toolchain
|
|
|
|
- uses: https://github.com/actions/create-github-app-token@v2
|
|
id: app-token
|
|
with:
|
|
app-id: ${{ vars.GH_APP_ID }}
|
|
private-key: ${{ secrets.GH_APP_PRIVATE_KEY }}
|
|
github-api-url: https://api.github.com
|
|
owner: ${{ vars.GH_APP_OWNER }}
|
|
repositories: ""
|
|
- name: Install sccache
|
|
uses: ./.forgejo/actions/sccache
|
|
with:
|
|
token: ${{ steps.app-token.outputs.token }}
|
|
- run: sudo apt-get update
|
|
- name: Install system dependencies
|
|
uses: https://github.com/awalsh128/cache-apt-pkgs-action@v1
|
|
with:
|
|
packages: clang liburing-dev
|
|
version: 1
|
|
- name: Check formatting
|
|
run: |
|
|
cargo clippy \
|
|
--workspace \
|
|
--locked \
|
|
--profile test \
|
|
-- \
|
|
-D warnings
|
|
|
|
- name: Show sccache stats
|
|
run: sccache --show-stats
|