Skip to content

[codex] Add canonical RCH user story ledger #93

[codex] Add canonical RCH user story ledger

[codex] Add canonical RCH user story ledger #93

Workflow file for this run

name: Rust PR Quality Control
on:
pull_request:
branches: ["rust-next", "main"]
workflow_dispatch:
permissions:
contents: read
concurrency:
group: rust-pr-quality-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
env:
CARGO_TERM_COLOR: always
jobs:
fmt:
name: Format
runs-on: ubuntu-latest
steps:
- name: Check out RCH
uses: actions/checkout@v6
with:
path: rch
- name: Check out LXMF-rs
uses: actions/checkout@v6
with:
repository: FreeTAKTeam/LXMF-rs
path: LXMF-rs
ref: ed4a8a1e7921925023ed5583d20f75c7671e3b6e
- name: Install Rust 1.88
uses: dtolnay/rust-toolchain@stable
with:
toolchain: "1.88"
components: rustfmt
- name: Check Rust formatting
working-directory: rch
run: cargo fmt --all -- --check
clippy:
name: Clippy
runs-on: ubuntu-latest
steps:
- name: Check out RCH
uses: actions/checkout@v6
with:
path: rch
- name: Check out LXMF-rs
uses: actions/checkout@v6
with:
repository: FreeTAKTeam/LXMF-rs
path: LXMF-rs
ref: ed4a8a1e7921925023ed5583d20f75c7671e3b6e
- name: Install Rust 1.88
uses: dtolnay/rust-toolchain@stable
with:
toolchain: "1.88"
components: clippy
- name: Check locked dependencies
working-directory: rch
run: cargo fetch --locked
- name: Run clippy
working-directory: rch
run: cargo clippy --workspace --all-targets -- -D warnings
tests:
name: Workspace Tests
runs-on: ubuntu-latest
steps:
- name: Check out RCH
uses: actions/checkout@v6
with:
path: rch
- name: Check out LXMF-rs
uses: actions/checkout@v6
with:
repository: FreeTAKTeam/LXMF-rs
path: LXMF-rs
ref: ed4a8a1e7921925023ed5583d20f75c7671e3b6e
- name: Install Rust 1.88
uses: dtolnay/rust-toolchain@stable
with:
toolchain: "1.88"
- name: Check locked dependencies
working-directory: rch
run: cargo fetch --locked
- name: Run workspace tests
working-directory: rch
run: cargo test --workspace -- --test-threads=1
release-builds:
name: Release Builds
runs-on: ubuntu-latest
steps:
- name: Check out RCH
uses: actions/checkout@v6
with:
path: rch
- name: Check out LXMF-rs
uses: actions/checkout@v6
with:
repository: FreeTAKTeam/LXMF-rs
path: LXMF-rs
ref: ed4a8a1e7921925023ed5583d20f75c7671e3b6e
- name: Install Rust 1.88
uses: dtolnay/rust-toolchain@stable
with:
toolchain: "1.88"
- name: Check locked dependencies
working-directory: rch
run: cargo fetch --locked
- name: Build server release binary
working-directory: rch
run: cargo build --release -p r3akt-rch-server
- name: Build TAK service release binary
working-directory: rch
run: cargo build --release -p r3akt-tak-connector --bin r3akt-tak-service
dependency-audit:
name: Dependency Audit
runs-on: ubuntu-latest
steps:
- name: Check out RCH
uses: actions/checkout@v6
with:
path: rch
- name: Check out LXMF-rs
uses: actions/checkout@v6
with:
repository: FreeTAKTeam/LXMF-rs
path: LXMF-rs
ref: ed4a8a1e7921925023ed5583d20f75c7671e3b6e
- name: Install Rust 1.88
uses: dtolnay/rust-toolchain@stable
with:
toolchain: "1.88"
- name: Install cargo-audit
uses: taiki-e/install-action@cargo-audit
- name: Audit locked dependency graph
working-directory: rch
run: cargo audit --deny warnings