From 15b56989243fdca59dcb4f5426a6ae7e531d57de Mon Sep 17 00:00:00 2001 From: ivmarkov Date: Tue, 10 Sep 2024 13:37:58 +0000 Subject: [PATCH] Publish workflow --- .github/workflows/publish-dry-run.yml | 23 +++++++++++++++++ .github/workflows/publish.yml | 36 +++++++++++++++++++++++++++ 2 files changed, 59 insertions(+) create mode 100644 .github/workflows/publish-dry-run.yml create mode 100644 .github/workflows/publish.yml diff --git a/.github/workflows/publish-dry-run.yml b/.github/workflows/publish-dry-run.yml new file mode 100644 index 0000000..8ce71b4 --- /dev/null +++ b/.github/workflows/publish-dry-run.yml @@ -0,0 +1,23 @@ +name: PublishDryRun + +on: + workflow_dispatch + +env: + rust_toolchain: stable + +jobs: + publishdryrun: + name: Publish Dry Run + runs-on: ubuntu-latest + steps: + - name: Setup | Checkout + uses: actions/checkout@v2 + - name: Setup | Rust + uses: actions-rs/toolchain@v1 + with: + toolchain: ${{ env.rust_toolchain }} + - name: Setup | Set toolchain + run: rustup default ${{ env.rust_toolchain }} + - name: Build | Publish Dry Run + run: cargo publish --dry-run diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 0000000..d900ba3 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,36 @@ +name: Publish + +on: + workflow_dispatch + +env: + rust_toolchain: stable + CRATE_NAME: async-io-mini + +jobs: + publish: + name: Publish + runs-on: ubuntu-latest + steps: + - name: Setup | Checkout + uses: actions/checkout@v2 + - name: Setup | Rust + uses: actions-rs/toolchain@v1 + with: + toolchain: ${{ env.rust_toolchain }} + - name: Setup | Set toolchain + run: rustup default ${{ env.rust_toolchain }} + - name: Login + run: cargo login ${{ secrets.crates_io_token }} + - name: Build | Publish + run: cargo publish + - name: Get the crate version from cargo + run: | + version=$(cargo metadata --format-version=1 --no-deps | jq -r ".packages[] | select(.name == \"${{env.CRATE_NAME}}\") | .version") + echo "crate_version=$version" >> $GITHUB_ENV + echo "${{env.CRATE_NAME}} version: $version" + - name: Tag the new release + uses: rickstaa/action-create-tag@v1 + with: + tag: v${{env.crate_version}} + message: "Release v${{env.crate_version}}"