packaging: sync master and 4.1 for rpm packaging

This commit is contained in:
Hugo Trippaers 2013-04-05 21:00:25 +02:00
parent ff74cbbeea
commit 265cf42ffe
3 changed files with 109 additions and 104 deletions

View File

@ -67,7 +67,8 @@ export CLASSPATH="/usr/share/java/commons-daemon.jar:/usr/share/java/jna.jar:$AC
start() {
echo -n $"Starting $PROGNAME: "
if hostname --fqdn >/dev/null 2>&1 ; then
$JSVC -cp "$CLASSPATH" -pidfile "$PIDFILE" -errfile SYSLOG $CLASS
$JSVC -cp "$CLASSPATH" -pidfile "$PIDFILE" \
-errfile $LOGDIR/cloudstack-agent.err -outfile $LOGDIR/cloudstack-agent.out $CLASS
RETVAL=$?
echo
else

View File

@ -153,13 +153,9 @@ Provides: cloud-aws-api
%description awsapi
Apache Cloudstack AWS API compatibility wrapper
#%package docs
#Summary: Apache CloudStack documentation
#%description docs
#Apache CloudStack documentations
%prep
echo Doing CloudStack build
%setup -q -n %{name}-%{_maventag}
%build
@ -169,10 +165,10 @@ echo VERSION=%{_maventag} >> build/replace.properties
echo PACKAGE=%{name} >> build/replace.properties
if [ "%{_ossnoss}" == "NONOSS" -o "%{_ossnoss}" == "nonoss" ] ; then
echo "Packaging nonoss components"
echo "Executing mvn packaging for NONOSS ..."
mvn -Pawsapi,systemvm -Dnonoss package
else
echo "Packaging oss components"
echo "Executing mvn packaging for OSS ..."
mvn -Pawsapi package -Dsystemvm
fi
@ -329,6 +325,10 @@ install -D tools/whisker/LICENSE ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-cli-
%clean
[ ${RPM_BUILD_ROOT} != "/" ] && rm -rf ${RPM_BUILD_ROOT}
%pre awsapi
id cloud > /dev/null 2>&1 || /usr/sbin/useradd -M -c "CloudStack unprivileged user" \
-r -s /bin/sh -d %{_localstatedir}/cloudstack/management cloud|| true
%preun management
/sbin/service cloudstack-management stop || true
if [ "$1" == "0" ] ; then
@ -544,10 +544,6 @@ fi
%{_defaultdocdir}/%{name}-cli-%{version}/LICENSE
%{_defaultdocdir}/%{name}-cli-%{version}/NOTICE
#%files docs
#%doc LICENSE
#%doc NOTICE
%files awsapi
%defattr(0644,cloud,cloud,0755)
%{_datadir}/%{name}-bridge/webapps/awsapi

View File

@ -20,126 +20,134 @@ function usage() {
echo ""
echo "usage: ./package.sh [-p|--pack] [-h|--help] [ARGS]"
echo ""
echo "oss|OSS To package oss components only"
echo "nonoss|NONOSS To package non-oss and oss components"
echo "The commonly used Arguments are:"
echo "oss|OSS To package OSS specific"
echo "nonoss|NONOSS To package NONOSS specific"
echo ""
echo "Examples: ./package.sh -p|--pack oss|OSS"
echo " ./package.sh -p|--pack nonoss|NONOSS"
echo " ./package.sh (Default OSS)"
echo ""
exit 1
}
function defaultPackaging() {
CWD=`pwd`
RPMDIR=$CWD/../../dist/rpmbuild
PACK_PROJECT=cloudstack
VERSION=`(cd ../../; mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version) | grep '^[0-9]\.'`
CWD=`pwd`
RPMDIR=$CWD/../../dist/rpmbuild
PACK_PROJECT=cloudstack
if echo $VERSION | grep SNAPSHOT ; then
REALVER=`echo $VERSION | cut -d '-' -f 1`
DEFVER="-D_ver $REALVER"
DEFPRE="-D_prerelease 1"
DEFREL="-D_rel SNAPSHOT"
else
DEFVER="-D_ver $REALVER"
DEFPRE=
DEFREL=
fi
mkdir -p $RPMDIR/SPECS
mkdir -p $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION
VERSION=`(cd ../../; mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version) | grep '^[0-9]\.'`
if echo $VERSION | grep SNAPSHOT ; then
REALVER=`echo $VERSION | cut -d '-' -f 1`
DEFVER="-D_ver $REALVER"
DEFPRE="-D_prerelease 1"
DEFREL="-D_rel SNAPSHOT"
else
DEFVER="-D_ver $REALVER"
DEFPRE=
DEFREL=
fi
(cd ../../; tar -c --exclude .git --exclude dist . | tar -C $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION -x)
(cd $RPMDIR/SOURCES/; tar -czf $PACK_PROJECT-$VERSION.tgz $PACK_PROJECT-$VERSION)
mkdir -p $RPMDIR/SPECS
mkdir -p $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION
cp cloud.spec $RPMDIR/SPECS
(cd ../../; tar -c --exclude .git --exclude dist . | tar -C $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION -x )
(cd $RPMDIR/SOURCES/; tar -czf $PACK_PROJECT-$VERSION.tgz $PACK_PROJECT-$VERSION)
(cd $RPMDIR; rpmbuild -ba SPECS/cloud.spec "-D_topdir $RPMDIR" "$DEFVER" "$DEFREL" "$DEFPRE")
cp cloud.spec $RPMDIR/SPECS
exit
(cd $RPMDIR; rpmbuild -ba SPECS/cloud.spec "-D_topdir $RPMDIR" "$DEFVER" "$DEFREL" "$DEFPRE")
exit
}
function packaging() {
CWD=`pwd`
RPMDIR=$CWD/../../dist/rpmbuild
PACK_PROJECT=cloudstack
DEFOSSNOSS="-D_ossnoss $packageval"
VERSION=`(cd ../../; mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version) | grep '^[0-9]\.'`
CWD=`pwd`
RPMDIR=$CWD/../../dist/rpmbuild
PACK_PROJECT=cloudstack
DEFOSSNOSS="-D_ossnoss $packageval"
if echo $VERSION | grep SNAPSHOT ; then
REALVER=`echo $VERSION | cut -d '-' -f 1`
DEFVER="-D_ver $REALVER"
DEFPRE="-D_prerelease 1"
DEFREL="-D_rel SNAPSHOT"
else
DEFVER="-D_ver $REALVER"
DEFPRE=
DEFREL=
fi
mkdir -p $RPMDIR/SPECS
mkdir -p $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION
VERSION=`(cd ../../; mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version) | grep '^[0-9]\.'`
if echo $VERSION | grep SNAPSHOT ; then
REALVER=`echo $VERSION | cut -d '-' -f 1`
DEFVER="-D_ver $REALVER"
DEFPRE="-D_prerelease 1"
DEFREL="-D_rel SNAPSHOT"
else
DEFVER="-D_ver $REALVER"
DEFPRE=
DEFREL=
fi
(cd ../../; tar -c --exclude .git --exclude dist . | tar -C $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION -x )
(cd $RPMDIR/SOURCES/; tar -czf $PACK_PROJECT-$VERSION.tgz $PACK_PROJECT-$VERSION)
mkdir -p $RPMDIR/SPECS
mkdir -p $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION
cp cloud.spec $RPMDIR/SPECS
(cd $RPMDIR; rpmbuild -ba SPECS/cloud.spec "-D_topdir $RPMDIR" "$DEFVER" "$DEFREL" "$DEFPRE" "$DEFOSSNOSS")
(cd ../../; tar -c --exclude .git --exclude dist . | tar -C $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION -x )
(cd $RPMDIR/SOURCES/; tar -czf $PACK_PROJECT-$VERSION.tgz $PACK_PROJECT-$VERSION)
exit
cp cloud.spec $RPMDIR/SPECS
(cd $RPMDIR; rpmbuild -ba SPECS/cloud.spec "-D_topdir $RPMDIR" "$DEFVER" "$DEFREL" "$DEFPRE" "$DEFOSSNOSS")
exit
}
if [ $# -lt 1 ] ; then
defaultPackaging
defaultPackaging
elif [ $# -gt 0 ] ; then
SHORTOPTS="hp:"
LONGOPTS="help,pack:"
ARGS=$(getopt -s bash -u -a --options $SHORTOPTS --longoptions $LONGOPTS --name $0 -- "$@" )
eval set -- "$ARGS"
SHORTOPTS="hp:"
LONGOPTS="help,pack:"
ARGS=$(getopt -s bash -u -a --options $SHORTOPTS --longoptions $LONGOPTS --name $0 -- "$@" )
eval set -- "$ARGS"
while [ $# -gt 0 ] ; do
case "$1" in
-h | --help)
usage
exit 0
;;
-p | --pack)
echo "Doing CloudStack Packaging ....."
packageval=$2
if [ "$packageval" == "oss" -o "$packageval" == "OSS" ] ; then
defaultPackaging
elif [ "$packageval" == "nonoss" -o "$packageval" == "NONOSS" ] ; then
packaging
else
echo "Error: Incorrect value provided in package.sh script, Please see help ./package.sh --help|-h for more details."
exit 1
fi
;;
-)
echo "Unrecognized option..."
usage
exit 1
;;
--)
echo "Unrecognized option..."
usage
exit 1
;;
-*)
echo "Unrecognized option..."
usage
exit 1
;;
*)
shift
break
;;
esac
done
while [ $# -gt 0 ] ; do
case "$1" in
-h | --help)
usage
exit 0
;;
-p | --pack)
echo "Packaging Apache CloudStack"
packageval=$2
if [ "$packageval" == "oss" -o "$packageval" == "OSS" ] ; then
defaultPackaging
elif [ "$packageval" == "nonoss" -o "$packageval" == "NONOSS" ] ; then
packaging
else
echo "Error: Incorrect usage. See help ./package.sh --help|-h."
exit 1
fi
;;
-)
echo "Unrecognized option."
usage
exit 1
;;
--)
echo "Unrecognized option."
usage
exit 1
;;
-*)
echo "Unrecognized option."
usage
exit 1
;;
*)
shift
break
;;
esac
done
else
echo "Incorrect choice. Nothing to do." >&2
echo "./package.sh --help for details"
echo "Incorrect choice. Nothing to do." >&2
echo "Please, execute ./package.sh --help for more help"
fi