Skip to content
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

Prepare release 0.32.0 #2992

Closed
39 of 40 tasks
gabrielmer opened this issue Aug 21, 2024 · 2 comments
Closed
39 of 40 tasks

Prepare release 0.32.0 #2992

gabrielmer opened this issue Aug 21, 2024 · 2 comments
Assignees
Labels
release Tracks releases

Comments

@gabrielmer
Copy link
Contributor

gabrielmer commented Aug 21, 2024

Items to complete

All items below are to be completed by the owner of the given release.

  • Create release branch

  • Assign release candidate tag to the release branch HEAD. e.g. v0.30.0-rc.0

  • Generate and edit releases notes in CHANGELOG.md

  • End user impact: Summarize impact of changes on Status end users (can be a comment in this issue).

  • Validate release candidate

  • Automated testing

    • Ensures js-waku tests are green against release candidate

    • Ask Vac-QA and Vac-DST to perform available tests against release candidate

    • On Waku fleets

      • Lock waku.test fleet to release candidate version
      • Continuously stress waku.test fleet for a week (e.g. from wakudev)
      • Search Kibana logs from the previous month (since last release was deployed), for possible crashes or errors in waku.test and waku.sandbox.
        • Most relevant logs are (fleet: "waku.test" OR fleet: "waku.sandbox") AND message: "SIGSEGV"
      • Run release candidate with waku-simulator, ensure that nodes connected to each other
      • Unlock waku.test to resume auto-deployment of latest master commit
    • On Status fleet

      • Deploy release candidate to status.staging
      • Perform sanity check 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 end user impact
      • Inform other (Waku and Status) CCs to point their instance to status.staging for a few days. Ping Status colleagues from their Discord server or Status community (not blocking point.)
      • Ask Status-QA to perform sanity checks (as described above) + checks based on end user impact; do 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 comment on this PR "used app for a week, no problem", or problem reported, resolved and new RC
      • Get Status-QA sign-off. Ensuring that status.test update will not disturb ongoing activities.
  • Proceed with release

    • Assign a release tag to the same commit that contains the validated release-candidate tag
    • Create GitHub release
    • Deploy the release to DockerHub
    • Announce the release
  • Promote release to fleets.

  • Post release

    • Submit a PR from the release branch to master. Important to commit the PR with "create a merge commit" option.
    • Update waku-org/nwaku-compose with the new release version.
@gabrielmer gabrielmer added the release Tracks releases label Aug 21, 2024
@gabrielmer gabrielmer self-assigned this Aug 21, 2024
@gabrielmer
Copy link
Contributor Author

For Status the impact of this release would be:

  • Improved store query times by 32f2d85d and 4d47aa65
  • Improved Waku Peer Exchange responses only with peers in the relevant cluster

@gabrielmer
Copy link
Contributor Author

Peer discovery, message delivery and store queries look healthy

Screenshot 2024-08-24 at 14 38 40 Screenshot 2024-08-24 at 14 45 21 Screenshot 2024-08-24 at 14 45 35

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
release Tracks releases
Projects
Archived in project
Development

No branches or pull requests

1 participant