This is an automated email from the ASF dual-hosted git repository.

bennoe pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/mesos.git

commit 0aa3df5147e7af55376677922561687e5a6f8753
Author: Benno Evers <[email protected]>
AuthorDate: Wed Jul 10 18:37:42 2019 +0200

    Updated release guide.
    
    Updated the release guide in `docs/release-guide.md` to match
    the de-facto process we're using to release new versions.
    
    Also mentioned some additional third-party tooling to the post-release
    desription.
    
    Review: https://reviews.apache.org/r/70528/
---
 docs/release-guide.md | 69 ++++++++++++++++++++++++++++++++++-----------------
 1 file changed, 46 insertions(+), 23 deletions(-)

diff --git a/docs/release-guide.md b/docs/release-guide.md
index a3ad266..88281d6 100644
--- a/docs/release-guide.md
+++ b/docs/release-guide.md
@@ -61,11 +61,25 @@ This guide describes the process of doing an official 
release of Mesos.
 
 ## Preparation
 
-1. Go to [Apache JIRA](https://issues.apache.org/jira/browse/MESOS) and make
+1. If this is a regular release, create a new release branch 
(<major>.<minor>.x)
+   based off the current master
+
+        $ git checkout origin/master -b X.Y.x
+
+   Now, update master branch to the *next*  minor version in `configure.ac`:
+   change `AC_INIT([mesos], [X.Y.Z]))`, as well as in `CMakeLists.txt`:
+   change `set(MESOS_MAJOR_VERSION X)`, `set(MESOS_MINOR_VERSION Y)`,
+   `set(MESOS_PATCH_VERSION Z)` and then commit.
+
+   If this is a patch release, use the existing release branch.
+
+2. Go to [Apache JIRA](https://issues.apache.org/jira/browse/MESOS) and make
    sure that the `CHANGELOG` for the release version is up to date.
 
-   **NOTE:** You should move all **Unresolved** tickets marked with `Fix 
Version`
-   or `Target Version` as the release version to the next release version.
+   **NOTE:** For all **Unresolved** tickets marked with `Fix Version` or
+   `Target Version` as the release version, try to negotiate with the
+   ticket owner or shepherd if the release should wait for the ticket to
+   be resolved or if the `Fix Version` should be bumped to the next version.
 
    **PROTIP:** Use a JIRA dashboard
    
[(example)](https://issues.apache.org/jira/secure/Dashboard.jspa?selectPageId=12329720)
@@ -79,11 +93,8 @@ This guide describes the process of doing an official 
release of Mesos.
    to **uncheck** the option that emails everyone about the move to avoid
    spamming.
 
-2. Checkout the correct branch for the release. For regular releases this is 
the
-   "master" branch. For patch releases this would be the corresponding release
-   branch (e.g., 1.0.x).
-
-3. Update and commit the `CHANGELOG` for the release.
+3. Update and commit the `CHANGELOG` for the release, on both the **master**
+   and the release branch.
 
    For regular releases:
 
@@ -114,8 +125,8 @@ This guide describes the process of doing an official 
release of Mesos.
    `Target Version` set but not `Fix Version`. Also check for any Unresolved
    or `Duplicate`/`Invalid` tickets that incorrectly set the `Fix Version`.
 
-   For patch releases update the `CHANGELOG` on master branch and then cherry
-   pick onto the release branch.
+   Update the `CHANGELOG` on master branch and then cherry pick onto the 
release
+   branch to ensure both versions stay in sync.
 
 4. Ensure version in `configure.ac` and `CMakeLists.txt` is correctly set for
    the release. Do not forget to remove "(WIP)" suffix from the release notes'
@@ -125,8 +136,8 @@ This guide describes the process of doing an official 
release of Mesos.
    changes.
 
 6. Update and commit `docs/configuration.md` to reflect the current state of
-   the master, agent, and configure flags. If this is a patch release, update
-   it on master branch and then cherry pick onto the release branch.
+   the master, agent, and configure flags. Update it on master branch and then
+   cherry pick onto the release branch.
 
 7. If this is a regular release, update and commit `docs/upgrades.md` with
    instructions about how to upgrade a live cluster from the previous release
@@ -180,17 +191,6 @@ This guide describes the process of doing an official 
release of Mesos.
    we allow a longer vote, to allow more time for integration testing.
 
 
-6. If this is a regular release, create a new release branch 
(<major>.<minor>.x)
-   from this tag.
-
-        $ git checkout -b X.Y.x
-
-   Now, update master branch to the *next*  minor version in `configure.ac`:
-   change `AC_INIT([mesos], [X.Y.Z]))`, as well as in `CMakeLists.txt`:
-   change `set(MESOS_MAJOR_VERSION X)`, `set(MESOS_MINOR_VERSION Y)`,
-   `set(MESOS_PATCH_VERSION Z)` and then commit.
-
-
 ## Preparing a New Release Candidate
 
 1. If the vote does not pass (any -1s or showstopper bugs), track the issues
@@ -300,3 +300,26 @@ Update the Mesos Homebrew package.
 2. Submit a PR to the [Homebrew 
repo](https://github.com/Homebrew/homebrew-core).
 
 3. Once accepted, verify that `brew install mesos` works.
+
+Upload the binary RPM packages to Bintray:
+
+1. Create/use a Bintray account with access to the [Bintray 
repo](https://bintray.com/apache/mesos).
+
+2. Trigger a build of the [CentOS packaging 
job](https://builds.apache.org/view/M-R/view/Mesos/job/Mesos/job/Packaging/job/CentosRPMs/)
+   in the Apache Jenkins using the `MESOS_TAG` of the version being released.
+
+3. Create a new Mesos version on bintray.
+
+4. Download the generated RPM artifacts from the Jenkins job above and upload 
them
+   to the new release on bintray.
+
+5. On the bintray website, navigate to the new release and click 'Publish 
Artifacts'.
+
+Update Wikipedia:
+
+1. Update the [Wikipedia article](https://en.wikipedia.org/wiki/Apache_Mesos) 
to mention the
+   latest stable release in the info box.
+
+Update Reddit: (optional)
+
+1. Add a post for the Release to the [Mesos 
Reddit](https://www.reddit.com/r/mesos/).

Reply via email to