name: Publish
on:
workflow_dispatch:
jobs:
check_docs:
uses: ./.github/workflows/docs.yml
check_examples:
uses: ./.github/workflows/examples.yml
check_linter:
uses: ./.github/workflows/linter.yml
check_op_whitelist:
uses: ./.github/workflows/op_whitelist.yml
check_tests:
uses: ./.github/workflows/tests.yml
publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Rust
uses: dtolnay/rust-toolchain@stable
- name: Run tests
run: cargo test --all --locked
- name: Dry run publish
run: cargo publish --dry-run --locked
- name: Publish to crates.io
env:
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
run: cargo publish --locked