HOWTO write the release notes » History » Revision 45
Revision 44 (David Galloway, 06/30/2021 03:55 PM) → Revision 45/58 (David Galloway, 06/30/2021 05:07 PM)
h1. Release Notes Prerequisites * Obtain a github API token and write it to <code>~/.github_token</code> on your workstation h1. ceph.git Release Notes *NOTE:* This will not work for hotfix releases because hotfixes usually don't have a PR. We backup the original branch, reset the branch to the previous point release, then manually commit the hotfix. You'll need to do the following process manually in these cases. grep the release notes files for 'hotfix' * git clone http://github.com/ceph/ceph (or git fetch to get the latest stable branch updates). Do *not* checkout the release branch as it does not have the *ceph-release-notes* script * run the following: <pre> # IF NEEDED git fetch origin nautilus:nautilus git fetch origin octopus:octopus git fetch origin pacific:pacific cd src/script virtualenv v source v/bin/activate pip3 install githubpy GitPython review requests # Replace 15.2.8 with whatever the previous stable release was # Replace 'octopus' with whatever release you're working on # Replace XXXXX with your GitHub API token python3 ./ceph-release-notes -r tags/v15.2.8..origin/octopus $(git rev-parse --show-toplevel) --token $(cat ~/.github_token) deactivate </pre> * Create a new branch either in your own fork of ceph.git or the actual ceph.git (but be careful and tidy!) * Edit <code>doc/releases/RELEASE.rst</code> <pre> vXX.X.X Branch ============== This is the Xth backport release in the RELEASE series. !! If there is a major change, it should be mentioned here. Ask sage, josh, and neha !! We recommend all users update to this release. Notable Changes --------------- * Copy them from here: https://github.com/ceph/ceph/blob/octopus/PendingReleaseNotes Changelog --------- * The bullet points output by <code>ceph-release-notes</code> should go here </pre> * create a pull request with this change and request reviews from: neha-ojha, batrick, jdurgin, liewegas, cbodley, sebastian-philipp, gregsfortytwo * In another PR targeting master, add the release to <code>doc/releases/index.rst</code> *AND* <code>doc/releases/releases.yml</code>. h3. Release Notes gotchas * The *ceph-release-notes* script requires that each pull request is prefixed with the component it relates to (mon, osd etc.). If that's not the case, it will display an error message such as <pre> ERROR: http://github.com/ceph/ceph/pull/4884 title Keystone PKI token expiration is not enforced does not match ^(?:hammer|infernalis|jewel|kraken): (cli|common|mon|osd|fs|librbd|rbd|fs|mds|objecter|rgw|build/ops|tests|tools|cmake|doc|crush|librados)(:.*) </pre> the pull request title must be edited to add the required prefix. * To run the script with githib token in ~/.github_token use *_--token $(cat ~/.github_token)_* h1. E-mail Release Notes <pre> To: ceph-announce@ceph.io, ceph-users@ceph.io, dev@ceph.io, ceph-maintainers@ceph.io Title: vXX.X.X RELEASE released Body: We're happy to announce the Xth backport release in the RELEASE series. !! If there is a major change, it should be mentioned here. Ask sage, josh, and neha !! We recommend users to update to this release. For a detailed release notes with links & changelog please refer to the official blog entry at https://ceph.io/releases/vXX-X-X-RELEASE-released Notable Changes --------------- * Copy bullet points from doc/releases/RELEASE.rst Getting Ceph ------------ * Git at git://github.com/ceph/ceph.git * Tarball at https://download.ceph.com/tarballs/ceph-XX.X.X.tar.gz * For packages, see https://docs.ceph.com/docs/master/install/get-packages/ * Release git sha1: $SHA1 </pre> h1. Website Release Notes This These instructions are for the Wordpress site. These will use v14.2.22 as an example. change when the new site is launched in 2021 (?). * Use Log in to the same <code>ceph-release-notes</code> script from Wordpress Admin panel * Go to https://ceph.io/wp-admin/edit.php * Mouse over a recent "released" blog post and click *Clone* * Click *Edit* on the ceph.git Release Notes section. Just replace <code>--text</code> with <code>--markdown</code> new cloned draft * Using the same script, <pre> ## EXAMPLE (v) dgalloway@p50 script (wip-md)$ python3 ./ceph-release-notes --markdown --html -r tags/v14.2.21..origin/nautilus tags/v15.2.8..origin/octopus $(git rev-parse --show-toplevel) --token $(cat ~/.github_token) .Considering PR#40121 </pre> .Considering PR#41137 .Considering PR#41167 . done collecting merges. - PendingReleaseNotes: note about 14.2.18 mgr fixes ([pr#40121](https://github.com/ceph/ceph/pull/40121), Josh Durgin) - bind on loopback address * Update the backport release # and RELEASE name if no other addresses are available ([pr#41137](https://github.com/ceph/ceph/pull/41137), Kefu Chai, Matthew Oliver) - build python extensions using distutils ([pr#41167](https://github.com/ceph/ceph/pull/41167), Kefu Chai) needed </pre> * If you haven't already, clone https://github.com/ceph/ceph.io Copy the notable changes from your e-mail <pre> git checkout main git pull git checkout -b 14222 cp -r src/en/news/blog/2021/v14-2-21-nautilus-released src/en/news/blog/2021/v14-2-22-nautilus-released vim src/en/news/blog/2021/v14-2-22-nautilus-released/index.md </pre> * Now do all your replacements. Get Copy the *Notable Changes* from output of <code>ceph-release-notes --html</code> under *Changelog* between the ceph.git PR. <code><u></u></code> tags. Get the Changelog from your <code>python3 ./ceph-release-notes --markdown</code> output above. <pre> git add . git commit -as -m "doc/releases: 14.2.22 Release Notes" git push origin 14222 </pre> * Wait for your https://14222.ceph.io/en/news/blog/2021/v14-2-22-nautilus-released/ You may need to be rendered click *Edit as HTML* * Make Be sure it looks good. If it does, create a PR to update the URL slug on the right toolbar