From aecd66d0a0b8ff1888b5de4c521437abf0d0bc1b Mon Sep 17 00:00:00 2001 From: Martin Schwenke Date: Wed, 21 Aug 2013 17:24:03 +1000 Subject: packaging: Remove pushd/popd from maketarball.sh, don't need bash Signed-off-by: Martin Schwenke (This used to be ctdb commit 3ffca990a18cbd31c8bd3ae01c6671d60da58f58) --- ctdb/packaging/maketarball.sh | 79 +++++++++++++++++++------------------------ 1 file changed, 34 insertions(+), 45 deletions(-) (limited to 'ctdb/packaging') diff --git a/ctdb/packaging/maketarball.sh b/ctdb/packaging/maketarball.sh index c99bb70759..c27e2ec63c 100755 --- a/ctdb/packaging/maketarball.sh +++ b/ctdb/packaging/maketarball.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/bin/sh # # maketarball.sh - create a tarball from the git branch HEAD # @@ -24,18 +24,21 @@ # Optional argument is the directory to which tarball is copied. # -DIRNAME=$(dirname $0) -TOPDIR=${DIRNAME}/.. +TARGETDIR="${1:-${PWD}}" # Default target directory is . -TARGETDIR="$1" -if [ -z "${TARGETDIR}" ]; then - TARGETDIR="." -fi +DIRNAME=$(dirname "$0") +cd -P "${DIRNAME}/.." +TOPDIR="$PWD" + +tmpd=$(mktemp -d) || { + echo "Failed to create temporary directory" + exit 1 +} TAR_PREFIX_TMP="ctdb-tmp" -SPECFILE=/tmp/${TAR_PREFIX_TMP}/packaging/RPM/ctdb.spec -SPECFILE_IN=${SPECFILE}.in -VERSION_H=/tmp/${TAR_PREFIX_TMP}/include/ctdb_version.h +SPECFILE="${tmpd}/${TAR_PREFIX_TMP}/packaging/RPM/ctdb.spec" +SPECFILE_IN="${SPECFILE}.in" +VERSION_H="${tmpd}/${TAR_PREFIX_TMP}/include/ctdb_version.h" if echo | gzip -c --rsyncable - > /dev/null 2>&1 ; then GZIP="gzip -9 --rsyncable" @@ -43,17 +46,14 @@ else GZIP="gzip -9" fi -pushd ${TOPDIR} echo "Creating tarball ... " -git archive --prefix=${TAR_PREFIX_TMP}/ HEAD | ( cd /tmp ; tar xf - ) -RC=$? -popd -if [ $RC -ne 0 ]; then +git archive --prefix="${TAR_PREFIX_TMP}/" HEAD | ( cd "$tmpd" ; tar xf - ) +if [ $? -ne 0 ]; then echo "Error calling git archive." exit 1 fi -set -- $(${TOPDIR}/packaging/mkversion.sh ${VERSION_H}) +set -- $("${TOPDIR}/packaging/mkversion.sh" "$VERSION_H") VERSION=$1 RELEASE=$2 if [ -z "$VERSION" -o -z "$RELEASE" ]; then @@ -68,55 +68,44 @@ sed -e "s/@VERSION@/${VERSION}/g" \ TAR_PREFIX="ctdb-${VERSION}" TAR_BASE="ctdb-${VERSION}" -pushd /tmp/${TAR_PREFIX_TMP} -./autogen.sh -RC=$? -if [ $RC -ne 0 ]; then +cd "${tmpd}/${TAR_PREFIX_TMP}" +./autogen.sh || { echo "Error calling autogen.sh." exit 1 -fi +} -make -C doc -RC=$? -if [ $RC -ne 0 ]; then +make -C doc || { echo "Error building docs." exit 1 -fi -popd +} -if test "x${DEBIAN_MODE}" = "xyes" ; then +if [ "$DEBIAN_MODE" = "yes" ] ; then TAR_PREFIX="ctdb-${VERSION}.orig" TAR_BASE="ctdb_${VERSION}.orig" - rm -rf /tmp/${TAR_PREFIX_TMP}/lib/popt + rm -rf "${tmpd}/${TAR_PREFIX_TMP}/lib/popt" fi -TAR_BALL=${TAR_BASE}.tar -TAR_GZ_BALL=${TAR_BALL}.gz +TAR_BALL="${TAR_BASE}.tar" +TAR_GZ_BALL="${TAR_BALL}.gz" -mv /tmp/${TAR_PREFIX_TMP} /tmp/${TAR_PREFIX} +mv "${tmpd}/${TAR_PREFIX_TMP}" "${tmpd}/${TAR_PREFIX}" -pushd /tmp -tar cf ${TAR_BALL} ${TAR_PREFIX} -RC=$? -if [ $RC -ne 0 ]; then - popd +cd "$tmpd" +tar cf "$TAR_BALL" "$TAR_PREFIX" || { echo "Creation of tarball failed." exit 1 -fi +} -${GZIP} ${TAR_BALL} -RC=$? -if [ $RC -ne 0 ]; then - popd +$GZIP "$TAR_BALL" || { echo "Zipping tarball failed." exit 1 -fi +} -rm -rf ${TAR_PREFIX} +rm -rf "$TAR_PREFIX" -popd +mv "${tmpd}/${TAR_GZ_BALL}" "${TARGETDIR}/" -mv /tmp/${TAR_GZ_BALL} ${TARGETDIR}/ +rmdir "$tmpd" echo "Done." exit 0 -- cgit