name: CI
on:
push:
branches:
pull_request:
branches:
release:
types:
env:
CARGO_TERM_COLOR: always
permissions:
contents: read
jobs:
ci:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Use Rust stable
run: |
rustup update stable
rustup default stable
rustup component add rustfmt clippy
- name: Install just
run: cargo install just --locked
- name: Run contributor checks
run: just ci
- name: Publish crate
if: github.ref_type == 'tag'
run: cargo publish --verbose
env:
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}