Project

General

Profile

HOWTO write the release notes » History » Version 44

David Galloway, 06/30/2021 03:55 PM

1 42 David Galloway
h1. Release Notes Prerequisites
2 43 David Galloway
3 42 David Galloway
* Obtain a github API token and write it to <code>~/.github_token</code> on your workstation
4
5 22 David Galloway
h1. ceph.git Release Notes
6
7 33 David Galloway
*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'
8
9 13 Loïc Dachary
* 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
10
* run the following:
11 5 Loïc Dachary
<pre>
12 38 David Galloway
# IF NEEDED
13
git fetch origin nautilus:nautilus
14
git fetch origin octopus:octopus
15
git fetch origin pacific:pacific
16 31 David Galloway
cd src/script
17 20 Nathan Cutler
virtualenv v
18 1 Loïc Dachary
source v/bin/activate
19 33 David Galloway
pip3 install githubpy GitPython review requests
20 22 David Galloway
# Replace 15.2.8 with whatever the previous stable release was
21 1 Loïc Dachary
# Replace 'octopus' with whatever release you're working on
22 22 David Galloway
# Replace XXXXX with your GitHub API token
23 44 David Galloway
python3 ./ceph-release-notes  -r tags/v15.2.8..origin/octopus $(git rev-parse --show-toplevel) --token $(cat ~/.github_token)
24 9 Loïc Dachary
deactivate
25 1 Loïc Dachary
</pre>
26 29 David Galloway
* Create a new branch either in your own fork of ceph.git or the actual ceph.git (but be careful and tidy!)
27 22 David Galloway
* Edit <code>doc/releases/RELEASE.rst</code>
28 1 Loïc Dachary
<pre>
29 22 David Galloway
vXX.X.X Branch
30
==============
31
32
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 !!
33
We recommend all users update to this release.
34
35
Notable Changes
36 1 Loïc Dachary
---------------
37 22 David Galloway
38
* Copy them from here: https://github.com/ceph/ceph/blob/octopus/PendingReleaseNotes
39 1 Loïc Dachary
40
Changelog
41
---------
42 22 David Galloway
43 29 David Galloway
* The bullet points output by <code>ceph-release-notes</code> should go here
44 1 Loïc Dachary
</pre>
45
* create a pull request with this change and request reviews from: neha-ojha, batrick, jdurgin, liewegas, cbodley, sebastian-philipp, gregsfortytwo
46 40 David Galloway
* In another PR targeting master, add the release to <code>doc/releases/index.rst</code> *AND* <code>doc/releases/releases.yml</code>.
47 29 David Galloway
48
h3. Release Notes gotchas
49
50
* 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
51 22 David Galloway
<pre>
52 29 David Galloway
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)(:.*)
53 26 David Galloway
</pre>
54 29 David Galloway
the pull request title must be edited to add the required prefix.
55 41 Yuri Weinstein
* To run the script with githib token in ~/.github_token use *_--token $(cat ~/.github_token)_*
56 22 David Galloway
57
h1. E-mail Release Notes
58
59
<pre>
60
To: ceph-announce@ceph.io, ceph-users@ceph.io, dev@ceph.io, ceph-maintainers@ceph.io
61
62
Title: vXX.X.X RELEASE released
63
64
Body:
65
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
66
67
Notable Changes
68
---------------
69
70
* Copy bullet points from doc/releases/RELEASE.rst
71
72
Getting Ceph
73
------------
74
* Git at git://github.com/ceph/ceph.git
75 39 David Galloway
* Tarball at https://download.ceph.com/tarballs/ceph-XX.X.X.tar.gz
76 37 David Galloway
* For packages, see https://docs.ceph.com/docs/master/install/get-packages/
77 22 David Galloway
* Release git sha1: $SHA1
78
</pre>
79
80
h1. Website Release Notes
81
82
These instructions are for the Wordpress site.  These will change when the new site is launched in 2021 (?).
83
84
* Log in to the Wordpress Admin panel
85
* Go to https://ceph.io/wp-admin/edit.php
86
* Mouse over a recent "released" blog post and click *Clone*
87
* Click *Edit* on the new cloned draft
88
* Using the same script,
89
<pre>
90 44 David Galloway
./ceph-release-notes --html -r tags/v15.2.8..origin/octopus $(git rev-parse --show-toplevel) --token $(cat ~/.github_token)
91 24 David Galloway
</pre>
92 22 David Galloway
* Update the backport release # and RELEASE name if needed
93
* Copy the notable changes from your e-mail
94 28 David Galloway
* Copy the output of <code>ceph-release-notes --html</code> under *Changelog* between the <code><u></u></code> tags.  You may need to click *Edit as HTML*
95
* Be sure to update the URL slug on the right toolbar