Skip to content

docs(maintaining): add process for release managers #3360

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 6 commits into from
May 14, 2021

Conversation

jsjoeio
Copy link
Contributor

@jsjoeio jsjoeio commented May 11, 2021

Proposal

This a proposal to add process around releases with "Release Managers".

Summary: rotate which maintainer cuts a new release.

How it works now:

  1. random maintainer cuts release
  2. random maintainer creates new version milestone
  3. random maintainer closes previous version milestone

How it will work with proposed approach:

  1. introduces "release manager" role to own release
  2. release manager owns cutting release, creating new version milestone and creating an issue to track next release

Pros

  • reinforces our philosophy -> each PR should have an issue attached (now releases will have issues)
  • explicitly states who owns current release
  • gives each maintainer an opportunity to own a release

Cons

  • adds a couple extra steps to release process
  • requires all maintainers to participate in release process (which may discourage contributions for those who don't care to partake)
  • some extra manual steps (creating a release issue)

Alternatives

  • stick with current process ("if it's not broken, don't fix it")
  • automate creating the release issue
    • add job to publish workflow to automatically create issue using gh

Changes

  • add issue template for release
  • simplify steps in release_template.md
  • remove old steps in ci/README.md
  • update release-prep.sh to not modify CHANGELOG.md
  • document "Release Manager Rotation"

Checklist

  • update CHANGELOG

@codecov
Copy link

codecov bot commented May 11, 2021

Codecov Report

Merging #3360 (56232fa) into main (509d91d) will decrease coverage by 0.26%.
The diff coverage is n/a.

❗ Current head 56232fa differs from pull request most recent head 2438fb3. Consider uploading reports for the commit 2438fb3 to get more accurate results
Impacted file tree graph

@@            Coverage Diff             @@
##             main    #3360      +/-   ##
==========================================
- Coverage   59.21%   58.95%   -0.27%     
==========================================
  Files          35       35              
  Lines        1709     1703       -6     
  Branches      379      374       -5     
==========================================
- Hits         1012     1004       -8     
- Misses        559      561       +2     
  Partials      138      138              
Impacted Files Coverage Δ
src/node/util.ts 50.00% <0.00%> (-5.24%) ⬇️
src/node/wsRouter.ts 92.00% <0.00%> (ø)
src/node/socket.ts 90.00% <0.00%> (+0.16%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 509d91d...2438fb3. Read the comment docs.

@jsjoeio jsjoeio self-assigned this May 11, 2021
@jsjoeio jsjoeio added the docs Documentation related label May 11, 2021
@jsjoeio jsjoeio added this to the v3.11.0 milestone May 11, 2021
@jsjoeio jsjoeio changed the title jsjoeio/document-release-manager docs(maintaining): add process for release managers May 11, 2021
@jsjoeio jsjoeio marked this pull request as ready for review May 11, 2021 23:09
@jsjoeio jsjoeio requested a review from a team as a code owner May 11, 2021 23:09
@jsjoeio jsjoeio requested review from code-asher and oxy May 11, 2021 23:10
@jawnsy
Copy link
Contributor

jawnsy commented May 11, 2021

Added @deansheather as a reviewer (optional), in case he has pearls of wisdom to share from his experience as the release manager for Coder 😄

Also added @nathanpotter and @ketang in case they're interested. The final decision on this proposal belongs to the code-server team though.


## Release Manager Rotation

With each release, we rotate the role of "release manager" to ensure every maintainer goes thorugh the process. This helps us keep documentation up-to-date and encourages us to continually review and improve the flow with each set of eyes.
Copy link
Member

Choose a reason for hiding this comment

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

You should document the rotation with names

Copy link
Contributor Author

Choose a reason for hiding this comment

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

My thinking was having an issue with the release version assigned to the release manager was sufficient. Do you think that's not enough?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

And since the release issue is created by the previous release manager and assigned to the next release manager, we have both pieces of data:

  • previous release manager (creator of issue)
  • next release manager (assignee of issue)

Copy link

@oxy oxy left a comment

Choose a reason for hiding this comment

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

We can remove the note about double-checking the branch of the tagged commit (since moving from hub to gh made it no longer mangle the tag), and there's a heading depth nit, but otherwise looking good!

@jsjoeio jsjoeio force-pushed the jsjoeio/document-release-manager branch 2 times, most recently from 6e293f2 to 6f08804 Compare May 12, 2021 21:32
@jsjoeio jsjoeio requested a review from oxy May 12, 2021 21:35
@jsjoeio
Copy link
Contributor Author

jsjoeio commented May 12, 2021

Addressed changes. Ready for a second pass @oxy @code-asher 👀

@jsjoeio jsjoeio force-pushed the jsjoeio/document-release-manager branch 2 times, most recently from 56232fa to 01852ae Compare May 13, 2021 22:06
@jsjoeio jsjoeio added the chore Related to maintenance or clean up label May 14, 2021
Copy link

@oxy oxy left a comment

Choose a reason for hiding this comment

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

Looks good!

@jsjoeio jsjoeio force-pushed the jsjoeio/document-release-manager branch from 01852ae to 27a485c Compare May 14, 2021 17:44
@jsjoeio jsjoeio enabled auto-merge May 14, 2021 17:44
@jsjoeio jsjoeio removed request for ketang and nathanpotter May 14, 2021 23:08
@jsjoeio jsjoeio force-pushed the jsjoeio/document-release-manager branch from 27a485c to 2438fb3 Compare May 14, 2021 23:09
@jsjoeio jsjoeio merged commit a3663f5 into main May 14, 2021
@jsjoeio jsjoeio deleted the jsjoeio/document-release-manager branch May 14, 2021 23:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
chore Related to maintenance or clean up docs Documentation related
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants