-
Notifications
You must be signed in to change notification settings - Fork 79
chore: new release process ( beta and full ) #3647
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from 9 commits
Commits
Show all changes
13 commits
Select commit
Hold shift + click to select a range
c4b1faf
chore: initial update of release-process
darshankabariya 1b13005
chore: prepare release guide
darshankabariya 452cffb
chore: prepare release guide
darshankabariya d063b88
chore: update release template
darshankabariya 8451b57
chore: update release process md
darshankabariya 18ab0ca
chore: update release process md
darshankabariya d40697d
Merge branch 'master' into release_process_update
darshankabariya 8007bb3
chore: prepare release guide
darshankabariya d32cac2
Merge branch 'master' into release_process_update
darshankabariya 0bafaa0
update again
darshankabariya 35a017e
update again
darshankabariya ca07878
update again
darshankabariya 64a3cc1
update again
darshankabariya File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change | ||||||
|---|---|---|---|---|---|---|---|---|
| @@ -0,0 +1,54 @@ | ||||||||
| --- | ||||||||
| name: Prepare Beta Release | ||||||||
| about: Execute tasks for the creation and publishing of a new release | ||||||||
| title: 'Prepare beta release 0.0.0' | ||||||||
| labels: beta-release | ||||||||
| assignees: '' | ||||||||
|
|
||||||||
| --- | ||||||||
|
|
||||||||
| <!-- | ||||||||
| Add appropriate release number to title! | ||||||||
|
|
||||||||
| For detailed info on the release process refer to https://github.com/waku-org/nwaku/blob/master/docs/contributors/release-process.md | ||||||||
| --> | ||||||||
|
|
||||||||
| ### Items to complete | ||||||||
|
|
||||||||
| All items below are to be completed by the owner of the given release, and they assume a beta release has been created before and release branch already exists. | ||||||||
darshankabariya marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||||||||
|
|
||||||||
| - [ ] Assign release candidate tag to the release branch HEAD. e.g. v0.X.0-beta-rc.0..N etc. | ||||||||
darshankabariya marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||||||||
| - [ ] Generate and edit release notes in CHANGELOG.md | ||||||||
|
|
||||||||
| - [ ] **Waku test and fleets validation** | ||||||||
| - [ ] Ensure all the unit tests (specifically js-waku tests) are green against the release candidate. | ||||||||
| - [ ] Deploy the release candidate to `waku.test` and `waku.sandbox` fleets. | ||||||||
| - Start the [deployment job](https://ci.infra.status.im/job/nim-waku/) for both fleets and wait for it to finish (Jenkins access required; ask the infra team if you don't have it). | ||||||||
darshankabariya marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||||||||
| - After completion, lock both fleets to the release candidate version. | ||||||||
darshankabariya marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||||||||
| - Verify the lock status at https://fleets.waku.org/. | ||||||||
darshankabariya marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||||||||
| - Confirm the container image exists on [Harbor](https://harbor.status.im/harbor/projects/9/repositories/nwaku/artifacts-tab). | ||||||||
| - [ ] Analyze Kibana logs from the previous month (since the last release was deployed) for possible crashes or errors in `waku.test` and `waku.sandbox`. | ||||||||
| - Most relevant logs are `(fleet: "waku.test" AND message: "SIGSEGV")` OR `(fleet: "waku.sandbox" AND message: "SIGSEGV")` | ||||||||
| - [ ] Unlock `waku.test` and `waku.sandbox` to resume auto-deployment of the latest `master` commit | ||||||||
darshankabariya marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||||||||
|
|
||||||||
| - [ ] **Proceed with release** | ||||||||
|
|
||||||||
| - [ ] Assign a final release tag ( v0.X.0-beta ) to the same commit that contains the validated release-candidate tag (e.g. v0.X.0-beta-rc.N) and submit a PR from the release branch to master. | ||||||||
| - [ ] Update [nwaku-compose](https://github.com/waku-org/nwaku-compose) and [waku-simulator](https://github.com/waku-org/waku-simulator) according to the new release. | ||||||||
| - [ ] Bump nwaku dependency in [waku-rust-bindings](https://github.com/waku-org/waku-rust-bindings) and make sure all examples and tests work. | ||||||||
| - [ ] Bump nwaku dependency in [waku-go-bindings](https://github.com/waku-org/waku-go-bindings) and make sure all tests work | ||||||||
| - [ ] Create GitHub release (https://github.com/waku-org/nwaku/releases) | ||||||||
|
|
||||||||
darshankabariya marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||||||||
| - [ ] **Promote release to fleets**. | ||||||||
| - [ ] Ask the PM lead to announce the release. | ||||||||
| - [ ] Update infra config with any deprecated arguments or changed options. | ||||||||
|
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||
|
|
||||||||
| ### Links | ||||||||
|
|
||||||||
| - [Release process](https://github.com/waku-org/nwaku/blob/master/docs/contributors/release-process.md) | ||||||||
| - [Release notes](https://github.com/waku-org/nwaku/blob/master/CHANGELOG.md) | ||||||||
| - [Fleet ownership](https://www.notion.so/Fleet-Ownership-7532aad8896d46599abac3c274189741?pvs=4#d2d2f0fe4b3c429fbd860a1d64f89a64) | ||||||||
| - [Infra-nim-waku](https://github.com/status-im/infra-nim-waku) | ||||||||
| - [Jenkins](https://ci.infra.status.im/job/nim-waku/) | ||||||||
| - [Fleets](https://fleets.waku.org/) | ||||||||
| - [Harbor](https://harbor.status.im/harbor/projects/9/repositories/nwaku/artifacts-tab) | ||||||||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -0,0 +1,77 @@ | ||||||
| --- | ||||||
| name: Prepare Full Release | ||||||
| about: Execute tasks for the creation and publishing of a new release | ||||||
| title: 'Prepare full release 0.0.0' | ||||||
| labels: full-release | ||||||
| assignees: '' | ||||||
|
|
||||||
| --- | ||||||
|
|
||||||
| <!-- | ||||||
| Add appropriate release number to title! | ||||||
|
|
||||||
| For detailed info on the release process refer to https://github.com/waku-org/nwaku/blob/master/docs/contributors/release-process.md | ||||||
| --> | ||||||
|
|
||||||
| ### Items to complete | ||||||
|
|
||||||
| All items below are to be completed by the owner of the given release. | ||||||
|
|
||||||
| - [ ] Create release branch ( e.g. release/v0.X.0-beta ) | ||||||
| - [ ] Assign release candidate tag to the release branch HEAD. e.g. v0.X.0-beta-rc.0..N etc. | ||||||
| - [ ] Generate and edit release notes in CHANGELOG.md | ||||||
| - [ ] Review possible updates to [config-options](https://github.com/waku-org/docs.waku.org/blob/develop/docs/guides/nwaku/config-options.md) | ||||||
| - [ ] _End user impact_: Summarize impact of changes on Status end users (can be a comment in this issue). | ||||||
Ivansete-status marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||||||
|
|
||||||
| - [ ] **Validation of release candidate** | ||||||
|
|
||||||
| - [ ] **Automated testing** | ||||||
| - [ ] Ensure all the unit tests (specifically js-waku tests) are green against the release candidate. | ||||||
| - [ ] Ask Vac-QA and Vac-DST to perform the available tests against the release candidate | ||||||
| - [ ] Vac-DST (an additional report is needed; see [this](https://www.notion.so/DST-Reports-1228f96fb65c80729cd1d98a7496fe6f)) | ||||||
|
|
||||||
| - [ ] **Waku fleet testing** | ||||||
| - [ ] Deploy the release candidate to `waku.test` and `waku.sandbox` fleets. | ||||||
| - Start the [deployment job](https://ci.infra.status.im/job/nim-waku/) for both fleets and wait for it to finish (Jenkins access required; ask the infra team if you don't have it). | ||||||
| - After completion, lock both fleets to the release candidate version. | ||||||
| - Verify the lock status at https://fleets.waku.org/. | ||||||
| - Confirm the container image exists on [Harbor](https://harbor.status.im/harbor/projects/9/repositories/nwaku/artifacts-tab). | ||||||
| - [ ] Search _Kibana_ logs from the previous month (since the last release was deployed) for possible crashes or errors in `waku.test` and `waku.sandbox`. | ||||||
| - Most relevant logs are `(fleet: "waku.test" AND message: "SIGSEGV")` OR `(fleet: "waku.sandbox" AND message: "SIGSEGV")` | ||||||
| - [ ] Unlock `waku.test` and `waku.sandbox` to resume auto-deployment of the latest `master` commit | ||||||
|
|
||||||
| - [ ] **Status fleet testing** | ||||||
| - [ ] Deploy release candidate to `status.staging` | ||||||
| - [ ] Perform [sanity check](https://www.notion.so/How-to-test-Nwaku-on-Status-12c6e4b9bf06420ca868bd199129b425) and log results as comments in this issue. | ||||||
| - [ ] Connect 2 instances to `status.staging` fleet, one in relay mode, the other one in light client. | ||||||
| - 1:1 Chats with each other | ||||||
| - Send and receive messages in a community | ||||||
| - Close one instance, send messages with second instance, reopen first instance and confirm messages sent while offline are retrieved from store | ||||||
| - [ ] Perform checks based on _end user impact_ | ||||||
| - [ ] Inform other (Waku and Status) CCs to point their instances to `status.staging` for a few days. Ping Status colleagues on their Discord server or in the [Status community](https://status.app/c/G3kAAMSQtb05kog3aGbr3kiaxN4tF5xy4BAGEkkLwILk2z3GcoYlm5hSJXGn7J3laft-tnTwDWmYJ18dP_3bgX96dqr_8E3qKAvxDf3NrrCMUBp4R9EYkQez9XSM4486mXoC3mIln2zc-TNdvjdfL9eHVZ-mGgs=#zQ3shZeEJqTC1xhGUjxuS4rtHSrhJ8vUYp64v6qWkLpvdy9L9) (this is not a blocking point.) | ||||||
| - [ ] Ask Status-QA to perform sanity checks (as described above) and checks based on _end user impact_; specify the version being tested | ||||||
| - [ ] Ask Status-QA or infra to run the automated Status e2e tests against `status.staging` | ||||||
| - [ ] Get other CCs' sign-off: they should comment on this PR, e.g., "Used the app for a week, no problem." If problems are reported, resolve them and create a new RC. | ||||||
| - [ ] **Get Status-QA sign-off**, ensuring that the `status.test` update will not disturb ongoing activities. | ||||||
|
|
||||||
| - [ ] **Proceed with release** | ||||||
|
|
||||||
| - [ ] Assign a final release tag ( v0.X.0 ) to the same commit that contains the validated release-candidate tag (e.g. v0.X.0-beta) | ||||||
|
||||||
| - [ ] Assign a final release tag ( v0.X.0 ) to the same commit that contains the validated release-candidate tag (e.g. v0.X.0-beta) | |
| - [ ] Assign a final release tag ( v0.X.0 ) to the same commit that contains the validated release-candidate tag (e.g. v0.X.0) |
darshankabariya marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
darshankabariya marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.