This is an automated email from the ASF dual-hosted git repository.
lukaszlenart pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/struts-intellij-plugin.git
The following commit(s) were added to refs/heads/main by this push:
new 52e1b59 ci: require Struts version review before preparing release
(#107)
52e1b59 is described below
commit 52e1b5981cf9c96f665bc9e797140ef80b31dd27
Author: Lukasz Lenart <[email protected]>
AuthorDate: Thu Jul 2 10:05:01 2026 +0200
ci: require Struts version review before preparing release (#107)
Add a required workflow_dispatch checkbox to Prepare Release and fail
early with a checklist error when it is not confirmed. Document the
check in the README pre-release checklist.
Co-authored-by: Cursor <[email protected]>
---
.github/workflows/prepare_release.yml | 12 ++++++++++++
README.md | 17 +++++++++--------
2 files changed, 21 insertions(+), 8 deletions(-)
diff --git a/.github/workflows/prepare_release.yml
b/.github/workflows/prepare_release.yml
index 385afb5..fb7eddc 100644
--- a/.github/workflows/prepare_release.yml
+++ b/.github/workflows/prepare_release.yml
@@ -27,6 +27,11 @@ on:
description: 'Release version (e.g. 253.18970.1). Leave empty to use
pluginVersion from gradle.properties.'
required: false
default: ''
+ struts_version_checked:
+ description: 'Confirm that support for the latest Apache Struts
release has been reviewed.'
+ required: true
+ type: boolean
+ default: false
jobs:
prepare:
@@ -36,6 +41,13 @@ jobs:
contents: write
steps:
+ - name: Check release readiness
+ if: ${{ github.event.inputs.struts_version_checked != 'true' }}
+ run: |
+ echo "::error title=Release checklist incomplete::Review support for
the latest Apache Struts release before preparing this plugin release."
+ echo "Check https://struts.apache.org/announce.html and update code,
tests, and CHANGELOG.md if needed."
+ exit 1
+
# Free GitHub Actions Environment Disk Space
- name: Maximize Build Space
uses:
jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # v1.3.1
diff --git a/README.md b/README.md
index 7334d66..f5864ee 100644
--- a/README.md
+++ b/README.md
@@ -84,7 +84,7 @@ Nightly tags are also used when calculating the BUILD
increment after a stable r
#### Phase 1 — Prepare a release candidate (manual)
-Go to **Actions → Prepare Release → Run workflow**
([prepare_release.yml](.github/workflows/prepare_release.yml)), optionally
providing a version override. If omitted, the version from `gradle.properties`
is used. This workflow:
+Go to **Actions → Prepare Release → Run workflow**
([prepare_release.yml](.github/workflows/prepare_release.yml)), optionally
providing a version override. If omitted, the version from `gradle.properties`
is used. You must check **Confirm that support for the latest Apache Struts
release has been reviewed** before the workflow runs. This workflow:
1. Builds the plugin (`./gradlew buildPlugin`)
2. Extracts unreleased changelog entries for the release notes
@@ -108,10 +108,11 @@ Merge the post-release PR to complete the release cycle.
#### Pre-release checklist
-1. Ensure `[Unreleased]` in `CHANGELOG.md` is complete
-2. Confirm `pluginVersion` and platform properties in `gradle.properties` are
correct
-3. Ensure `main` is green (required checks: Test, Verify plugin)
-4. Run **Prepare Release**
-5. Share the GitHub pre-release with PMC for testing and voting
-6. After the vote: promote pre-release → full release
-7. Review and merge the auto-created post-release PR
+1. Check the [latest Apache Struts
release](https://struts.apache.org/announce.html) and update plugin support,
tests, and `CHANGELOG.md` if needed
+2. Ensure `[Unreleased]` in `CHANGELOG.md` is complete
+3. Confirm `pluginVersion` and platform properties in `gradle.properties` are
correct
+4. Ensure `main` is green (required checks: Test, Verify plugin)
+5. Run **Prepare Release** (check the Struts version confirmation box)
+6. Share the GitHub pre-release with PMC for testing and voting
+7. After the vote: promote pre-release → full release
+8. Review and merge the auto-created post-release PR