name: publish
on:
workflow_dispatch:
release:
types:
permissions:
contents: read
jobs:
crates-io:
name: crates.io
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Install Rust
run: |
rustup toolchain install stable --profile minimal
rustup default stable
- name: Verify package
run: cargo package --locked
- name: Publish to crates.io
env:
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
run: cargo publish --locked