Skip to content

Add pre-release support #538

Description

@jenstroeger

Currently

The release workflows support only final releases of a package, and no pre-releases. The branches support these release workflows by PR → staging branch → main branch, where a push to the main branch triggers building and publishing a final package release.

Proposal

We want to add support for building and publishing pre-releases of the package. To achieve that we can add the following workflows to the staging branch that trigger on push event:

  1. If the commit log shows a release will be build (i.e. there’s at least one fix: or feat: or breaking change) then
    1. Build all release artifacts; then
    2. Bump the package’s version using commitizen’s --prerelease option, e.g. using rc for release candidates, and push the new tag; then
    3. Create a pre-release on Github and attach the pre-release build artifacts.

We can probably refactor the current release.yaml into two workflows:

  1. release-rc.yaml that triggers on push to the staging branch and produces a pre-release; and
  2. release.yaml that (much like its current incarnation) triggers on push to the main branch and produces a final release,

both of which can make use of two new reusable workflows that

  • Build and bump a branch; and
  • Create a Github release and publish the artifacts.

For this to work, we also need the following two features available:

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions