diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 00000000..5c8a719a --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,19 @@ +name: Publish to crates.io + +on: + push: + tags: ['v*'] # Triggers when pushing tags starting with 'v' + +jobs: + publish: + runs-on: ubuntu-latest + # environment: release # Optional: for enhanced security + permissions: + id-token: write # Required for OIDC token exchange + steps: + - uses: actions/checkout@v4 + - uses: rust-lang/crates-io-auth-action@v1 + id: auth + - run: cargo publish + env: + CARGO_REGISTRY_TOKEN: ${{ steps.auth.outputs.token }}