You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@giraph.apache.org by ed...@apache.org on 2016/11/18 19:19:24 UTC

git commit: updated refs/heads/trunk to 8a40ce0

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: https://reviews.facebook.net/D65313


Project: http://git-wip-us.apache.org/repos/asf/giraph/repo
Commit: http://git-wip-us.apache.org/repos/asf/giraph/commit/8a40ce0a
Tree: http://git-wip-us.apache.org/repos/asf/giraph/tree/8a40ce0a
Diff: http://git-wip-us.apache.org/repos/asf/giraph/diff/8a40ce0a

Branch: refs/heads/trunk
Commit: 8a40ce0aad03838cbc3be7bf158f81e508ecde6f
Parents: f892342
Author: Sergey Edunov <ed...@fb.com>
Authored: Fri Nov 18 11:19:16 2016 -0800
Committer: Sergey Edunov <ed...@fb.com>
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(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/giraph/blob/8a40ce0a/src/site/site.xml
----------------------------------------------------------------------
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>
       <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" />
     </menu>
   </body>

http://git-wip-us.apache.org/repos/asf/giraph/blob/8a40ce0a/src/site/xdoc/releasing_giraph.xml
----------------------------------------------------------------------
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
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+<document xmlns="http://maven.apache.org/XDOC/2.0"
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">
+  <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 accordingly.</p>
+    <p>Follow these steps to release new version of Apache Giraph.</p>
+    <ul>
+      <li>Check out the Giraph source from the <a href="http://git-wip-us.apache.org/repos/asf/giraph.git">git repository</a>.</li>
+      <li>Make a release branch <tt>git checkout -b release-1.2; git push origin release-1.2</tt></li>
+      <li>Once you have a release branch, setup continuous integration in Jenkins. <a href="https://builds.apache.org/job/Giraph-1.2/">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="http://www.apache.org/dev/release-signing.html">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"
+done
+
+shasum * |grep -v asc |grep -v md5 | while read k f; do
+  echo $k > "$f.sha1"
+done
+        </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 otherwise.
+      </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 https://dist.apache.org/repos/dist/dev/giraph/</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="http://www.apache.org/dev/publishing-maven-artifacts.html#dev-env">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>
+</document>