From 0b2a3b28dc97f85f7927493eeccd1b914e927920 Mon Sep 17 00:00:00 2001 From: sagudev <16504129+sagudev@users.noreply.github.com> Date: Tue, 1 Jul 2025 07:41:43 +0200 Subject: [PATCH 1/3] CI: Add workflows for automated publish Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> --- .github/workflows/prepare-new-release.yml | 32 +++++++++++++++++++++++ .github/workflows/publish-release.yml | 30 +++++++++++++++++++++ 2 files changed, 62 insertions(+) create mode 100644 .github/workflows/prepare-new-release.yml create mode 100644 .github/workflows/publish-release.yml diff --git a/.github/workflows/prepare-new-release.yml b/.github/workflows/prepare-new-release.yml new file mode 100644 index 0000000..082631e --- /dev/null +++ b/.github/workflows/prepare-new-release.yml @@ -0,0 +1,32 @@ +name: Prepare new release + +permissions: + pull-requests: write + contents: write + +on: + workflow_dispatch: + +jobs: + new-release: + name: Prepare new release + runs-on: ubuntu-latest + permissions: + contents: write + pull-requests: write + concurrency: + group: release-plz-${{ github.ref }} + cancel-in-progress: false + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Install Rust toolchain + uses: dtolnay/rust-toolchain@stable + - name: Run release-plz + uses: release-plz/action@v0.5 + with: + command: release-pr + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/publish-release.yml b/.github/workflows/publish-release.yml new file mode 100644 index 0000000..c063cb3 --- /dev/null +++ b/.github/workflows/publish-release.yml @@ -0,0 +1,30 @@ +name: Publish release + +permissions: + contents: write + +on: + push: + branches: + - main + +jobs: + publish: + name: Publish release + runs-on: ubuntu-latest + permissions: + contents: write + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Install Rust toolchain + uses: dtolnay/rust-toolchain@stable + - name: Run release-plz + uses: release-plz/action@v0.5 + with: + command: release + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }} From f8607a57a7d580df824378e4c4af4133e2a2ca25 Mon Sep 17 00:00:00 2001 From: sagudev <16504129+sagudev@users.noreply.github.com> Date: Tue, 1 Jul 2025 08:25:54 +0200 Subject: [PATCH 2/3] Publish only on tags Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> --- .github/workflows/publish-release.yml | 4 ++-- release-plz.toml | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) create mode 100644 release-plz.toml diff --git a/.github/workflows/publish-release.yml b/.github/workflows/publish-release.yml index c063cb3..476a1c4 100644 --- a/.github/workflows/publish-release.yml +++ b/.github/workflows/publish-release.yml @@ -5,8 +5,8 @@ permissions: on: push: - branches: - - main + tags: + - "*" jobs: publish: diff --git a/release-plz.toml b/release-plz.toml new file mode 100644 index 0000000..5fec2d0 --- /dev/null +++ b/release-plz.toml @@ -0,0 +1,2 @@ +[workspace] +git_tag_enable = false From 8a8bdbc794f15f4d01fe7116b75bb69419f60152 Mon Sep 17 00:00:00 2001 From: sagudev <16504129+sagudev@users.noreply.github.com> Date: Wed, 2 Jul 2025 08:36:38 +0200 Subject: [PATCH 3/3] more docs Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> --- .github/workflows/prepare-new-release.yml | 2 ++ .github/workflows/publish-release.yml | 8 +++++++- release-plz.toml | 2 ++ 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/.github/workflows/prepare-new-release.yml b/.github/workflows/prepare-new-release.yml index 082631e..4f141d6 100644 --- a/.github/workflows/prepare-new-release.yml +++ b/.github/workflows/prepare-new-release.yml @@ -1,5 +1,7 @@ name: Prepare new release +# Needs permissions as specified in: +# https://release-plz.ieni.dev/docs/github/quickstart permissions: pull-requests: write contents: write diff --git a/.github/workflows/publish-release.yml b/.github/workflows/publish-release.yml index 476a1c4..6af65f5 100644 --- a/.github/workflows/publish-release.yml +++ b/.github/workflows/publish-release.yml @@ -1,12 +1,14 @@ name: Publish release +# Needs permissions as specified in: +# https://release-plz.ieni.dev/docs/github/quickstart permissions: contents: write on: push: tags: - - "*" + - "v*" jobs: publish: @@ -26,5 +28,9 @@ jobs: with: command: release env: + # Needs permissions as specified in: + # https://release-plz.ieni.dev/docs/github/quickstart#1-change-github-actions-permissions GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + # Needs permissions as specified in: + # https://release-plz.ieni.dev/docs/github/quickstart#2-set-the-cargo_registry_token-secret CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }} diff --git a/release-plz.toml b/release-plz.toml index 5fec2d0..c684021 100644 --- a/release-plz.toml +++ b/release-plz.toml @@ -1,2 +1,4 @@ [workspace] +# we trigger publish by creating tag +# so we can assume it's already created git_tag_enable = false