You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ro...@apache.org on 2016/12/09 16:40:12 UTC

qpid-cpp git commit: QPID-7584: add some details/helpers for doing qpid-cpp release

Repository: qpid-cpp
Updated Branches:
  refs/heads/master d092e5295 -> 1f8acbd98


QPID-7584: add some details/helpers for doing qpid-cpp release


Project: http://git-wip-us.apache.org/repos/asf/qpid-cpp/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-cpp/commit/1f8acbd9
Tree: http://git-wip-us.apache.org/repos/asf/qpid-cpp/tree/1f8acbd9
Diff: http://git-wip-us.apache.org/repos/asf/qpid-cpp/diff/1f8acbd9

Branch: refs/heads/master
Commit: 1f8acbd9893bb503512451c3e92e776a612153c0
Parents: d092e52
Author: Robert Gemmell <ro...@apache.org>
Authored: Fri Dec 9 16:39:48 2016 +0000
Committer: Robert Gemmell <ro...@apache.org>
Committed: Fri Dec 9 16:39:48 2016 +0000

----------------------------------------------------------------------
 RELEASE.md    | 31 +++++++++++++++++++++
 bin/export.sh | 81 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 112 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/qpid-cpp/blob/1f8acbd9/RELEASE.md
----------------------------------------------------------------------
diff --git a/RELEASE.md b/RELEASE.md
new file mode 100644
index 0000000..bce8734
--- /dev/null
+++ b/RELEASE.md
@@ -0,0 +1,31 @@
+### Building a release for vote:
+
+1. Grab a clean checkout for safety.
+2. Run: "git checkout ${BRANCH}" to switch to branch of the intended release point.
+3. Update the versions etc:
+  - VERSION.txt
+  - management/python/setup.py
+  - docs/man/qpidd.1 (and the date)
+  - src/amqp.cmake (ensure current proton release is marked tested)
+4. Commit the changes, tag them.
+  - Run: "git add ."
+  - Run: 'git commit -m "update versions for ${TAG}"'
+  - Run: 'git tag -m "tag ${TAG}" ${TAG}'
+  - Push changes. Optionally save this bit for later.
+5. Run: "bin/export.sh $PWD ${TAG}" to create the qpid-cpp-${TAG}.tar.gz release archive.
+6. Create signature and checksums for the archive:
+  - Rename if needed, e.g "mv qpid-cpp-${TAG}.tar.gz qpid-cpp-${VERSION}.tar.gz"
+  - e.g "gpg --detach-sign --armor qpid-cpp-${VERSION}.tar.gz"
+  - e.g "sha1sum qpid-cpp-${VERSION}.tar.gz > qpid-cpp-${VERSION}.tar.gz.sha1"
+  - e.g "md5sum qpid-cpp-${VERSION}.tar.gz > qpid-cpp-${VERSION}.tar.gz.md5"
+7. Commit artifacts to dist dev repo in https://dist.apache.org/repos/dist/dev/qpid/cpp/${TAG} dir.
+8. Bump the branch versions to next 1.x.y-SNAPSHOT (and master if it wasn't already).
+9. Send email, provide links to dist dev repo
+
+### After a vote succeeds:
+
+1. Tag the RC with the final name/version.
+2. Commit the artifacts to dist release repo in https://dist.apache.org/repos/dist/release/qpid/cpp/${VERSION} dir:
+3. Give the mirrors some time to distribute things.
+4. Update the website with release content.
+5. Send release announcement email.

http://git-wip-us.apache.org/repos/asf/qpid-cpp/blob/1f8acbd9/bin/export.sh
----------------------------------------------------------------------
diff --git a/bin/export.sh b/bin/export.sh
new file mode 100755
index 0000000..6b751ad
--- /dev/null
+++ b/bin/export.sh
@@ -0,0 +1,81 @@
+#!/bin/bash
+
+#
+# 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.
+#
+
+# export.sh - Create a release archive.
+set -e
+trap "cleanup" 0 1 2 3 9 11 13 15
+
+ME=$(basename ${0})
+SRC=$(dirname $(dirname $(readlink -f $0)))
+
+usage()
+{
+    echo
+    echo "Usage: ${ME} [DIR] [TAG]"
+    exit 1
+}
+
+cleanup()
+{
+    trap - 0 1 2 3 9 11 13 15
+    echo
+    [ ${WORKDIR} ] && [ -d ${WORKDIR} ] && rm -rf ${WORKDIR}
+}
+
+DIR=$PWD
+TAG=$(git describe --tags --always)
+
+##
+## Allow overrides to be passed on the cmdline
+##
+if [ $# -gt 2 ]; then
+    usage
+elif [ $# -ge 1 ]; then
+    DIR=$1
+    if [ $# -eq 2 ]; then
+        TAG=$2
+    fi
+fi
+
+# verify the tag exists
+git rev-list -1 tags/${TAG} -- >/dev/null || usage
+
+WORKDIR=$(mktemp -d)
+
+##
+## Create the archive
+##
+(
+    cd ${SRC}
+    MTIME=$(date -d @`git log -1 --pretty=format:%ct tags/${TAG}` '+%Y-%m-%d %H:%M:%S')
+    ARCHIVE=$DIR/qpid-cpp-${TAG}.tar.gz
+    VERSION=$(git show tags/${TAG}:VERSION.txt)
+    PREFIX=qpid-cpp-${VERSION}
+    [ -d ${WORKDIR} ] || mkdir -p ${WORKDIR}
+    git archive --format=tar --prefix=${PREFIX}/ tags/${TAG} \
+        | tar -x -C ${WORKDIR}
+    cd ${WORKDIR}
+    tar -c -z \
+        --owner=root --group=root --numeric-owner \
+        --mtime="${MTIME}" \
+        -f ${ARCHIVE} ${PREFIX}
+    echo "${ARCHIVE}"
+)


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org