name: CI
on:
push:
branches:
pull_request:
permissions:
contents: read
jobs:
build-and-test:
name: Build and Test
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v6
- name: Install Rust Toolchain
uses: dtolnay/rust-toolchain@stable
- name: Cache Dependencies
uses: Swatinem/rust-cache@v2
with:
shared-key: ci-ubuntu
- name: Build
run: cargo build --locked
- name: Test
run: cargo test --locked