name: Release branch jobs
permissions:
pull-requests: write
contents: write
on:
push:
branches:
- main
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
env:
CARGO_TERM_COLOR: always
jobs:
fmt:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Check Rustfmt
run: cargo fmt --all --check
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Build
run: cargo build
clippy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Check Clippy
run: cargo clippy
doc:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Doc
run: cargo doc
deny:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: EmbarkStudios/cargo-deny-action@v2
with:
command: check bans licenses sources
crates-io:
needs:
- fmt
- build
- clippy
- doc
- deny
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0 - name: Run release-plz
uses: MarcoIeni/release-plz-action@v0.5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}