1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-27 03:21:53 +03:00
samba-mirror/release-scripts/create-tarball
Karolin Seeger 0289067c6b ask for the keyid in the release script.
(This used to be commit bccae94874)
2008-03-04 17:27:08 +01:00

99 lines
2.1 KiB
Bash
Executable File

#!/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 && ./script/mkversion.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}'`
vendor_version=`grep SAMBA_VERSION_VENDOR_SUFFIX $VER_H | awk '{print $3}'`
if [ -n "$vendor_version" ]; then
version="$version-$vendor_version"
fi
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 --exclude=.svn $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 source
./autogen.sh
cd ..
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
echo -n "Enter the keyid:"
read keyid
if [ x"$keyid" = x"" ];then
echo "no keyid"
exit 1
fi
git-tag -u $keyid ${tagname}
fi
echo "Done!"
exit 0