Skip to content

Conversation

@bidoubiwa
Copy link
Contributor

@bidoubiwa bidoubiwa commented Dec 6, 2022

This repository is able to create mutiple types of beta:

  • A normal beta for the package. Example, I add a feature in instant-meilisearch and would like to publish a beta on npm to try it out.
  • A beta implementing the changes of a future release of Meilisearch. Example
  • A beta of a specific prototype of Meilisearch. Example

Each of these beta must run against a specific version of Meilisearch.

  • the normal beta has to run against the latest release of Meilisearch
  • the pre-release beta against the latest rc of Meilisearch
  • the prototype beta against the meilisearch docker image of the prototype

This PR introduces the new process to make this as simple as possible. To be able to redirect the PR's to the correct tests a new formating is suggested on the branch name. For consistency, a new formating is suggested on the package version.

The check-tag-version script ensures that if the version is not a vX.X.X it should be a pre-release.
the prototype-docker-version parse the branch name to fetch the correct image on the docker API.

@bidoubiwa bidoubiwa added the skip-changelog The PR will not appear in the release changelogs label Dec 6, 2022
run: yarn build
- name: Publish with latest tag
if: "!github.event.release.prerelease && !contains(github.ref, 'beta')"
if: '!github.event.release.prerelease'
Copy link
Contributor Author

Choose a reason for hiding this comment

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

In the step Check tag format we ensure that, in the case we are in a latest release and not a pre-release, the version of the package is strictly formatted as vX.X.X and not for example vX.X.X-my-feature.0.
With that check, we do not need the second condition anymore.

@bidoubiwa bidoubiwa force-pushed the add_beta_release_process branch from 03cf4b7 to abd0032 Compare December 6, 2022 16:23
Copy link
Member

@curquiza curquiza left a comment

Choose a reason for hiding this comment

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

To be fully transparent, I don't feel confident reviewing this, I made this at the end of my day. However, the main structure seems present.

I would maybe add a small paragraph to explain the different kind of beta we have in this repo, like you did in the PR description

After this, let's try this in production 😄

@bidoubiwa
Copy link
Contributor Author

bidoubiwa commented Dec 7, 2022

Hey @curquiza
Where would you add the small paragraph about the different betas? In the contributing guide?

If yes, what do you think of this?

Release a beta Version

This package is able to create multiple types of betas:

  • A standard package beta, working on the latest version of Meilisearch.
  • A beta implementing the changes of a rc version of Meilisearch.
  • A beta implementing a specific feature prototype of Meilisearch.

Here are the steps to release a beta version of this package depending on its type:

@curquiza
Copy link
Member

curquiza commented Dec 7, 2022

A standard package beta, working on the latest version of Meilisearch.

Hum not, the latest Meilisearch beta, right? sorry, got it

Copy link
Member

@brunoocasali brunoocasali left a comment

Choose a reason for hiding this comment

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

LGTM! Very good, the comments helped a lot the code review!

@bidoubiwa
Copy link
Contributor Author

bors merge

@meili-bors
Copy link
Contributor

meili-bors bot commented Dec 8, 2022

@meili-bors meili-bors bot merged commit 8638bdf into main Dec 8, 2022
@meili-bors meili-bors bot deleted the add_beta_release_process branch December 8, 2022 10:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

skip-changelog The PR will not appear in the release changelogs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants