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

[doc] Fix the release process #17470

Merged

Conversation

BewareMyPower
Copy link
Contributor

@BewareMyPower BewareMyPower commented Sep 5, 2022

Motivation

There are some wrong steps in the release process and the "Release
workflow" section is just a list and hard to verify directly.

Modifications

  • Add a "Preparation" section for what a release manager should do before
    the release process.
  • Remove the "Move master branch to next version" and "Write release
    notes" sections because they should be done in the last few steps and
    they have already been documented.
  • Add the steps to build Docker images before running the vote and simplify
    the following step by just copying approved candidate images from the
    personal account to the official apachepulsar account.
  • Skip the release of Helm Chart for patch releases.
  • Update the step to publish Python clients for macOS because we won't
    need the VirtualBox after [Python] Added script to generate Wheel files for MacOS #15024.
  • Remove the "Release workflow" section, which is hard to maintain.

Documentation

Check the box below or label this PR directly.

Need to update docs?

  • doc-required
    (Your PR needs to update docs and you will update later)

  • doc-not-needed
    (Please explain why)

  • doc
    (Your PR contains doc changes)

  • doc-complete
    (Docs have been already added)

### Motivation

There are some wrong steps in the release process and the "Release
workflow" section is just a list and hard to verify directly.

### Modifications

- Remove the "Move master branch to next version" and "Write release
  notes" sections because they should be done in the last few steps and
  they have already been documented.
- Add the steps to build Docker images when running the vote.
- Skip the release of Helm Chart for patch releases.
- Update the step to publish Python clients for macOS because we won't
  need the VirtualBox after apache#15024.

Regenerate the table of contents via `gh-md-toc` to replace the "Release
workflow" section. Then we can verify it by clicking the link to the
corresponding section.
@BewareMyPower BewareMyPower added the doc Your PR contains doc changes, no matter whether the changes are in markdown or code files. label Sep 5, 2022
@BewareMyPower BewareMyPower self-assigned this Sep 5, 2022
wiki/release/release-process.md Outdated Show resolved Hide resolved
wiki/release/release-process.md Outdated Show resolved Hide resolved
wiki/release/release-process.md Show resolved Hide resolved
wiki/release/release-process.md Outdated Show resolved Hide resolved
wiki/release/release-process.md Outdated Show resolved Hide resolved
wiki/release/release-process.md Show resolved Hide resolved
wiki/release/release-process.md Outdated Show resolved Hide resolved
wiki/release/release-process.md Outdated Show resolved Hide resolved
@BewareMyPower
Copy link
Contributor Author

@Jason918 I've updated the documents. PTAL again.

@Jason918
Copy link
Contributor

Jason918 commented Sep 6, 2022

@BewareMyPower This is a great improvement. I think we can send a discuss to mail-list to draw more attentions.

@BewareMyPower
Copy link
Contributor Author

@Jason918 Good suggestion. I have sent an email just now.

@BewareMyPower BewareMyPower changed the title [doc] Fix the release process and regenerate the table of contents [doc] Fix the release process Sep 6, 2022
@BewareMyPower
Copy link
Contributor Author

I have changed a lot based on the previous changes, PTAL again @Jason918 @tisonkun

@BewareMyPower
Copy link
Contributor Author

I will continue the release process of 2.8.4 from tomorrow and update this PR as well.

Copy link
Contributor

@Jason918 Jason918 left a comment

Choose a reason for hiding this comment

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

This process looks much cleaner now. Great work.

Copy link
Member

@tisonkun tisonkun left a comment

Choose a reason for hiding this comment

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

Thanks for your updates @BewareMyPower! Comments inline.

wiki/release/release-process.md Outdated Show resolved Hide resolved
wiki/release/release-process.md Outdated Show resolved Hide resolved
wiki/release/release-process.md Outdated Show resolved Hide resolved
wiki/release/release-process.md Outdated Show resolved Hide resolved
wiki/release/release-process.md Outdated Show resolved Hide resolved
wiki/release/release-process.md Outdated Show resolved Hide resolved
wiki/release/release-process.md Show resolved Hide resolved
Comment on lines +558 to +559

git commit -m 'Bumped version to 2.X.Y-SNAPSHOT' -a
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
git commit -m 'Bumped version to 2.X.Y-SNAPSHOT' -a
git add .
git commit -s -m 'Bumped version to 2.X.Y-SNAPSHOT'

In case of the files aren't tracked yet.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

No, we should not. Because set-project-version.sh will generate a new temporary file deployment/terraform-ansible/deploy-pulsar.yaml-e and unfortunately it's not included in .gitignore.

Copy link
Member

@tisonkun tisonkun Sep 15, 2022

Choose a reason for hiding this comment

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

I think we should add them to .gitignore instead, lol. But fair enough to keep as is.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yes, we should.

@BewareMyPower
Copy link
Contributor Author

@michaeljmarshall @Jason918 I have also adopted your suggestions in the email, see the new Preparation section.

Copy link
Contributor

@momo-jun momo-jun left a comment

Choose a reason for hiding this comment

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

Thanks for refreshing the process document! I left a few minor suggestions.

@BewareMyPower
Copy link
Contributor Author

Thanks for your comments @momo-jun, they're addressed now.

@BewareMyPower BewareMyPower merged commit a6fe5bb into apache:master Sep 15, 2022
@BewareMyPower BewareMyPower deleted the bewaremypower/release-process-enh branch September 15, 2022 13:22
codertmy pushed a commit to codertmy/pulsar that referenced this pull request Sep 16, 2022
### Motivation

There are some wrong steps in the release process and the "Release
workflow" section is just a list and hard to verify directly.

### Modifications

- Remove the "Move master branch to next version" and "Write release
  notes" sections because they should be done in the last few steps and
  they have already been documented.
- Add the steps to build Docker images when running the vote.
- Skip the release of Helm Chart for patch releases.
- Update the step to publish Python clients for macOS because we won't
  need the VirtualBox after apache#15024.

Regenerate the table of contents via `gh-md-toc` to replace the "Release
workflow" section. Then we can verify it by clicking the link to the
corresponding section.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
doc Your PR contains doc changes, no matter whether the changes are in markdown or code files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants