Skip to content

chore: add "Verify Release" workflow to automate post-release checks#10393

Open
paulbalandan wants to merge 1 commit into
codeigniter4:developfrom
paulbalandan:post-release-verification
Open

chore: add "Verify Release" workflow to automate post-release checks#10393
paulbalandan wants to merge 1 commit into
codeigniter4:developfrom
paulbalandan:post-release-verification

Conversation

@paulbalandan

Copy link
Copy Markdown
Member

Description
Release day currently ends with a manual babysitting checklist: watch "Deploy Distributable Repos" until the three distributable repos update, run the appstarter smoke-test commands locally, then click through the user guide workflows and check that the ePub landed. This PR replaces all of that with a single workflow.

New .github/workflows/verify-release.yml ("Verify Release"), triggered on release: published and manually via "Run workflow" with a tag input (for re-runs or verifying an existing release). Three jobs:

  • Wait for distributables deploy: polls the "Deploy Distributable Repos" runs, filtered to event=release and created>= the release's publish time so a stale earlier run can never produce a false pass, and fails if the run does not succeed. On manual dispatch, the publish time is resolved from the tag via the API.
  • Install and test appstarter: waits for Packagist to serve the new codeigniter4/framework version (with a generous polling budget for propagation lag), then runs composer create-project codeigniter4/appstarter, asserts the installed framework is exactly v4.x.x, and runs the appstarter test suite. This encodes the smoke-test commands from RELEASE.md.
  • Verify user guide deployment: polls for CodeIgniter4.x.x.epub in the userguide repo and for the successful completion of the "Deploy Production" and "pages build and deployment" runs since the release was published. (The latter is the actual run name; the RELEASE.md checklist linked a pages-build-deployment slug that does not match the run names returned by the API.)

admin/RELEASE.md: the three manual verification checklist items are replaced by one "watch Verify Release" item describing what the workflow covers and how to re-run it.

Verification done so far: every check was executed locally against the real v4.7.4 release, including a full create-project + version assertion + composer test (all passing), the dispatch-mode publish-time fallback, YAML validation, and shellcheck over every run block. The workflow itself cannot execute until it exists on the default branch, so after merging, running it via "Run workflow" with v4.7.4 gives the true end-to-end test and is expected to pass.

Checklist:

  • Securely signed commits
  • Component(s) with PHPDoc blocks, only if necessary or adds value (without duplication)
  • Unit testing, with >80% coverage
  • User guide updated
  • Conforms to style guide

@github-actions github-actions Bot added the github_actions Pull requests that update Github_actions code label Jul 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

github_actions Pull requests that update Github_actions code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants