aboutsummaryrefslogtreecommitdiffstats
path: root/.github/workflows/rust.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/rust.yml')
-rw-r--r--.github/workflows/rust.yml21
1 files changed, 20 insertions, 1 deletions
diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml
index 7defc50..d95200a 100644
--- a/.github/workflows/rust.yml
+++ b/.github/workflows/rust.yml
@@ -13,7 +13,7 @@ on:
- ".github/workflows/rust.yml"
jobs:
- rust:
+ build-and-test:
name: Build and Test
runs-on: ${{ matrix.os }}
strategy:
@@ -26,3 +26,22 @@ jobs:
- uses: actions-rust-lang/setup-rust-toolchain@v1
- name: Test
run: cargo test --verbose
+
+ publish:
+ name: Publish to crates.io
+ needs: build-and-test
+ # Only run on this on proper semver (vX.Y.Z) tags
+ if: ${{ github.ref_type == 'tag' && startsWith(github.ref_name, 'v') }}
+ runs-on: ubuntu-latest
+ permissions:
+ id-token: write
+ steps:
+ - name: Checkout repository
+ uses: actions/checkout@v4
+ with:
+ fetch-depth: 0
+ - uses: actions-rust-lang/setup-rust-toolchain@v1
+ - name: Publish
+ run: cargo publish
+ env:
+ CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_TOKEN }} \ No newline at end of file