diff options
Diffstat (limited to '.github/workflows/rust.yml')
-rw-r--r-- | .github/workflows/rust.yml | 21 |
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 |