You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by we...@apache.org on 2017/05/02 19:13:49 UTC
arrow git commit: ARROW-936: fix release README
Repository: arrow
Updated Branches:
refs/heads/master 0eff2174f -> e794a598b
ARROW-936: fix release README
Author: Julien Le Dem <ju...@apache.org>
Closes #626 from julienledem/fix_README and squashes the following commits:
0489913 [Julien Le Dem] update README
e9f2aec [Julien Le Dem] move tag to rc; add set -e
38f5017 [Julien Le Dem] fix release README
Project: http://git-wip-us.apache.org/repos/asf/arrow/repo
Commit: http://git-wip-us.apache.org/repos/asf/arrow/commit/e794a598
Tree: http://git-wip-us.apache.org/repos/asf/arrow/tree/e794a598
Diff: http://git-wip-us.apache.org/repos/asf/arrow/diff/e794a598
Branch: refs/heads/master
Commit: e794a598b89427d5be0442b5009d61086a4af789
Parents: 0eff217
Author: Julien Le Dem <ju...@apache.org>
Authored: Tue May 2 15:13:41 2017 -0400
Committer: Wes McKinney <we...@twosigma.com>
Committed: Tue May 2 15:13:41 2017 -0400
----------------------------------------------------------------------
dev/release/00-prepare.sh | 34 +++++++++++-----------
dev/release/01-perform.sh | 1 +
dev/release/02-source.sh | 66 ++++++++++++++++++++----------------------
dev/release/README | 15 +++++++---
4 files changed, 60 insertions(+), 56 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/arrow/blob/e794a598/dev/release/00-prepare.sh
----------------------------------------------------------------------
diff --git a/dev/release/00-prepare.sh b/dev/release/00-prepare.sh
index 00af5e7..398f15d 100644
--- a/dev/release/00-prepare.sh
+++ b/dev/release/00-prepare.sh
@@ -17,30 +17,30 @@
# specific language governing permissions and limitations
# under the License.
#
+set -e
SOURCE_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
-if [ -z "$1" ]; then
- echo "Usage: $0 <version> <nextVersion>"
- exit
-fi
+if [ "$#" -eq 3 ]; then
+ version=$1
+ nextVersion=$2
+ nextVersionSNAPSHOT=${nextVersion}-SNAPSHOT
+ rcnum=$3
+ tag=apache-arrow-${version}-rc${rcnum}
-if [ -z "$2" ]; then
- echo "Usage: $0 <version> <nextVersion>"
- exit
-fi
+ echo "prepare release ${version} rc ${rcnum} on tag ${tag} then reset to version ${nextVersionSNAPSHOT}"
-version=$1
+ cd "${SOURCE_DIR}/../../java"
-tag=apache-arrow-${version}
+ mvn release:clean
+ mvn release:prepare -Dtag=${tag} -DreleaseVersion=${version} -DautoVersionSubmodules -DdevelopmentVersion=${nextVersionSNAPSHOT}
-nextVersion=$2
+ cd -
-cd "${SOURCE_DIR}/../../java"
+ echo "Finish staging binary artifacts by running: sh dev/release/01-perform.sh"
-mvn release:clean
-mvn release:prepare -Dtag=${tag} -DreleaseVersion=${version} -DautoVersionSubmodules -DdevelopmentVersion=${nextVersion}-SNAPSHOT
-
-cd -
+else
+ echo "Usage: $0 <version> <nextVersion> <rc-num>"
+ exit
+fi
-echo "Finish staging binary artifacts by running: sh dev/release/01-perform.sh"
http://git-wip-us.apache.org/repos/asf/arrow/blob/e794a598/dev/release/01-perform.sh
----------------------------------------------------------------------
diff --git a/dev/release/01-perform.sh b/dev/release/01-perform.sh
index d7140f6..876dae8 100644
--- a/dev/release/01-perform.sh
+++ b/dev/release/01-perform.sh
@@ -17,6 +17,7 @@
# specific language governing permissions and limitations
# under the License.
#
+set -e
SOURCE_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
http://git-wip-us.apache.org/repos/asf/arrow/blob/e794a598/dev/release/02-source.sh
----------------------------------------------------------------------
diff --git a/dev/release/02-source.sh b/dev/release/02-source.sh
index 924b94f..3bb7204 100755
--- a/dev/release/02-source.sh
+++ b/dev/release/02-source.sh
@@ -17,15 +17,11 @@
# specific language governing permissions and limitations
# under the License.
#
+set -e
SOURCE_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
-if [ -z "$1" ]; then
- echo "Usage: $0 <version> <rc-num>"
- exit
-fi
-
-if [ -z "$2" ]; then
+if [ "$#" -ne 2 ]; then
echo "Usage: $0 <version> <rc-num>"
exit
fi
@@ -38,42 +34,42 @@ if [ -d tmp/ ]; then
exit
fi
-tag=apache-arrow-$version
+tag=apache-arrow-${version}
tagrc=${tag}-rc${rc}
-echo "Preparing source for $tagrc"
+echo "Preparing source for ${tagrc}"
-release_hash=`git rev-list $tag 2> /dev/null | head -n 1 `
+release_hash=`git rev-list $tagrc 2> /dev/null | head -n 1 `
if [ -z "$release_hash" ]; then
- echo "Cannot continue: unknown git tag: $tag"
+ echo "Cannot continue: unknown git tag: $tagrc"
exit
fi
echo "Using commit $release_hash"
-tarball=$tag.tar.gz
+tarball=${tag}.tar.gz
extract_dir=tmp-apache-arrow
-rm -rf $extract_dir
+rm -rf ${extract_dir}
# be conservative and use the release hash, even though git produces the same
# archive (identical hashes) using the scm tag
-git archive $release_hash --prefix $extract_dir/ | tar xf -
+git archive ${release_hash} --prefix ${extract_dir}/ | tar xf -
# build Apache Arrow C++ before building Apache Arrow GLib because
# Apache Arrow GLib requires Apache Arrow C++.
-mkdir -p $extract_dir/cpp/build
-cpp_install_dir=$PWD/$extract_dir/cpp/install
-cd $extract_dir/cpp/build
+mkdir -p ${extract_dir}/cpp/build
+cpp_install_dir=${PWD}/${extract_dir}/cpp/install
+cd ${extract_dir}/cpp/build
cmake .. \
- -DCMAKE_INSTALL_PREFIX=$cpp_install_dir \
+ -DCMAKE_INSTALL_PREFIX=${cpp_install_dir} \
-DARROW_BUILD_TESTS=no
make -j8
make install
cd -
# build source archive for Apache Arrow GLib by "make dist".
-cd $extract_dir/c_glib
+cd ${extract_dir}/c_glib
./autogen.sh
./configure \
PKG_CONFIG_PATH=$cpp_install_dir/lib/pkgconfig \
@@ -84,38 +80,38 @@ tar xzf *.tar.gz
rm *.tar.gz
cd -
rm -rf tmp-c_glib/
-mv $extract_dir/c_glib/apache-arrow-glib-* tmp-c_glib/
-rm -rf $extract_dir
+mv ${extract_dir}/c_glib/apache-arrow-glib-* tmp-c_glib/
+rm -rf ${extract_dir}
# replace c_glib/ by tar.gz generated by "make dist"
-rm -rf $tag
-git archive $release_hash --prefix $tag/ | tar xf -
-rm -rf $tag/c_glib
-mv tmp-c_glib $tag/c_glib
-tar czf $tarball $tag
-rm -rf $tag
+rm -rf ${tag}
+git archive $release_hash --prefix ${tag}/ | tar xf -
+rm -rf ${tag}/c_glib
+mv tmp-c_glib ${tag}/c_glib
+tar czf ${tarball} ${tag}
+rm -rf ${tag}
-${SOURCE_DIR}/run-rat.sh $tarball
+${SOURCE_DIR}/run-rat.sh ${tarball}
# sign the archive
-gpg --armor --output ${tarball}.asc --detach-sig $tarball
-gpg --print-md MD5 $tarball > ${tarball}.md5
+gpg --armor --output ${tarball}.asc --detach-sig ${tarball}
+gpg --print-md MD5 ${tarball} > ${tarball}.md5
shasum $tarball > ${tarball}.sha
# check out the arrow RC folder
svn co --depth=empty https://dist.apache.org/repos/dist/dev/arrow tmp
# add the release candidate for the tag
-mkdir -p tmp/$tagrc
-cp ${tarball}* tmp/$tagrc
-svn add tmp/$tagrc
-svn ci -m 'Apache Arrow $version RC${rc}' tmp/$tagrc
+mkdir -p tmp/${tagrc}
+cp ${tarball}* tmp/${tagrc}
+svn add tmp/${tagrc}
+svn ci -m 'Apache Arrow ${version} RC${rc}' tmp/${tagrc}
# clean up
rm -rf tmp
echo "Success! The release candidate is available here:"
-echo " https://dist.apache.org/repos/dist/dev/arrow/$tagrc"
+echo " https://dist.apache.org/repos/dist/dev/arrow/${tagrc}"
echo ""
-echo "Commit SHA1: $release_hash"
+echo "Commit SHA1: ${release_hash}"
http://git-wip-us.apache.org/repos/asf/arrow/blob/e794a598/dev/release/README
----------------------------------------------------------------------
diff --git a/dev/release/README b/dev/release/README
index 0740203..265a234 100644
--- a/dev/release/README
+++ b/dev/release/README
@@ -1,17 +1,24 @@
requirements:
- being a committer to be able to push to dist and maven repository
- a gpg key to sign the artifacts
+- use java 7. check your JAVA_HOME environment variable (at least for now. See ARROW-930)
+- have the build requirements for cpp and c_glibg installed (see their README)
to release, run the following (replace 0.1.0 with version to release):
#create a release branch
git co -b release-0_1_0
-# prepare release v 0.1.0 (run tests, sign artifacts). Next version will be 0.1.1-SNAPSHOT
-dev/release/00-prepare.sh 0.1.0 0.1.1
+#setup gpg agent for signing artifacts
+source dev/release/setup-gpg-agent.sh
+
+# prepare release v 0.1.0 (run tests, sign artifacts). Next version will be 0.1.1-SNAPSHOT, RC 0
+sh dev/release/00-prepare.sh 0.1.0 0.1.1 0
+# push the tag
+git push apache apache-arrow-0.1.0-rc0
# tag and push to maven repo (repo will have to be finalized separately)
-dev/release/01-perform.sh
+sh dev/release/01-perform.sh
# create the source release
-dev/release/02-source.sh 0.1.0 0
+sh dev/release/02-source.sh 0.1.0 0
useful commands:
- to set the mvn version in the poms