From: Sage Weil Date: Sat, 30 May 2015 01:29:48 +0000 (-0400) Subject: bin/make_dist_tarball.sh X-Git-Tag: v9.0.2~60^2~5 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=e8cc7a86cce321997524fc41c1a4df15679d5b78;p=ceph.git bin/make_dist_tarball.sh This includes all submodules *except* ceph-object-corpus and ceph-erasure-code-corpus. This is a bit different that autotools' version: - compiled man pages - some autotools cruft - src/.git_version - compiled *.in files + .git* + CMake stuff + copyright files + readme files + cmake/ + debian/ + doc/ + keys/ + qa/ + systemd/ + tons of other stuff we should probably have included All in all, I think it's much more complete. Signed-off-by: Sage Weil --- diff --git a/bin/make_dist_tarball.sh b/bin/make_dist_tarball.sh new file mode 100755 index 000000000000..d7d8bdafff4f --- /dev/null +++ b/bin/make_dist_tarball.sh @@ -0,0 +1,35 @@ +#!/bin/sh -e + +if [ ! -d .git ]; then + echo "no .git present. run this from the base dir of the git checkout." + exit 1 +fi + +bindir=`dirname $0` + +version=$1 +[ -z "$version" ] && version=`git describe | cut -c 2-` +outfile="ceph-$version" + +# update submodules +echo "updating submodules..." +force=$(if git submodule usage 2>&1 | grep --quiet 'update.*--force'; then echo --force ; fi) +if ! git submodule sync || ! git submodule update $force --init --recursive; then + echo "Error: could not initialize submodule projects" + echo " Network connectivity might be required." + exit 1 +fi + +# clean out old cruft... +echo "cleanup..." +rm -f $outfile.tar $outfile.tar.gz + +# build new tarball +echo "building tarball..." +$bindir/git-archive-all.sh --prefix ceph-$version/ \ + --verbose \ + --ignore corpus \ + $outfile.tar +gzip -9 $outfile.tar + +echo "done."