Skip to content

DAISY-9079: Change publish workflow to require release PR#4

Merged
muiradams merged 3 commits intomainfrom
daisy-9079-change-publish-workflow-to-require-release-pr
Sep 8, 2025
Merged

DAISY-9079: Change publish workflow to require release PR#4
muiradams merged 3 commits intomainfrom
daisy-9079-change-publish-workflow-to-require-release-pr

Conversation

@muiradams
Copy link
Collaborator

@muiradams muiradams commented Sep 5, 2025

DAISY-9079

Description

The last attempt at a publish workflow required a GitHub personal access token (PAT) to be setup in order to get around the requirement that only approved PRs can be merged to the main branch. PATs have to be renewed every year, and are tied to a specific user. We want the workflow to be more robust than that, and also prefer a workflow with a release PR that can be reviewed before it's released for added safety. This PR also adds a requirement that frontend codeowners review any PRs with changes to config files, including package.json so that codeowner reviews are required for release PRs.

The new process is as follows:

  1. From the "Actions" tab, select the "Prepare Release PR" workflow.
  2. Click "Run workflow"
  3. Select a semantic version for the release: major, minor, or push.
  4. Click the "Run workflow" button within the modal. The workflow will update the package.json with a new version number based on the semantic version selected by the user. Then it will create a tag with the new version, and push that to a branch named, "release/react-time-picker-vX.X.X" (where X.X.X is the new version). Then it will create a PR for that release branch.
  5. The release PR will then need a codeowner's approval before being merged.
  6. Once the release PR has been merged, the "Release and Publish" workflow will begin automatically. That workflow will create a Github release with the new version number, and release the (private) package on Github Packages as @realtimemd/react-time-picker.

Suggested QA testing

N/A - We won't be able to test this again until it's merged to the main branch, because the new "Prepare Release PR" workflow doesn't exist there yet. There may have to be followup PRs to fix any issues.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR refactors the release workflow from a single-step publish process to a two-step process requiring an explicit release PR that must be reviewed and merged before publishing. The changes improve robustness by removing dependency on personal access tokens and adding safety through mandatory code owner reviews.

  • Creates a new "Prepare Release PR" workflow that handles version bumping and PR creation
  • Modifies the publish workflow to trigger only on merged release PRs or manual reruns
  • Adds CODEOWNERS file requiring frontend team review for config file changes

Reviewed Changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.

File Description
.github/workflows/publish.yml Refactored to trigger on release PR merges instead of manual dispatch with version selection
.github/workflows/create-release.yml New workflow for creating release PRs with version bumping and tagging
.github/CODEOWNERS Added to require frontend team review for GitHub config and package changes

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@muiradams muiradams merged commit aa2a54c into main Sep 8, 2025
8 checks passed
@muiradams muiradams deleted the daisy-9079-change-publish-workflow-to-require-release-pr branch September 8, 2025 15:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants