You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myriad.apache.org by ke...@apache.org on 2016/02/24 19:14:28 UTC
[1/3] incubator-myriad git commit: Scripts to help with Apache
Releases
Repository: incubator-myriad
Updated Branches:
refs/heads/master 3daab13e5 -> bcf277843
Scripts to help with Apache Releases
Project: http://git-wip-us.apache.org/repos/asf/incubator-myriad/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-myriad/commit/bf393cf9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-myriad/tree/bf393cf9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-myriad/diff/bf393cf9
Branch: refs/heads/master
Commit: bf393cf9b17a4f4970eb46ac16f9421201696dcb
Parents: 06f6ca4
Author: smarella <sm...@maprtech.com>
Authored: Wed Dec 9 23:28:31 2015 -0800
Committer: smarella <sm...@maprtech.com>
Committed: Wed Dec 9 23:28:31 2015 -0800
----------------------------------------------------------------------
support/apache-release/prepare_rc.sh | 102 +++++++++++++++++++++++++++++
support/apache-release/release.sh | 105 ++++++++++++++++++++++++++++++
2 files changed, 207 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-myriad/blob/bf393cf9/support/apache-release/prepare_rc.sh
----------------------------------------------------------------------
diff --git a/support/apache-release/prepare_rc.sh b/support/apache-release/prepare_rc.sh
new file mode 100755
index 0000000..e6c893d
--- /dev/null
+++ b/support/apache-release/prepare_rc.sh
@@ -0,0 +1,102 @@
+#!/usr/bin/env bash
+
+# 1. Tags the HEAD on the 'master' branch with
+# 'myriad-<version>-incubating-rc<RC#>'.
+# 2. Creates release artifacts and signs them with GPG key.
+# 3. Uploads the release artifacts to "dev" SVN.
+
+test ${#} -eq 2 || \
+ { echo "Usage: `basename ${0}` [myriad version] [rc #]"; exit 1; }
+
+VERSION=${1}
+RC=${2}
+
+TAG="myriad-${VERSION}-incubating-rc${RC}"
+GIT_URL="https://git-wip-us.apache.org/repos/asf/incubator-myriad.git"
+WORK_DIR="."
+
+echo "Preparing a release candidate ${TAG}.."
+
+TEMP="temp"
+# clone the repo to "temp"
+git clone $GIT_URL ${TEMP}|| \
+ { echo "Failed to clone Myriad from ${GIT_URL} into ${TEMP}"; exit 1; }
+
+# perform a build
+pushd ${TEMP}
+./gradlew build || \
+ { echo "Failed to build Myriad."; exit 1; }
+
+echo "Creating git tag ${TAG} and pushing to ${GIT_URL} ...${NORMAL}"
+git tag ${TAG}
+git push ${GIT_URL} refs/tags/${TAG}
+
+popd # temp
+
+# make a fresh clone that syncs to ${TAG}
+git clone $GIT_URL ${TAG} --branch ${TAG} || \
+ { echo "Failed to clone Myriad from ${GIT_URL}"; exit 1; }
+
+# Remove files/folders that shouldn't be included in the release artifacts
+rm -rf ${TAG}/website
+rm -rf ${TAG}/gradlew.bat
+rm -rf ${TAG}/gradlew
+rm -rf ${TAG}/gradle/wrapper
+rm -rf ${TAG}/.travis.yml
+rm -rf ${TAG}/myriad-scheduler/src/main/resources/banner.txt
+
+# Create a tar ball that excludes VCS files
+TARBALL=${TAG}.tar.gz
+tar -czf ${TARBALL} ${TAG} --exclude-vcs || \
+ { echo "Failed to create a tarball of ${TAG}"; exit 1; }
+
+# Sign the tarball.
+echo "Signing the distribution ..."
+gpg --armor --output ${TARBALL}.asc --detach-sig ${TARBALL} || \
+ { echo "Failed to sign the tarball ${TARBALL}"; exit 1; }
+
+# Create MD5 checksum.
+echo "Creating a MD5 checksum..."
+gpg --print-md MD5 ${TARBALL} > ${TARBALL}.md5 || \
+ { echo "Failed to create MD5 checksum for tarball ${TARBALL}"; exit 1; }
+
+# Create SHA512 checksum.
+echo "Creating a SHA512 checksum..."
+gpg --print-md SHA512 ${TARBALL} > ${TARBALL}.sha512 || \
+ { echo "Failed to create SHA512 checksum for tarball ${TARBALL}"; exit 1; }
+
+SVN_DEV_REPO="https://dist.apache.org/repos/dist/dev/incubator/myriad"
+SVN_DEV_LOCAL="${WORK_DIR}/dev"
+
+echo "Checking out svn dev repo from ${SVN_DEV_REPO}..."
+
+# Note '--depth=empty' ensures none of the existing files
+# in the repo are checked out, saving time and space.
+svn co --depth=empty ${SVN_DEV_REPO} ${SVN_DEV_LOCAL} || \
+ { echo "Failed to checkout SVN repo from ${SVN_DEV_REPO} to ${SVN_DEV_LOCAL}"; exit 1; }
+
+RELEASE_DIRECTORY="${SVN_DEV_LOCAL}/${TAG}"
+mkdir ${RELEASE_DIRECTORY}
+mv ${TARBALL} ${TARBALL}.asc ${TARBALL}.md5 ${TARBALL}.sha512 ${RELEASE_DIRECTORY}
+echo "Release artifacts moved into ${RELEASE_DIRECTORY}"
+
+pushd ${SVN_DEV_LOCAL}
+
+while true; do
+ read -p "PUSH THE ARTIFACTS TO ${SVN_DEV_REPO}/${TAG} ? " yn
+ case $yn in
+ [Yy]* ) break;;
+ [Nn]* ) echo "OK. Goodbye..!"; exit;;
+ * ) echo "Please answer yes or no.";;
+ esac
+done
+
+echo "Uploading the artifacts (the distribution," \
+ "signature, MD5 and SHA) to ${SVN_DEV_REPO}/${TAG} ...."
+
+svn add ${TAG}
+svn commit -m "Adding ${TAG}."
+popd # ${SVN_DEV_LOCAL}
+
+echo "All good!"
+
http://git-wip-us.apache.org/repos/asf/incubator-myriad/blob/bf393cf9/support/apache-release/release.sh
----------------------------------------------------------------------
diff --git a/support/apache-release/release.sh b/support/apache-release/release.sh
new file mode 100755
index 0000000..157fb19
--- /dev/null
+++ b/support/apache-release/release.sh
@@ -0,0 +1,105 @@
+#!/usr/bin/env bash
+
+# 1. Tags the successfully voted RC with
+# 'myriad-<version>-incubating'.
+# 2. Pushes the release tag to git.
+# 3. Deletes the previously tagged RC tags.
+# 4. Uploads the release artifacts to "release" SVN.
+# 5. Deletes the previously available RC artifacts from "dev" SVN.
+
+function askAndGo() {
+while true; do
+ read -p "$1 ?" yn
+ case $yn in
+ [Yy]* ) break;;
+ [Nn]* ) echo "OK. Goodbye..!"; exit;;
+ * ) echo "Please answer yes or no.";;
+ esac
+done
+}
+
+#main
+test ${#} -eq 2 || \
+ { echo "Usage: `basename ${0}` [myriad version] [voted rc#]"; exit 1; }
+
+VERSION=${1}
+RC=${2}
+
+RC_TAG="myriad-${VERSION}-incubating-rc${RC}"
+RELEASE_TAG="myriad-${VERSION}-incubating"
+GIT_URL="https://git-wip-us.apache.org/repos/asf/incubator-myriad.git"
+WORK_DIR="."
+
+echo "Preparing a release ${RELEASE_TAG}.."
+
+TEMP="temp"
+# clone the repo to "temp"
+git clone $GIT_URL ${TEMP}|| \
+ { echo "Failed to clone Myriad from ${GIT_URL} into ${TEMP}"; exit 1; }
+
+pushd ${TEMP}
+echo "Creating new release tag '${RELEASE_TAG}' and pushing it to ${GIT_URL} ..."
+git tag ${RELEASE_TAG} ${RC_TAG}
+echo "Git tags for version ${VERSION}: "
+git log --pretty=oneline --abbrev-commit --decorate | grep "tag:" | grep ${VERSION}
+askAndGo "Push tag '${RELEASE_TAG}' to ${GIT_URL}"
+git push origin refs/tags/${RELEASE_TAG}
+
+echo "Deleting (now) old RC git tags..."
+for i in `git tag -l | grep ${VERSION} | grep "rc"`;
+do
+ git tag -d ${i}
+ askAndGo "Delete tag '${i}' from ${GIT_URL}"
+ git push origin :refs/tags/${i}
+done
+popd # temp
+
+SVN_DEV_REPO="https://dist.apache.org/repos/dist/dev/incubator/myriad"
+SVN_RELEASE_REPO="https://dist.apache.org/repos/dist/release/incubator/myriad"
+SVN_DEV_LOCAL="${WORK_DIR}/dev"
+SVN_RELEASE_LOCAL="${WORK_DIR}/release"
+
+echo "Checking out svn dev repo from ${SVN_DEV_REPO} to ${SVN_DEV_LOCAL}..."
+svn co ${SVN_DEV_REPO} ${SVN_DEV_LOCAL} || \
+ { echo "Failed to checkout SVN repo from ${SVN_DEV_REPO} to ${SVN_DEV_LOCAL}"; exit 1; }
+
+echo "Checking out svn release repo from ${SVN_RELEASE_REPO} to ${SVN_RELEASE_LOCAL}..."
+svn co ${SVN_RELEASE_REPO} ${SVN_RELEASE_LOCAL} || \
+ { echo "Failed to checkout SVN repo from ${SVN_RELEASE_REPO} to ${SVN_RELEASE_LOCAL}"; exit 1; }
+
+mkdir ${SVN_RELEASE_LOCAL}/${RELEASE_TAG}
+echo "Copying release artifacts under ${SVN_DEV_LOCAL}/${RC_TAG} to ${SVN_RELEASE_LOCAL}/${RELEASE_TAG}..."
+cp ${SVN_DEV_LOCAL}/${RC_TAG}/${RC_TAG}.tar.gz ${SVN_RELEASE_LOCAL}/${RELEASE_TAG}/${RELEASE_TAG}.tar.gz
+cp ${SVN_DEV_LOCAL}/${RC_TAG}/${RC_TAG}.tar.gz.asc ${SVN_RELEASE_LOCAL}/${RELEASE_TAG}/${RELEASE_TAG}.tar.gz.asc
+cp ${SVN_DEV_LOCAL}/${RC_TAG}/${RC_TAG}.tar.gz.md5 ${SVN_RELEASE_LOCAL}/${RELEASE_TAG}/${RELEASE_TAG}.tar.gz.md5
+cp ${SVN_DEV_LOCAL}/${RC_TAG}/${RC_TAG}.tar.gz.sha512 ${SVN_RELEASE_LOCAL}/${RELEASE_TAG}/${RELEASE_TAG}.tar.gz.sha512
+
+pushd ${SVN_RELEASE_LOCAL}
+echo "Release artifacts under ${SVN_RELEASE_LOCAL}/${RELEASE_TAG}:"
+ls ${RELEASE_TAG}
+askAndGo "PUSH THE ${RELEASE_TAG} ARTIFACTS TO ${SVN_RELEASE_REPO}/${RELEASE_TAG}"
+svn add ${RELEASE_TAG}
+svn commit -m "Adding ${RELEASE_TAG}."
+popd # ${SVN_RELEASE_LOCAL}
+
+askAndGo "PROCEED TO DELETE OLD RCs FROM ${SVN_DEV_REPO}/"
+echo "Old RCs in ${SVN_DEV_REPO}:"
+ls ${SVN_DEV_LOCAL} | grep ${VERSION}
+
+### delete old RCs
+pushd ${SVN_DEV_LOCAL}
+for i in `ls | grep ${VERSION}`
+do
+ askAndGo "DELETE $i FROM ${SVN_DEV_REPO}/"
+ svn delete $i
+ svn commit -m "Deleting $i as ${RELEASE_TAG} is committed to ${SVN_RELEASE_REPO}."
+done
+popd # ${SVN_DEV_LOCAL}
+
+echo "All good!"
+askAndGo "Cleanup local repos"
+rm -rf ${TEMP}
+rm -rf ${SVN_DEV_LOCAL}
+rm -rf ${SVN_RELEASE_LOCAL}
+echo "All clean :)"
+
[2/3] incubator-myriad git commit: Exclude 'support' folder from
release sources
Posted by ke...@apache.org.
Exclude 'support' folder from release sources
Project: http://git-wip-us.apache.org/repos/asf/incubator-myriad/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-myriad/commit/c2ff1e6b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-myriad/tree/c2ff1e6b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-myriad/diff/c2ff1e6b
Branch: refs/heads/master
Commit: c2ff1e6b73b9b517e3397fc4046671cb30743272
Parents: bf393cf
Author: smarella <sm...@maprtech.com>
Authored: Wed Dec 9 23:31:21 2015 -0800
Committer: smarella <sm...@maprtech.com>
Committed: Wed Dec 9 23:31:21 2015 -0800
----------------------------------------------------------------------
support/apache-release/prepare_rc.sh | 1 +
1 file changed, 1 insertion(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-myriad/blob/c2ff1e6b/support/apache-release/prepare_rc.sh
----------------------------------------------------------------------
diff --git a/support/apache-release/prepare_rc.sh b/support/apache-release/prepare_rc.sh
index e6c893d..9a0182e 100755
--- a/support/apache-release/prepare_rc.sh
+++ b/support/apache-release/prepare_rc.sh
@@ -39,6 +39,7 @@ git clone $GIT_URL ${TAG} --branch ${TAG} || \
# Remove files/folders that shouldn't be included in the release artifacts
rm -rf ${TAG}/website
+rm -rf ${TAG}/support
rm -rf ${TAG}/gradlew.bat
rm -rf ${TAG}/gradlew
rm -rf ${TAG}/gradle/wrapper
[3/3] incubator-myriad git commit: This closes: #53 Review:
https://github.com/apache/incubator-myriad/pull/53
Posted by ke...@apache.org.
This closes: #53
Review: https://github.com/apache/incubator-myriad/pull/53
Project: http://git-wip-us.apache.org/repos/asf/incubator-myriad/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-myriad/commit/bcf27784
Tree: http://git-wip-us.apache.org/repos/asf/incubator-myriad/tree/bcf27784
Diff: http://git-wip-us.apache.org/repos/asf/incubator-myriad/diff/bcf27784
Branch: refs/heads/master
Commit: bcf277843bdc81d1e8d9f194282c93c51762d937
Parents: 3daab13 c2ff1e6
Author: Ken Sipe <ke...@gmail.com>
Authored: Wed Feb 24 12:13:54 2016 -0600
Committer: Ken Sipe <ke...@gmail.com>
Committed: Wed Feb 24 12:13:54 2016 -0600
----------------------------------------------------------------------
support/apache-release/prepare_rc.sh | 103 +++++++++++++++++++++++++++++
support/apache-release/release.sh | 105 ++++++++++++++++++++++++++++++
2 files changed, 208 insertions(+)
----------------------------------------------------------------------