giraph-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject git commit: updated refs/heads/trunk to 8a40ce0
Date Fri, 18 Nov 2016 19:19:24 GMT
Repository: giraph
Updated Branches:
  refs/heads/trunk f89234214 -> 8a40ce0aa

GIRAPH-1124 - Create documentation on how to make Giraph release

Test Plan: mvn clean site

Reviewers: rvs, dionysis.logothetis

Reviewed By: dionysis.logothetis

Differential Revision:


Branch: refs/heads/trunk
Commit: 8a40ce0aad03838cbc3be7bf158f81e508ecde6f
Parents: f892342
Author: Sergey Edunov <>
Authored: Fri Nov 18 11:19:16 2016 -0800
Committer: Sergey Edunov <>
Committed: Fri Nov 18 11:19:16 2016 -0800

 src/site/site.xml                  |  1 +
 src/site/xdoc/releasing_giraph.xml | 90 +++++++++++++++++++++++++++++++++
 2 files changed, 91 insertions(+)
diff --git a/src/site/site.xml b/src/site/site.xml
index 96520c3..69b5cc9 100644
--- a/src/site/site.xml
+++ b/src/site/site.xml
@@ -101,6 +101,7 @@
     	<item name="Rexster I/O" href="rexster.html"/>
       <item name="How to generate patches?" href="generating_patches.html" />
+      <item name="How to release giraph?" href="releasing_giraph.html" />
       <item name="How to build this site?" href="build_site.html" />
diff --git a/src/site/xdoc/releasing_giraph.xml b/src/site/xdoc/releasing_giraph.xml
new file mode 100644
index 0000000..ca8e349
--- /dev/null
+++ b/src/site/xdoc/releasing_giraph.xml
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="UTF-8"?>
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+<document xmlns=""
+  xmlns:xsi=""
+  xsi:schemaLocation="">
+  <properties>
+    <title>Generating Patches</title>
+  </properties>
+  <body>
+  <section name="Generating patches" id="Generatingpatches">
+    <p>Releasing new version of Apache Giraph may take 2 weeks or more. Please, plan
+    <p>Follow these steps to release new version of Apache Giraph.</p>
+    <ul>
+      <li>Check out the Giraph source from the <a href="">git
+      <li>Make a release branch <tt>git checkout -b release-1.2; git push origin
+      <li>Once you have a release branch, setup continuous integration in Jenkins.
<a href="">See for example a setup for Giraph
1.2 release</a></li>
+      <li>Fix test cases and build errors until you have a clean build for both hadoop_1
and hadoop_2 profiles</li>
+      <li>Check JIRA tickets associated with this release and make sure you don't have
any open</li>
+      <li>When you have everything ready for the release, create a tag <tt>git
tag -a rel/1.2.0-RC1 -m "Preparing release 1.2.0"</tt></li>
+      <li>Do the license check: <tt>mvn apache-rat:check -Phadoop_1</tt>
 and make sure you don't have any issues <tt>grep '!?????' target/rat.txt</tt>
+      </li>
+      <li>When all of above are clean, you can do the build: <tt>mvn clean install
-Phadoop_1 -Prelease</tt>
+      If this command fails generating signatures <a href="">check
this page for more information</a></li>
+      <li>You can now get the prepared binaries, source files and signatures in <tt>giraph-dist/target/</tt></li>
+      <li>To generate remaining md5 and sha1 hashes, wou can use the following set
of commands:
+        <source>
+md5 -r * |grep -v asc | while read k f; do
+  echo $k > "$f.md5"
+shasum * |grep -v asc |grep -v md5 | while read k f; do
+  echo $k > "$f.sha1"
+        </source>
+      </li>
+      <li>Now you need to build release for hadoop_2. First, change version in all
pom.xml files:
+          <source>
+mvn versions:set -DnewVersion=1.2.0-hadoop2
+grep -R 'version.*1.2.0' . | grep pom.xml | grep -v hadoop2
+          </source>
+      Make sure the output of the second command is empty. Modify missed pom.xml manually
+      </li>
+      <li>Repeat steps for hadoop_2 profile:
+          <source>
+mvn apache-rat:check -Phadoop_2
+grep '!?????' target/rat.txt
+mvn clean install -Phadoop_2
+          </source>
+          Get release files from <tt>~/.m2/repository/org/apache/giraph/giraph-dist/1.2.0-hadoop2</tt>
and sign them.
+      </li>
+      <li>Finally make files available in dist SVN:
+          <tt>svn checkout</tt>
+          Make sure that the content there looks ok (try to build and run Giraph just from
those tarballs).
+      </li>
+      <li>
+      Configure your .m2/settings.xml as described <a href="">here</a>.
And deploy released artifacts to the maven repository:
+          <source>
+mvn -Prelease -Phadoop_1 deploy
+mvn -Prelease -Phadoop_2 deploy
+          </source>
+      </li>
+    </ul>
+  </section>
+  </body>

View raw message