Skip to content

Commit 265cf42

Browse files
committed
packaging: sync master and 4.1 for rpm packaging
1 parent ff74cbb commit 265cf42

3 files changed

Lines changed: 122 additions & 117 deletions

File tree

packaging/centos63/cloud-agent.rc

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,8 @@ export CLASSPATH="/usr/share/java/commons-daemon.jar:/usr/share/java/jna.jar:$AC
6767
start() {
6868
echo -n $"Starting $PROGNAME: "
6969
if hostname --fqdn >/dev/null 2>&1 ; then
70-
$JSVC -cp "$CLASSPATH" -pidfile "$PIDFILE" -errfile SYSLOG $CLASS
70+
$JSVC -cp "$CLASSPATH" -pidfile "$PIDFILE" \
71+
-errfile $LOGDIR/cloudstack-agent.err -outfile $LOGDIR/cloudstack-agent.out $CLASS
7172
RETVAL=$?
7273
echo
7374
else

packaging/centos63/cloud.spec

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -153,13 +153,9 @@ Provides: cloud-aws-api
153153
%description awsapi
154154
Apache Cloudstack AWS API compatibility wrapper
155155

156-
#%package docs
157-
#Summary: Apache CloudStack documentation
158-
#%description docs
159-
#Apache CloudStack documentations
160-
161156
%prep
162157
echo Doing CloudStack build
158+
163159
%setup -q -n %{name}-%{_maventag}
164160

165161
%build
@@ -169,10 +165,10 @@ echo VERSION=%{_maventag} >> build/replace.properties
169165
echo PACKAGE=%{name} >> build/replace.properties
170166

171167
if [ "%{_ossnoss}" == "NONOSS" -o "%{_ossnoss}" == "nonoss" ] ; then
172-
echo "Packaging nonoss components"
168+
echo "Executing mvn packaging for NONOSS ..."
173169
mvn -Pawsapi,systemvm -Dnonoss package
174170
else
175-
echo "Packaging oss components"
171+
echo "Executing mvn packaging for OSS ..."
176172
mvn -Pawsapi package -Dsystemvm
177173
fi
178174

@@ -329,6 +325,10 @@ install -D tools/whisker/LICENSE ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-cli-
329325
%clean
330326
[ ${RPM_BUILD_ROOT} != "/" ] && rm -rf ${RPM_BUILD_ROOT}
331327

328+
%pre awsapi
329+
id cloud > /dev/null 2>&1 || /usr/sbin/useradd -M -c "CloudStack unprivileged user" \
330+
-r -s /bin/sh -d %{_localstatedir}/cloudstack/management cloud|| true
331+
332332
%preun management
333333
/sbin/service cloudstack-management stop || true
334334
if [ "$1" == "0" ] ; then
@@ -544,10 +544,6 @@ fi
544544
%{_defaultdocdir}/%{name}-cli-%{version}/LICENSE
545545
%{_defaultdocdir}/%{name}-cli-%{version}/NOTICE
546546

547-
#%files docs
548-
#%doc LICENSE
549-
#%doc NOTICE
550-
551547
%files awsapi
552548
%defattr(0644,cloud,cloud,0755)
553549
%{_datadir}/%{name}-bridge/webapps/awsapi

packaging/centos63/package.sh

Lines changed: 113 additions & 105 deletions
Original file line numberDiff line numberDiff line change
@@ -20,126 +20,134 @@ function usage() {
2020
echo ""
2121
echo "usage: ./package.sh [-p|--pack] [-h|--help] [ARGS]"
2222
echo ""
23-
echo "oss|OSS To package oss components only"
24-
echo "nonoss|NONOSS To package non-oss and oss components"
23+
echo "The commonly used Arguments are:"
24+
echo "oss|OSS To package OSS specific"
25+
echo "nonoss|NONOSS To package NONOSS specific"
2526
echo ""
2627
echo "Examples: ./package.sh -p|--pack oss|OSS"
2728
echo " ./package.sh -p|--pack nonoss|NONOSS"
2829
echo " ./package.sh (Default OSS)"
29-
echo ""
3030
exit 1
3131
}
3232

3333
function defaultPackaging() {
34-
CWD=`pwd`
35-
RPMDIR=$CWD/../../dist/rpmbuild
36-
PACK_PROJECT=cloudstack
37-
VERSION=`(cd ../../; mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version) | grep '^[0-9]\.'`
38-
39-
if echo $VERSION | grep SNAPSHOT ; then
40-
REALVER=`echo $VERSION | cut -d '-' -f 1`
41-
DEFVER="-D_ver $REALVER"
42-
DEFPRE="-D_prerelease 1"
43-
DEFREL="-D_rel SNAPSHOT"
44-
else
45-
DEFVER="-D_ver $REALVER"
46-
DEFPRE=
47-
DEFREL=
48-
fi
49-
mkdir -p $RPMDIR/SPECS
50-
mkdir -p $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION
51-
52-
(cd ../../; tar -c --exclude .git --exclude dist . | tar -C $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION -x)
53-
(cd $RPMDIR/SOURCES/; tar -czf $PACK_PROJECT-$VERSION.tgz $PACK_PROJECT-$VERSION)
54-
55-
cp cloud.spec $RPMDIR/SPECS
56-
57-
(cd $RPMDIR; rpmbuild -ba SPECS/cloud.spec "-D_topdir $RPMDIR" "$DEFVER" "$DEFREL" "$DEFPRE")
58-
59-
exit
34+
CWD=`pwd`
35+
RPMDIR=$CWD/../../dist/rpmbuild
36+
PACK_PROJECT=cloudstack
37+
38+
VERSION=`(cd ../../; mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version) | grep '^[0-9]\.'`
39+
if echo $VERSION | grep SNAPSHOT ; then
40+
REALVER=`echo $VERSION | cut -d '-' -f 1`
41+
DEFVER="-D_ver $REALVER"
42+
DEFPRE="-D_prerelease 1"
43+
DEFREL="-D_rel SNAPSHOT"
44+
else
45+
DEFVER="-D_ver $REALVER"
46+
DEFPRE=
47+
DEFREL=
48+
fi
49+
50+
mkdir -p $RPMDIR/SPECS
51+
mkdir -p $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION
52+
53+
(cd ../../; tar -c --exclude .git --exclude dist . | tar -C $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION -x )
54+
(cd $RPMDIR/SOURCES/; tar -czf $PACK_PROJECT-$VERSION.tgz $PACK_PROJECT-$VERSION)
55+
56+
cp cloud.spec $RPMDIR/SPECS
57+
58+
(cd $RPMDIR; rpmbuild -ba SPECS/cloud.spec "-D_topdir $RPMDIR" "$DEFVER" "$DEFREL" "$DEFPRE")
59+
60+
exit
6061
}
6162

6263
function packaging() {
63-
CWD=`pwd`
64-
RPMDIR=$CWD/../../dist/rpmbuild
65-
PACK_PROJECT=cloudstack
66-
DEFOSSNOSS="-D_ossnoss $packageval"
67-
VERSION=`(cd ../../; mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version) | grep '^[0-9]\.'`
68-
69-
if echo $VERSION | grep SNAPSHOT ; then
70-
REALVER=`echo $VERSION | cut -d '-' -f 1`
71-
DEFVER="-D_ver $REALVER"
72-
DEFPRE="-D_prerelease 1"
73-
DEFREL="-D_rel SNAPSHOT"
74-
else
75-
DEFVER="-D_ver $REALVER"
76-
DEFPRE=
77-
DEFREL=
78-
fi
79-
80-
mkdir -p $RPMDIR/SPECS
81-
mkdir -p $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION
82-
83-
(cd ../../; tar -c --exclude .git --exclude dist . | tar -C $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION -x )
84-
(cd $RPMDIR/SOURCES/; tar -czf $PACK_PROJECT-$VERSION.tgz $PACK_PROJECT-$VERSION)
85-
86-
cp cloud.spec $RPMDIR/SPECS
87-
88-
(cd $RPMDIR; rpmbuild -ba SPECS/cloud.spec "-D_topdir $RPMDIR" "$DEFVER" "$DEFREL" "$DEFPRE" "$DEFOSSNOSS")
89-
90-
exit
64+
65+
CWD=`pwd`
66+
RPMDIR=$CWD/../../dist/rpmbuild
67+
PACK_PROJECT=cloudstack
68+
DEFOSSNOSS="-D_ossnoss $packageval"
69+
70+
71+
VERSION=`(cd ../../; mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version) | grep '^[0-9]\.'`
72+
if echo $VERSION | grep SNAPSHOT ; then
73+
REALVER=`echo $VERSION | cut -d '-' -f 1`
74+
DEFVER="-D_ver $REALVER"
75+
DEFPRE="-D_prerelease 1"
76+
DEFREL="-D_rel SNAPSHOT"
77+
else
78+
DEFVER="-D_ver $REALVER"
79+
DEFPRE=
80+
DEFREL=
81+
fi
82+
83+
mkdir -p $RPMDIR/SPECS
84+
mkdir -p $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION
85+
86+
87+
(cd ../../; tar -c --exclude .git --exclude dist . | tar -C $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION -x )
88+
(cd $RPMDIR/SOURCES/; tar -czf $PACK_PROJECT-$VERSION.tgz $PACK_PROJECT-$VERSION)
89+
90+
cp cloud.spec $RPMDIR/SPECS
91+
92+
(cd $RPMDIR; rpmbuild -ba SPECS/cloud.spec "-D_topdir $RPMDIR" "$DEFVER" "$DEFREL" "$DEFPRE" "$DEFOSSNOSS")
93+
94+
exit
9195
}
9296

9397

9498
if [ $# -lt 1 ] ; then
95-
defaultPackaging
99+
100+
defaultPackaging
101+
96102
elif [ $# -gt 0 ] ; then
97-
SHORTOPTS="hp:"
98-
LONGOPTS="help,pack:"
99-
ARGS=$(getopt -s bash -u -a --options $SHORTOPTS --longoptions $LONGOPTS --name $0 -- "$@" )
100-
101-
eval set -- "$ARGS"
102-
103-
while [ $# -gt 0 ] ; do
104-
case "$1" in
105-
-h | --help)
106-
usage
107-
exit 0
108-
;;
109-
-p | --pack)
110-
echo "Packaging Apache CloudStack"
111-
packageval=$2
112-
if [ "$packageval" == "oss" -o "$packageval" == "OSS" ] ; then
113-
defaultPackaging
114-
elif [ "$packageval" == "nonoss" -o "$packageval" == "NONOSS" ] ; then
115-
packaging
116-
else
117-
echo "Error: Incorrect usage. See help ./package.sh --help|-h."
118-
exit 1
119-
fi
120-
;;
121-
-)
122-
echo "Unrecognized option."
123-
usage
124-
exit 1
125-
;;
126-
--)
127-
echo "Unrecognized option."
128-
usage
129-
exit 1
130-
;;
131-
-*)
132-
echo "Unrecognized option."
133-
usage
134-
exit 1
135-
;;
136-
*)
137-
shift
138-
break
139-
;;
140-
esac
141-
done
103+
104+
SHORTOPTS="hp:"
105+
LONGOPTS="help,pack:"
106+
107+
ARGS=$(getopt -s bash -u -a --options $SHORTOPTS --longoptions $LONGOPTS --name $0 -- "$@" )
108+
eval set -- "$ARGS"
109+
110+
while [ $# -gt 0 ] ; do
111+
case "$1" in
112+
-h | --help)
113+
usage
114+
exit 0
115+
;;
116+
-p | --pack)
117+
echo "Doing CloudStack Packaging ....."
118+
packageval=$2
119+
if [ "$packageval" == "oss" -o "$packageval" == "OSS" ] ; then
120+
defaultPackaging
121+
elif [ "$packageval" == "nonoss" -o "$packageval" == "NONOSS" ] ; then
122+
packaging
123+
else
124+
echo "Error: Incorrect value provided in package.sh script, Please see help ./package.sh --help|-h for more details."
125+
exit 1
126+
fi
127+
;;
128+
-)
129+
echo "Unrecognized option..."
130+
usage
131+
exit 1
132+
;;
133+
--)
134+
echo "Unrecognized option..."
135+
usage
136+
exit 1
137+
;;
138+
-*)
139+
echo "Unrecognized option..."
140+
usage
141+
exit 1
142+
;;
143+
*)
144+
shift
145+
break
146+
;;
147+
esac
148+
done
149+
142150
else
143-
echo "Incorrect choice. Nothing to do." >&2
144-
echo "./package.sh --help for details"
151+
echo "Incorrect choice. Nothing to do." >&2
152+
echo "Please, execute ./package.sh --help for more help"
145153
fi

0 commit comments

Comments
 (0)