diff options
author | Gerald W. Carter <jerry@samba.org> | 2008-01-15 16:53:24 -0600 |
---|---|---|
committer | Gerald W. Carter <jerry@samba.org> | 2008-01-15 16:53:26 -0600 |
commit | 742fb9a62038a6cdb9267f24126ecddf264ea398 (patch) | |
tree | 1efbf08faf9fac769a4e76cfcf94784d30017ebf /release-scripts/create-tarball | |
parent | e021eb6d7b060bbd06c996a3ab8efe4322aea265 (diff) | |
download | samba-742fb9a62038a6cdb9267f24126ecddf264ea398.tar.gz |
Adding basic script to help in the creation of tarballs for release.
Developers can use this to create tarballs for testing or general
purpose QA.
Usage: release-scripts/create-tarball
The script will prompt for information as necessary.
(This used to be commit 1df8f98602ac4be1d37f9c7748da8b89db80215f)
Diffstat (limited to 'release-scripts/create-tarball')
-rwxr-xr-x | release-scripts/create-tarball | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/release-scripts/create-tarball b/release-scripts/create-tarball new file mode 100755 index 00000000000..459227262d7 --- /dev/null +++ b/release-scripts/create-tarball @@ -0,0 +1,85 @@ +#!/bin/bash + +TOPDIR="`dirname $0`/.." + +cd $TOPDIR + +echo -n "Please enter branch to cut tarball from: " +read branch + +if [ "x$branch" = "x" ]; then + echo "You must enter a name! Exiting...." + exit 1 +fi + +git-checkout $branch +if [ $? -ne 0 ]; then + echo "Invalid branch name! Exiting...." + exit 2 +fi + +VER_H=source/include/version.h +(cd source && ./autogen.sh) + +if [ ! -f $VER_H ]; then + echo "Failed to find $VER_H! Exiting...." + exit 1 +fi + +version=`grep SAMBA_VERSION_OFFICIAL_STRING $VER_H | awk '{print $3}'` +version="$version-`grep SAMBA_VERSION_VENDOR_SUFFIX $VER_H | awk '{print $3}'`" +version=`echo $version | sed 's/\"//g'` + +echo "Creating release tarball for Samba $version" + +/bin/rm -rf ../samba-${version} +git-archive --format=tar --prefix=samba-${version}/ HEAD | (cd .. && tar xf -) + +pushd ../samba-${version} + +echo "Enter the absolute path to the generated Samba docs directory." +echo -n "Just hit return to exclude the docs from the generate tarball: " +read docsdir + +if [ "x$docsdir" != "x" ]; then + if [ ! -d "$docsdir" ]; then + echo "$docsdir does not exist! Exiting...." + exit 1 + fi + + /bin/rm -rf docs + mkdir docs + rsync -a $docsdir/ docs/ + + cd docs + /bin/rm -rf test.pdf Samba4*pdf htmldocs/Samba4* htmldocs/test + /bin/mv manpages-3 manpages + /bin/mv htmldocs/manpages-3 htmldocs/manpages + cd .. +fi + +cd .. +tar cf samba-${version}.tar --exclude=.git* --exclude=CVS --exclude=.svn samba-${version} +gpg --detach-sign --armor samba-${version}.tar +gzip -9 samba-${version}.tar + +popd +echo -n "Enter tag name (or hit <enter> to skip): " +read tagname + +if [ "x$tagname" != "x" ]; then + if [ "x`git-tag -l $tagname`" != "x" ]; then + echo -n "Tag exists. Do you wish to overwrite? (y/N): " + read answer + + if [ "x$answer" != "xy" ]; then + echo "Tag creation aborted." + exit 1 + fi + fi + + git-tag -s ${tagname} +fi + +echo "Done!" +exit 0 |