mirror of
				https://github.com/apache/cloudstack.git
				synced 2025-10-26 08:42:29 +01:00 
			
		
		
		
	Add improved support for packaging CloudStack for CentOS 7
This commit is contained in:
		
							parent
							
								
									4e896938ee
								
							
						
					
					
						commit
						870ede5a04
					
				| @ -43,10 +43,8 @@ Group:     System Environment/Libraries | |||||||
| Source0:   %{name}-%{_maventag}.tgz | Source0:   %{name}-%{_maventag}.tgz | ||||||
| BuildRoot: %{_tmppath}/%{name}-%{_maventag}-%{release}-build | BuildRoot: %{_tmppath}/%{name}-%{_maventag}-%{release}-build | ||||||
| 
 | 
 | ||||||
| %include SPECS/%{_os}/macros.spec |  | ||||||
| 
 |  | ||||||
| BuildRequires: java-1.7.0-openjdk-devel | BuildRequires: java-1.7.0-openjdk-devel | ||||||
| BuildRequires: %{_tomcatversion} | BuildRequires: tomcat6 | ||||||
| BuildRequires: ws-commons-util | BuildRequires: ws-commons-util | ||||||
| BuildRequires: jpackage-utils | BuildRequires: jpackage-utils | ||||||
| BuildRequires: gcc | BuildRequires: gcc | ||||||
| @ -61,8 +59,8 @@ intelligent IaaS cloud implementation. | |||||||
| 
 | 
 | ||||||
| %package management | %package management | ||||||
| Summary:   CloudStack management server UI | Summary:   CloudStack management server UI | ||||||
| Requires: %{_tomcatversion} | Requires: tomcat6 | ||||||
| Requires: %{_javaversion} | Requires: java7 | ||||||
| Requires: python | Requires: python | ||||||
| Requires: bash | Requires: bash | ||||||
| Requires: bzip2 | Requires: bzip2 | ||||||
| @ -82,11 +80,10 @@ Requires: /sbin/chkconfig | |||||||
| Requires: /usr/bin/ssh-keygen | Requires: /usr/bin/ssh-keygen | ||||||
| Requires: mkisofs | Requires: mkisofs | ||||||
| Requires: MySQL-python | Requires: MySQL-python | ||||||
| %{_pythonparamiko} | Requires: python-paramiko | ||||||
| Requires: ipmitool | Requires: ipmitool | ||||||
| Requires: %{name}-common = %{_ver} | Requires: %{name}-common = %{_ver} | ||||||
| Requires: %{name}-awsapi = %{_ver} | Requires: %{name}-awsapi = %{_ver} | ||||||
| %{_iptablesservice} |  | ||||||
| Obsoletes: cloud-client < 4.1.0 | Obsoletes: cloud-client < 4.1.0 | ||||||
| Obsoletes: cloud-client-ui < 4.1.0 | Obsoletes: cloud-client-ui < 4.1.0 | ||||||
| Obsoletes: cloud-server < 4.1.0 | Obsoletes: cloud-server < 4.1.0 | ||||||
| @ -116,14 +113,14 @@ The Apache CloudStack files shared between agent and management server | |||||||
| %package agent | %package agent | ||||||
| Summary: CloudStack Agent for KVM hypervisors | Summary: CloudStack Agent for KVM hypervisors | ||||||
| Requires: openssh-clients | Requires: openssh-clients | ||||||
| Requires: %{_javaversion} | Requires: java7 | ||||||
| Requires: %{name}-common = %{_ver} | Requires: %{name}-common = %{_ver} | ||||||
| Requires: libvirt | Requires: libvirt | ||||||
| Requires: bridge-utils | Requires: bridge-utils | ||||||
| Requires: ebtables | Requires: ebtables | ||||||
| Requires: iptables | Requires: iptables | ||||||
| Requires: ethtool | Requires: ethtool | ||||||
| Requires: %{_vlanconfigtool} | Requires: vconfig | ||||||
| Requires: ipset | Requires: ipset | ||||||
| Requires: jsvc | Requires: jsvc | ||||||
| Requires: jakarta-commons-daemon | Requires: jakarta-commons-daemon | ||||||
| @ -154,7 +151,7 @@ The CloudStack baremetal agent | |||||||
| 
 | 
 | ||||||
| %package usage | %package usage | ||||||
| Summary: CloudStack Usage calculation server | Summary: CloudStack Usage calculation server | ||||||
| Requires: %{_javaversion} | Requires: java7 | ||||||
| Requires: jsvc | Requires: jsvc | ||||||
| Requires: jakarta-commons-daemon | Requires: jakarta-commons-daemon | ||||||
| Requires: jakarta-commons-daemon-jsvc | Requires: jakarta-commons-daemon-jsvc | ||||||
| @ -185,7 +182,7 @@ Apache Cloudstack AWS API compatibility wrapper | |||||||
| %package mysql-ha | %package mysql-ha | ||||||
| Summary: Apache CloudStack Balancing Strategy for MySQL | Summary: Apache CloudStack Balancing Strategy for MySQL | ||||||
| Requires: mysql-connector-java | Requires: mysql-connector-java | ||||||
| Requires: %{_tomcatversion} | Requires: tomcat6 | ||||||
| Group: System Environmnet/Libraries | Group: System Environmnet/Libraries | ||||||
| %description mysql-ha | %description mysql-ha | ||||||
| Apache CloudStack Balancing Strategy for MySQL | Apache CloudStack Balancing Strategy for MySQL | ||||||
| @ -266,9 +263,9 @@ mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management | |||||||
| 
 | 
 | ||||||
| # Specific for tomcat | # Specific for tomcat | ||||||
| mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/Catalina/localhost/client | mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/Catalina/localhost/client | ||||||
| ln -sf /usr/share/%{_tomcatpathname}/bin ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/bin | ln -sf /usr/share/tomcat6/bin ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/bin | ||||||
| ln -sf /etc/%{name}/management ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/conf | ln -sf /etc/%{name}/management ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/conf | ||||||
| ln -sf /usr/share/%{_tomcatpathname}/lib ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/lib | ln -sf /usr/share/tomcat6/lib ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/lib | ||||||
| ln -sf /var/log/%{name}/management ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/logs | ln -sf /var/log/%{name}/management ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/logs | ||||||
| ln -sf /var/cache/%{name}/management/temp ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/temp | ln -sf /var/cache/%{name}/management/temp ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/temp | ||||||
| ln -sf /var/cache/%{name}/management/work ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/work | ln -sf /var/cache/%{name}/management/work ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/work | ||||||
| @ -292,19 +289,12 @@ cp -r client/target/cloud-client-ui-%{_maventag}/* ${RPM_BUILD_ROOT}%{_datadir}/ | |||||||
| rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/webapps/client/WEB-INF/classes/scripts | rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/webapps/client/WEB-INF/classes/scripts | ||||||
| rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/webapps/client/WEB-INF/classes/vms | rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/webapps/client/WEB-INF/classes/vms | ||||||
| 
 | 
 | ||||||
| for name in db.properties log4j-cloud.xml tomcat6-nonssl.conf tomcat6-ssl.conf %{_serverxmlname}-ssl.xml %{_serverxmlname}-nonssl.xml \ | for name in db.properties log4j-cloud.xml tomcat6-nonssl.conf tomcat6-ssl.conf server-ssl.xml server-nonssl.xml \ | ||||||
|             catalina.policy catalina.properties classpath.conf tomcat-users.xml web.xml environment.properties ; do |             catalina.policy catalina.properties classpath.conf tomcat-users.xml web.xml environment.properties ; do | ||||||
|   mv ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/webapps/client/WEB-INF/classes/$name \ |   mv ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/webapps/client/WEB-INF/classes/$name \ | ||||||
|     ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/$name |     ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/$name | ||||||
| done | done | ||||||
| 
 | 
 | ||||||
| if [ -f "${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/server7-nonssl.xml" ]; then |  | ||||||
|     mv ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/server7-nonssl.xml ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/server-nonssl.xml |  | ||||||
| fi |  | ||||||
| if [ -f "${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/server7-ssl.xml" ]; then |  | ||||||
|     mv ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/server7-ssl.xml ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/server-ssl.xml |  | ||||||
| fi |  | ||||||
| 
 |  | ||||||
| ln -s %{_sysconfdir}/%{name}/management/log4j-cloud.xml \ | ln -s %{_sysconfdir}/%{name}/management/log4j-cloud.xml \ | ||||||
|     ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/webapps/client/WEB-INF/classes/log4j-cloud.xml |     ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/webapps/client/WEB-INF/classes/log4j-cloud.xml | ||||||
| 
 | 
 | ||||||
| @ -315,10 +305,9 @@ install python/bindir/cloud-external-ipallocator.py ${RPM_BUILD_ROOT}%{_bindir}/ | |||||||
| install -D client/target/pythonlibs/jasypt-1.9.0.jar ${RPM_BUILD_ROOT}%{_datadir}/%{name}-common/lib/jasypt-1.9.0.jar | install -D client/target/pythonlibs/jasypt-1.9.0.jar ${RPM_BUILD_ROOT}%{_datadir}/%{name}-common/lib/jasypt-1.9.0.jar | ||||||
| 
 | 
 | ||||||
| install -D packaging/centos63/cloud-ipallocator.rc ${RPM_BUILD_ROOT}%{_initrddir}/%{name}-ipallocator | install -D packaging/centos63/cloud-ipallocator.rc ${RPM_BUILD_ROOT}%{_initrddir}/%{name}-ipallocator | ||||||
| install -D packaging/centos63/cloud-management.rc ${RPM_BUILD_ROOT}%{_managementstartscriptpath}/%{name}-management | install -D packaging/centos63/cloud-management.rc ${RPM_BUILD_ROOT}%{_initrddir}/%{name}-management | ||||||
| install -D packaging/centos63/cloud-management.sysconfig ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/%{name}-management | install -D packaging/centos63/cloud-management.sysconfig ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/%{name}-management | ||||||
| install -D packaging/centos63/%{_os}/tomcat.sh ${RPM_BUILD_ROOT}%{_managementstartscriptpath}/tomcat.sh | install -D packaging/centos63/tomcat.sh ${RPM_BUILD_ROOT}%{_initrddir}/tomcat.sh | ||||||
| %{_managementservice} |  | ||||||
| 
 | 
 | ||||||
| chmod 770 ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/Catalina | chmod 770 ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/Catalina | ||||||
| chmod 770 ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/Catalina/localhost | chmod 770 ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/Catalina/localhost | ||||||
| @ -610,9 +599,8 @@ fi | |||||||
| %config(noreplace) %{_sysconfdir}/%{name}/management/cloud-bridge.properties | %config(noreplace) %{_sysconfdir}/%{name}/management/cloud-bridge.properties | ||||||
| %config(noreplace) %{_sysconfdir}/%{name}/management/commons-logging.properties | %config(noreplace) %{_sysconfdir}/%{name}/management/commons-logging.properties | ||||||
| %config(noreplace) %{_sysconfdir}/%{name}/management/ec2-service.properties | %config(noreplace) %{_sysconfdir}/%{name}/management/ec2-service.properties | ||||||
| %attr(0755,root,root) %{_managementstartscriptpath}/%{name}-management | %attr(0755,root,root) %{_initrddir}/%{name}-management | ||||||
| %attr(0755,root,root) %{_managementstartscriptpath}/tomcat.sh | %attr(0755,root,root) %{_initrddir}/tomcat.sh | ||||||
| %{_managementserviceattribute} |  | ||||||
| 
 | 
 | ||||||
| %attr(0755,root,root) %{_bindir}/%{name}-setup-management | %attr(0755,root,root) %{_bindir}/%{name}-setup-management | ||||||
| %attr(0755,root,root) %{_bindir}/%{name}-update-xenserver-licenses | %attr(0755,root,root) %{_bindir}/%{name}-update-xenserver-licenses | ||||||
|  | |||||||
							
								
								
									
										117
									
								
								packaging/centos7/cloud-agent.rc
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										117
									
								
								packaging/centos7/cloud-agent.rc
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,117 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | 
 | ||||||
|  | # chkconfig: 35 99 10 | ||||||
|  | # description: Cloud Agent | ||||||
|  | 
 | ||||||
|  | # Licensed to the Apache Software Foundation (ASF) under one | ||||||
|  | # or more contributor license agreements.  See the NOTICE file | ||||||
|  | # distributed with this work for additional information | ||||||
|  | # regarding copyright ownership.  The ASF licenses this file | ||||||
|  | # to you under the Apache License, Version 2.0 (the | ||||||
|  | # "License"); you may not use this file except in compliance | ||||||
|  | # with the License.  You may obtain a copy of the License at | ||||||
|  | #  | ||||||
|  | #   http://www.apache.org/licenses/LICENSE-2.0 | ||||||
|  | #  | ||||||
|  | # Unless required by applicable law or agreed to in writing, | ||||||
|  | # software distributed under the License is distributed on an | ||||||
|  | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | ||||||
|  | # KIND, either express or implied.  See the License for the | ||||||
|  | # specific language governing permissions and limitations | ||||||
|  | # under the License. | ||||||
|  | 
 | ||||||
|  | # WARNING: if this script is changed, then all other initscripts MUST BE changed to match it as well | ||||||
|  | 
 | ||||||
|  | . /etc/rc.d/init.d/functions | ||||||
|  | 
 | ||||||
|  | # set environment variables | ||||||
|  | 
 | ||||||
|  | SHORTNAME=$(basename $0 | sed -e 's/^[SK][0-9][0-9]//') | ||||||
|  | PIDFILE=/var/run/"$SHORTNAME".pid | ||||||
|  | LOCKFILE=/var/lock/subsys/"$SHORTNAME" | ||||||
|  | LOGDIR=/var/log/cloudstack/agent | ||||||
|  | LOGFILE=${LOGDIR}/agent.log | ||||||
|  | PROGNAME="Cloud Agent" | ||||||
|  | CLASS="com.cloud.agent.AgentShell" | ||||||
|  | JSVC=`which jsvc 2>/dev/null`; | ||||||
|  | 
 | ||||||
|  | # exit if we don't find jsvc | ||||||
|  | if [ -z "$JSVC" ]; then | ||||||
|  |     echo no jsvc found in path; | ||||||
|  |     exit 1; | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | unset OPTIONS | ||||||
|  | [ -r /etc/sysconfig/"$SHORTNAME" ] && source /etc/sysconfig/"$SHORTNAME" | ||||||
|  | 
 | ||||||
|  | # The first existing directory is used for JAVA_HOME (if JAVA_HOME is not defined in $DEFAULT) | ||||||
|  | JDK_DIRS="/usr/lib/jvm/jre /usr/lib/jvm/java-7-openjdk /usr/lib/jvm/java-7-openjdk-i386 /usr/lib/jvm/java-7-openjdk-amd64 /usr/lib/jvm/java-6-openjdk /usr/lib/jvm/java-6-openjdk-i386 /usr/lib/jvm/java-6-openjdk-amd64 /usr/lib/jvm/java-6-sun" | ||||||
|  | 
 | ||||||
|  | for jdir in $JDK_DIRS; do | ||||||
|  |     if [ -r "$jdir/bin/java" -a -z "${JAVA_HOME}" ]; then | ||||||
|  |         JAVA_HOME="$jdir" | ||||||
|  |     fi | ||||||
|  | done | ||||||
|  | export JAVA_HOME | ||||||
|  | 
 | ||||||
|  | ACP=`ls /usr/share/cloudstack-agent/lib/*.jar | tr '\n' ':' | sed s'/.$//'` | ||||||
|  | PCP=`ls /usr/share/cloudstack-agent/plugins/*.jar 2>/dev/null | tr '\n' ':' | sed s'/.$//'` | ||||||
|  | 
 | ||||||
|  | # We need to append the JSVC daemon JAR to the classpath | ||||||
|  | # AgentShell implements the JSVC daemon methods | ||||||
|  | export CLASSPATH="/usr/share/java/commons-daemon.jar:$ACP:$PCP:/etc/cloudstack/agent:/usr/share/cloudstack-common/scripts" | ||||||
|  | 
 | ||||||
|  | start() { | ||||||
|  |     echo -n $"Starting $PROGNAME: " | ||||||
|  |     if hostname --fqdn >/dev/null 2>&1 ; then | ||||||
|  |         $JSVC -cp "$CLASSPATH" -pidfile "$PIDFILE" \ | ||||||
|  |             -errfile $LOGDIR/cloudstack-agent.err -outfile $LOGDIR/cloudstack-agent.out $CLASS | ||||||
|  |         RETVAL=$? | ||||||
|  |         echo | ||||||
|  |     else | ||||||
|  |         failure | ||||||
|  |         echo | ||||||
|  |         echo The host name does not resolve properly to an IP address.  Cannot start "$PROGNAME". > /dev/stderr | ||||||
|  |         RETVAL=9 | ||||||
|  |     fi | ||||||
|  |     [ $RETVAL = 0 ] && touch ${LOCKFILE} | ||||||
|  |     return $RETVAL | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | stop() { | ||||||
|  |     echo -n $"Stopping $PROGNAME: " | ||||||
|  |     $JSVC -pidfile "$PIDFILE" -stop $CLASS | ||||||
|  |     RETVAL=$? | ||||||
|  |     echo | ||||||
|  |     [ $RETVAL = 0 ] && rm -f ${LOCKFILE} ${PIDFILE} | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | case "$1" in | ||||||
|  |     start) | ||||||
|  |         start | ||||||
|  |         ;; | ||||||
|  |     stop) | ||||||
|  |         stop | ||||||
|  |         ;; | ||||||
|  |     status) | ||||||
|  |         status -p ${PIDFILE} $SHORTNAME | ||||||
|  |         RETVAL=$? | ||||||
|  |         ;; | ||||||
|  |     restart) | ||||||
|  |         stop | ||||||
|  |         sleep 3 | ||||||
|  |         start | ||||||
|  |         ;; | ||||||
|  |     condrestart) | ||||||
|  |         if status -p ${PIDFILE} $SHORTNAME >&/dev/null; then | ||||||
|  |             stop | ||||||
|  |             sleep 3 | ||||||
|  |             start | ||||||
|  |         fi | ||||||
|  |         ;; | ||||||
|  |     *) | ||||||
|  |     echo $"Usage: $SHORTNAME {start|stop|restart|condrestart|status|help}" | ||||||
|  |     RETVAL=3 | ||||||
|  | esac | ||||||
|  | 
 | ||||||
|  | exit $RETVAL | ||||||
							
								
								
									
										96
									
								
								packaging/centos7/cloud-ipallocator.rc
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										96
									
								
								packaging/centos7/cloud-ipallocator.rc
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,96 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | # Licensed to the Apache Software Foundation (ASF) under one | ||||||
|  | # or more contributor license agreements.  See the NOTICE file | ||||||
|  | # distributed with this work for additional information | ||||||
|  | # regarding copyright ownership.  The ASF licenses this file | ||||||
|  | # to you under the Apache License, Version 2.0 (the | ||||||
|  | # "License"); you may not use this file except in compliance | ||||||
|  | # with the License.  You may obtain a copy of the License at | ||||||
|  | #  | ||||||
|  | #   http://www.apache.org/licenses/LICENSE-2.0 | ||||||
|  | #  | ||||||
|  | # Unless required by applicable law or agreed to in writing, | ||||||
|  | # software distributed under the License is distributed on an | ||||||
|  | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | ||||||
|  | # KIND, either express or implied.  See the License for the | ||||||
|  | # specific language governing permissions and limitations | ||||||
|  | # under the License. | ||||||
|  | 
 | ||||||
|  | # chkconfig: 35 99 10 | ||||||
|  | # description: Cloud Agent | ||||||
|  | 
 | ||||||
|  | # WARNING: if this script is changed, then all other initscripts MUST BE changed to match it as well | ||||||
|  | 
 | ||||||
|  | . /etc/rc.d/init.d/functions | ||||||
|  | 
 | ||||||
|  | # set environment variables | ||||||
|  | 
 | ||||||
|  | SHORTNAME=`basename $0` | ||||||
|  | PIDFILE=/var/run/"$SHORTNAME".pid | ||||||
|  | LOCKFILE=/var/lock/subsys/"$SHORTNAME" | ||||||
|  | LOGFILE=/var/log/cloudstack/ipallocator/ipallocator.log | ||||||
|  | PROGNAME="External IPAllocator" | ||||||
|  | 
 | ||||||
|  | unset OPTIONS | ||||||
|  | [ -r /etc/sysconfig/"$SHORTNAME" ] && source /etc/sysconfig/"$SHORTNAME" | ||||||
|  | DAEMONIZE=/usr/bin/cloud-daemonize | ||||||
|  | PROG=/usr/bin/cloud-external-ipallocator.py | ||||||
|  | OPTIONS=8083 | ||||||
|  | 
 | ||||||
|  | start() { | ||||||
|  |         echo -n $"Starting $PROGNAME: " | ||||||
|  | 	if hostname --fqdn >/dev/null 2>&1 ; then | ||||||
|  | 		daemon --check=$SHORTNAME --pidfile=${PIDFILE} "$DAEMONIZE" \ | ||||||
|  | 			-n "$SHORTNAME" -p "$PIDFILE" -l "$LOGFILE" "$PROG" $OPTIONS | ||||||
|  | 		RETVAL=$? | ||||||
|  | 		echo | ||||||
|  | 	else | ||||||
|  | 		failure | ||||||
|  | 		echo | ||||||
|  | 		echo The host name does not resolve properly to an IP address.  Cannot start "$PROGNAME". > /dev/stderr | ||||||
|  | 		RETVAL=9 | ||||||
|  | 	fi | ||||||
|  | 	[ $RETVAL = 0 ] && touch ${LOCKFILE} | ||||||
|  | 	return $RETVAL | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | stop() { | ||||||
|  | 	echo -n $"Stopping $PROGNAME: " | ||||||
|  | 	killproc -p ${PIDFILE} $SHORTNAME # -d 10 $SHORTNAME | ||||||
|  | 	RETVAL=$? | ||||||
|  | 	echo | ||||||
|  | 	[ $RETVAL = 0 ] && rm -f ${LOCKFILE} ${PIDFILE} | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | # See how we were called. | ||||||
|  | case "$1" in | ||||||
|  |   start) | ||||||
|  | 	start | ||||||
|  | 	;; | ||||||
|  |   stop) | ||||||
|  | 	stop | ||||||
|  | 	;; | ||||||
|  |   status) | ||||||
|  |         status -p ${PIDFILE} $SHORTNAME | ||||||
|  | 	RETVAL=$? | ||||||
|  | 	;; | ||||||
|  |   restart) | ||||||
|  | 	stop | ||||||
|  | 	sleep 3 | ||||||
|  | 	start | ||||||
|  | 	;; | ||||||
|  |   condrestart) | ||||||
|  | 	if status -p ${PIDFILE} $SHORTNAME >&/dev/null; then | ||||||
|  | 		stop | ||||||
|  | 		sleep 3 | ||||||
|  | 		start | ||||||
|  | 	fi | ||||||
|  | 	;; | ||||||
|  |   *) | ||||||
|  | 	echo $"Usage: $SHORTNAME {start|stop|restart|condrestart|status|help}" | ||||||
|  | 	RETVAL=3 | ||||||
|  | esac | ||||||
|  | 
 | ||||||
|  | exit $RETVAL | ||||||
|  | 
 | ||||||
| @ -15,18 +15,23 @@ | |||||||
| # specific language governing permissions and limitations | # specific language governing permissions and limitations | ||||||
| # under the License. | # under the License. | ||||||
| 
 | 
 | ||||||
|  | # Systemd unit file for CloudStack Management server | ||||||
|  | #  | ||||||
|  | # clone tomcat service, see /usr/lib/systemd/system/tomcat.service | ||||||
|  | 
 | ||||||
| [Unit] | [Unit] | ||||||
| Description=Citrix Cloud Plaltform | Description=CloudStack Management Server | ||||||
| After=syslog.target network.target | After=syslog.target network.target | ||||||
| 
 | 
 | ||||||
| [Service] | [Service] | ||||||
| Type=forking | Type=forking | ||||||
| ExecStart=/usr/sbin/cloudstack-management start | ExecStart=/usr/sbin/tomcat-sysd start | ||||||
| ExecStop=/usr/sbin/cloudstack-management stop | ExecStop=/usr/sbin/tomcat-sysd stop | ||||||
| SuccessExitStatus=143 | SuccessExitStatus=143 | ||||||
| User=cloud | User=cloud | ||||||
| Group=cloud | Group=cloud | ||||||
| 
 | EnvironmentFile=/etc/sysconfig/cloudstack-management | ||||||
| 
 | 
 | ||||||
| [Install] | [Install] | ||||||
| WantedBy=multi-user.target | WantedBy=multi-user.target | ||||||
|  | 
 | ||||||
| @ -15,13 +15,8 @@ | |||||||
| # specific language governing permissions and limitations | # specific language governing permissions and limitations | ||||||
| # under the License. | # under the License. | ||||||
| 
 | 
 | ||||||
| %define _pythonparamiko Requires: python-paramiko | Cmnd_Alias CLOUDSTACK = /bin/mkdir, /bin/mount, /bin/umount, /bin/cp, /bin/chmod, /usr/bin/keytool, /bin/keytool | ||||||
| %define _javaversion java7 | 
 | ||||||
| %define _tomcatversion tomcat6 | Defaults:cloud !requiretty  | ||||||
| %define _vlanconfigtool vconfig | 
 | ||||||
| %define _tomcatpathname tomcat6 | cloud   ALL=(root) NOPASSWD:CLOUDSTACK | ||||||
| %define _managementstartscriptpath %{_initrddir} |  | ||||||
| %define _managementservice %{nil} |  | ||||||
| %define _managementserviceattribute %{nil} |  | ||||||
| %define _iptablesservice %{nil} |  | ||||||
| %define _serverxmlname server |  | ||||||
							
								
								
									
										48
									
								
								packaging/centos7/cloud-management.sysconfig
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								packaging/centos7/cloud-management.sysconfig
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,48 @@ | |||||||
|  | # Licensed to the Apache Software Foundation (ASF) under one | ||||||
|  | # or more contributor license agreements.  See the NOTICE file | ||||||
|  | # distributed with this work for additional information | ||||||
|  | # regarding copyright ownership.  The ASF licenses this file | ||||||
|  | # to you under the Apache License, Version 2.0 (the | ||||||
|  | # "License"); you may not use this file except in compliance | ||||||
|  | # with the License.  You may obtain a copy of the License at | ||||||
|  | #  | ||||||
|  | #   http://www.apache.org/licenses/LICENSE-2.0 | ||||||
|  | #  | ||||||
|  | # Unless required by applicable law or agreed to in writing, | ||||||
|  | # software distributed under the License is distributed on an | ||||||
|  | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | ||||||
|  | # KIND, either express or implied.  See the License for the | ||||||
|  | # specific language governing permissions and limitations | ||||||
|  | # under the License. | ||||||
|  | 
 | ||||||
|  | # Required for a tocmat cloned service | ||||||
|  | SERVICE_NAME=cloudstack-management | ||||||
|  | 
 | ||||||
|  | # Where your java installation lives | ||||||
|  | #JAVA_HOME="/usr/lib/jvm/java" | ||||||
|  | 
 | ||||||
|  | # Where your cloudstack-management installation lives | ||||||
|  | CATALINA_BASE="/usr/share/cloudstack-management" | ||||||
|  | CATALINA_HOME="/usr/share/cloudstack-management" | ||||||
|  | JASPER_HOME="/usr/share/cloudstack-management" | ||||||
|  | CATALINA_TMPDIR="/usr/share/cloudstack-management/temp" | ||||||
|  | 
 | ||||||
|  | JAVA_OPTS="-Djava.awt.headless=true -Dcom.sun.management.jmxremote=false -Xmx2g -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/var/log/cloudstack/management/ -XX:PermSize=512M -XX:MaxPermSize=800m" | ||||||
|  | 
 | ||||||
|  | if [ -r "/etc/cloudstack/management/cloudmanagementserver.keystore" ] ; then | ||||||
|  |   JAVA_OPTS="$JAVA_OPTS -Djavax.net.ssl.trustStore=/etc/cloudstack/management/cloudmanagementserver.keystore -Djavax.net.ssl.trustStorePassword=vmops.com " | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | TOMCAT_USER="cloud" | ||||||
|  | 
 | ||||||
|  | SECURITY_MANAGER="false" | ||||||
|  | 
 | ||||||
|  | SHUTDOWN_WAIT="30" | ||||||
|  | 
 | ||||||
|  | SHUTDOWN_VERBOSE="false" | ||||||
|  | 
 | ||||||
|  | # Set the TOMCAT_PID location | ||||||
|  | CATALINA_PID="/var/run/cloudstack-management.pid" | ||||||
|  | 
 | ||||||
|  | CLASSPATH=/etc/cloudstack/management:/usr/share/cloudstack-common:/usr/share/cloudstack-management/setup:/usr/share/java/mysql-connector-java.jar | ||||||
|  | 
 | ||||||
							
								
								
									
										156
									
								
								packaging/centos7/cloud-usage.rc
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										156
									
								
								packaging/centos7/cloud-usage.rc
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,156 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | 
 | ||||||
|  | ### BEGIN INIT INFO | ||||||
|  | # Provides:          cloudstack-usage | ||||||
|  | # Required-Start:    $network $local_fs | ||||||
|  | # Required-Stop:     $network $local_fs | ||||||
|  | # Default-Start:     3 4 5 | ||||||
|  | # Default-Stop:      0 1 2 6 | ||||||
|  | # Short-Description: Start/stop Apache CloudStack Usage Monitor | ||||||
|  | # Description: This scripts Starts/Stops the Apache CloudStack Usage Monitor | ||||||
|  | ##  The CloudStack Usage Monitor is a part of the Apache CloudStack project and is used | ||||||
|  | ##  for storing usage statistics from instances. | ||||||
|  | ## JSVC (Java daemonizing) is used for starting and stopping the usage monitor. | ||||||
|  | ### END INIT INFO | ||||||
|  | 
 | ||||||
|  | # Licensed to the Apache Software Foundation (ASF) under one | ||||||
|  | # or more contributor license agreements.  See the NOTICE file | ||||||
|  | # distributed with this work for additional information | ||||||
|  | # regarding copyright ownership.  The ASF licenses this file | ||||||
|  | # to you under the Apache License, Version 2.0 (the | ||||||
|  | # "License"); you may not use this file except in compliance | ||||||
|  | # with the License.  You may obtain a copy of the License at | ||||||
|  | # | ||||||
|  | #   http://www.apache.org/licenses/LICENSE-2.0 | ||||||
|  | # | ||||||
|  | # Unless required by applicable law or agreed to in writing, | ||||||
|  | # software distributed under the License is distributed on an | ||||||
|  | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | ||||||
|  | # KIND, either express or implied.  See the License for the | ||||||
|  | # specific language governing permissions and limitations | ||||||
|  | # under the License. | ||||||
|  | 
 | ||||||
|  | . /etc/rc.d/init.d/functions | ||||||
|  | 
 | ||||||
|  | SHORTNAME="cloudstack-usage" | ||||||
|  | PIDFILE=/var/run/"$SHORTNAME".pid | ||||||
|  | LOCKFILE=/var/lock/subsys/"$SHORTNAME" | ||||||
|  | LOGDIR=/var/log/cloudstack/usage | ||||||
|  | LOGFILE=${LOGDIR}/usage.log | ||||||
|  | PROGNAME="CloudStack Usage Monitor" | ||||||
|  | CLASS="com.cloud.usage.UsageServer" | ||||||
|  | PROG="jsvc" | ||||||
|  | DAEMON="/usr/bin/jsvc" | ||||||
|  | USER=cloud | ||||||
|  | 
 | ||||||
|  | unset OPTIONS | ||||||
|  | [ -r /etc/sysconfig/default/"$SHORTNAME" ] && source /etc/sysconfig/default/"$SHORTNAME" | ||||||
|  | 
 | ||||||
|  | setJavaHome() { | ||||||
|  |   # use $JAVA_HOME if defined | ||||||
|  |   if [ -n "$JAVA_HOME" ] ; then | ||||||
|  |     return | ||||||
|  |   fi | ||||||
|  | 
 | ||||||
|  |   # try java first | ||||||
|  |   java=$(which java 2>/dev/null || :) | ||||||
|  | 
 | ||||||
|  |   # try javac if java is not found | ||||||
|  |   if [ -z "$java" ] ; then | ||||||
|  |     java=$(which javac 2>/dev/null || :) | ||||||
|  |   fi | ||||||
|  | 
 | ||||||
|  |   if [ -n "$java" ] ; then | ||||||
|  |     JAVA_HOME=$(dirname $(dirname $(readlink -e $java))) | ||||||
|  |     export JAVA_HOME | ||||||
|  |     return | ||||||
|  |   fi | ||||||
|  | 
 | ||||||
|  |   # didnt find java home. exiting with error | ||||||
|  |   exit 1 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | setJavaHome | ||||||
|  | 
 | ||||||
|  | SCP="" | ||||||
|  | DCP="" | ||||||
|  | UCP=`ls /usr/share/cloudstack-usage/cloud-usage-*.jar`":"`ls /usr/share/cloudstack-usage/lib/*.jar | tr '\n' ':'` | ||||||
|  | JCP="/usr/share/java/commons-daemon.jar":"/usr/share/java/mysql-connector-java.jar" | ||||||
|  | 
 | ||||||
|  | # We need to append the JSVC daemon  and mysql-connector JAR to the classpath | ||||||
|  | # AgentShell implements the JSVC daemon methods | ||||||
|  | export CLASSPATH="$SCP:$DCP:$UCP:$JCP:/etc/cloudstack/usage" | ||||||
|  | 
 | ||||||
|  | start() { | ||||||
|  |     if [ -s "$PIDFILE" ] && kill -0 $(cat "$PIDFILE") >/dev/null 2>&1; then | ||||||
|  |         echo "$PROGNAME apparently already running" | ||||||
|  |         exit 0 | ||||||
|  |     fi | ||||||
|  | 
 | ||||||
|  |     if hostname --fqdn >/dev/null 2>&1 ; then | ||||||
|  |         true | ||||||
|  |     else | ||||||
|  |         echo "The host name does not resolve properly to an IP address. Cannot start $PROGNAME" | ||||||
|  |         exit 1 | ||||||
|  |     fi | ||||||
|  | 
 | ||||||
|  |     echo -n "Starting $PROGNAME" "$SHORTNAME" | ||||||
|  | 
 | ||||||
|  |     if daemon --pidfile $PIDFILE $DAEMON -home "$JAVA_HOME" -cp "$CLASSPATH" -pidfile "$PIDFILE" -user "$USER" \ | ||||||
|  |       -errfile $LOGDIR/cloudstack-usage.err -outfile $LOGDIR/cloudstack-usage.out -Dpid=$$ $CLASS | ||||||
|  |         RETVAL=$? | ||||||
|  |     then | ||||||
|  |         rc=0 | ||||||
|  |         sleep 1 | ||||||
|  |         if ! kill -0 $(cat "$PIDFILE") >/dev/null 2>&1; then | ||||||
|  |             failure | ||||||
|  |             rc=1 | ||||||
|  |         fi | ||||||
|  |     else | ||||||
|  |         rc=1 | ||||||
|  |     fi | ||||||
|  | 
 | ||||||
|  |     if [ $rc -eq 0 ]; then | ||||||
|  |         success | ||||||
|  |     else | ||||||
|  |         failure | ||||||
|  |         rm -f "$PIDFILE" | ||||||
|  |     fi | ||||||
|  |     echo | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | stop() { | ||||||
|  |     echo -n "Stopping $PROGNAME" "$SHORTNAME" | ||||||
|  |     killproc -p $PIDFILE $DAEMON | ||||||
|  |     if [ "$?" -eq 0 ]; then | ||||||
|  |         success | ||||||
|  |     else | ||||||
|  |         failure | ||||||
|  |     fi | ||||||
|  |     rm -f "$PIDFILE" | ||||||
|  |     echo | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | case "$1" in | ||||||
|  |     start) | ||||||
|  |         start | ||||||
|  |         ;; | ||||||
|  |     stop) | ||||||
|  |         stop | ||||||
|  |         ;; | ||||||
|  |     status) | ||||||
|  |         status -p $PIDFILE $SHORTNAME | ||||||
|  |         RETVAL=$? | ||||||
|  |         ;; | ||||||
|  |     restart | force-reload) | ||||||
|  |         stop | ||||||
|  |         sleep 3 | ||||||
|  |         start | ||||||
|  |         ;; | ||||||
|  |     *) | ||||||
|  |     echo "Usage: $0 {start|stop|restart|force-reload|status}" | ||||||
|  |     RETVAL=3 | ||||||
|  | esac | ||||||
|  | 
 | ||||||
|  | exit $RETVAL | ||||||
|  | 
 | ||||||
							
								
								
									
										2
									
								
								packaging/centos7/cloud.limits
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								packaging/centos7/cloud.limits
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,2 @@ | |||||||
|  | cloud hard nofile 4096 | ||||||
|  | cloud soft nofile 4096 | ||||||
							
								
								
									
										605
									
								
								packaging/centos7/cloud.spec
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										605
									
								
								packaging/centos7/cloud.spec
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,605 @@ | |||||||
|  | # Licensed to the Apache Software Foundation (ASF) under one | ||||||
|  | # or more contributor license agreements.  See the NOTICE file | ||||||
|  | # distributed with this work for additional information | ||||||
|  | # regarding copyright ownership.  The ASF licenses this file | ||||||
|  | # to you under the Apache License, Version 2.0 (the | ||||||
|  | # "License"); you may not use this file except in compliance | ||||||
|  | # with the License.  You may obtain a copy of the License at | ||||||
|  | # | ||||||
|  | #   http://www.apache.org/licenses/LICENSE-2.0 | ||||||
|  | #  | ||||||
|  | # Unless required by applicable law or agreed to in writing, | ||||||
|  | # software distributed under the License is distributed on an | ||||||
|  | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | ||||||
|  | # KIND, either express or implied.  See the License for the | ||||||
|  | # specific language governing permissions and limitations | ||||||
|  | # under the License. | ||||||
|  | 
 | ||||||
|  | %define __os_install_post %{nil} | ||||||
|  | %global debug_package %{nil} | ||||||
|  | 
 | ||||||
|  | # DISABLE the post-percentinstall java repacking and line number stripping | ||||||
|  | # we need to find a way to just disable the java repacking and line number stripping, but not the autodeps | ||||||
|  | 
 | ||||||
|  | Name:      cloudstack | ||||||
|  | Summary:   CloudStack IaaS Platform | ||||||
|  | #http://fedoraproject.org/wiki/PackageNamingGuidelines#Pre-Release_packages | ||||||
|  | %if "%{?_prerelease}" != "" | ||||||
|  | %define _maventag %{_ver}-SNAPSHOT | ||||||
|  | Release:   %{_rel}%{dist} | ||||||
|  | %else | ||||||
|  | %define _maventag %{_ver} | ||||||
|  | Release:   %{_rel}%{dist} | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | %{!?python_sitearch: %define python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")} | ||||||
|  | 
 | ||||||
|  | Version:   %{_ver} | ||||||
|  | License:   ASL 2.0 | ||||||
|  | Vendor:    Apache CloudStack <dev@cloudstack.apache.org> | ||||||
|  | Packager:  Apache CloudStack <dev@cloudstack.apache.org> | ||||||
|  | Group:     System Environment/Libraries | ||||||
|  | # FIXME do groups for every single one of the subpackages | ||||||
|  | Source0:   %{name}-%{_maventag}.tgz | ||||||
|  | BuildRoot: %{_tmppath}/%{name}-%{_maventag}-%{release}-build | ||||||
|  | 
 | ||||||
|  | BuildRequires: java-1.7.0-openjdk-devel | ||||||
|  | BuildRequires: tomcat => 7.0 | ||||||
|  | BuildRequires: ws-commons-util | ||||||
|  | BuildRequires: jpackage-utils | ||||||
|  | BuildRequires: gcc | ||||||
|  | BuildRequires: glibc-devel | ||||||
|  | BuildRequires: /usr/bin/mkisofs | ||||||
|  | BuildRequires: MySQL-python | ||||||
|  | BuildRequires: maven => 3.0.0 | ||||||
|  | 
 | ||||||
|  | %description | ||||||
|  | CloudStack is a highly-scalable elastic, open source, | ||||||
|  | intelligent IaaS cloud implementation. | ||||||
|  | 
 | ||||||
|  | %package management | ||||||
|  | Summary:   CloudStack management server UI | ||||||
|  | Requires: tomcat => 7.0 | ||||||
|  | Requires: java => 1.7.0 | ||||||
|  | Requires: python | ||||||
|  | Requires: bash | ||||||
|  | Requires: bzip2 | ||||||
|  | Requires: gzip | ||||||
|  | Requires: unzip | ||||||
|  | Requires: /sbin/mount.nfs | ||||||
|  | Requires: openssh-clients | ||||||
|  | Requires: nfs-utils | ||||||
|  | Requires: wget | ||||||
|  | Requires: mysql | ||||||
|  | Requires: mysql-connector-java | ||||||
|  | Requires: ws-commons-util | ||||||
|  | Requires: jpackage-utils | ||||||
|  | Requires: sudo | ||||||
|  | Requires: /sbin/service | ||||||
|  | Requires: /sbin/chkconfig | ||||||
|  | Requires: /usr/bin/ssh-keygen | ||||||
|  | Requires: mkisofs | ||||||
|  | Requires: MySQL-python | ||||||
|  | Requires: ipmitool | ||||||
|  | Requires: %{name}-common = %{_ver} | ||||||
|  | Requires: %{name}-awsapi = %{_ver} | ||||||
|  | Requires: iptables-services | ||||||
|  | Group:     System Environment/Libraries | ||||||
|  | %description management | ||||||
|  | The CloudStack management server is the central point of coordination, | ||||||
|  | management, and intelligence in CloudStack.   | ||||||
|  | 
 | ||||||
|  | %package common | ||||||
|  | Summary: Apache CloudStack common files and scripts | ||||||
|  | Requires: python | ||||||
|  | Group:   System Environment/Libraries | ||||||
|  | %description common | ||||||
|  | The Apache CloudStack files shared between agent and management server | ||||||
|  | 
 | ||||||
|  | %package agent | ||||||
|  | Summary: CloudStack Agent for KVM hypervisors | ||||||
|  | Requires: openssh-clients | ||||||
|  | Requires: java => 1.7.0 | ||||||
|  | Requires: %{name}-common = %{_ver} | ||||||
|  | Requires: libvirt | ||||||
|  | Requires: bridge-utils | ||||||
|  | Requires: ebtables | ||||||
|  | Requires: iptables | ||||||
|  | Requires: ethtool | ||||||
|  | Requires: iproute | ||||||
|  | Requires: ipset | ||||||
|  | Requires: jsvc | ||||||
|  | Requires: jakarta-commons-daemon | ||||||
|  | Requires: jakarta-commons-daemon-jsvc | ||||||
|  | Requires: perl | ||||||
|  | Requires: libvirt-python | ||||||
|  | Requires: qemu-img | ||||||
|  | Requires: qemu-kvm | ||||||
|  | Provides: cloud-agent | ||||||
|  | Group: System Environment/Libraries | ||||||
|  | %description agent | ||||||
|  | The CloudStack agent for KVM hypervisors | ||||||
|  | 
 | ||||||
|  | %package baremetal-agent | ||||||
|  | Summary: CloudStack baremetal agent | ||||||
|  | Requires: tftp-server | ||||||
|  | Requires: xinetd | ||||||
|  | Requires: syslinux | ||||||
|  | Requires: chkconfig | ||||||
|  | Requires: dhcp | ||||||
|  | Requires: httpd | ||||||
|  | Group:     System Environment/Libraries | ||||||
|  | %description baremetal-agent | ||||||
|  | The CloudStack baremetal agent | ||||||
|  | 
 | ||||||
|  | %package usage | ||||||
|  | Summary: CloudStack Usage calculation server | ||||||
|  | Requires: java => 1.7.0 | ||||||
|  | Requires: jsvc | ||||||
|  | Requires: jakarta-commons-daemon | ||||||
|  | Requires: jakarta-commons-daemon-jsvc | ||||||
|  | Group: System Environment/Libraries | ||||||
|  | %description usage | ||||||
|  | The CloudStack usage calculation service | ||||||
|  | 
 | ||||||
|  | %package cli | ||||||
|  | Summary: Apache CloudStack CLI | ||||||
|  | Provides: python-cloudmonkey | ||||||
|  | Provides: python-marvin | ||||||
|  | Group: System Environment/Libraries | ||||||
|  | %description cli | ||||||
|  | Apache CloudStack command line interface | ||||||
|  | 
 | ||||||
|  | %package awsapi | ||||||
|  | Summary: Apache CloudStack AWS API compatibility wrapper | ||||||
|  | Requires: %{name}-management = %{_ver} | ||||||
|  | Group: System Environment/Libraries | ||||||
|  | %description awsapi | ||||||
|  | Apache Cloudstack AWS API compatibility wrapper | ||||||
|  | 
 | ||||||
|  | %if "%{_ossnoss}" == "noredist" | ||||||
|  | %package mysql-ha | ||||||
|  | Summary: Apache CloudStack Balancing Strategy for MySQL | ||||||
|  | Requires: mysql-connector-java | ||||||
|  | Requires: tomcat => 7.0 | ||||||
|  | Group: System Environmnet/Libraries | ||||||
|  | %description mysql-ha | ||||||
|  | Apache CloudStack Balancing Strategy for MySQL | ||||||
|  | 
 | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | %prep | ||||||
|  | echo Doing CloudStack build | ||||||
|  | 
 | ||||||
|  | %setup -q -n %{name}-%{_maventag} | ||||||
|  | 
 | ||||||
|  | %build | ||||||
|  | 
 | ||||||
|  | cp packaging/centos7/replace.properties build/replace.properties | ||||||
|  | echo VERSION=%{_maventag} >> build/replace.properties | ||||||
|  | echo PACKAGE=%{name} >> build/replace.properties | ||||||
|  | touch build/gitrev.txt | ||||||
|  | echo $(git rev-parse HEAD) > build/gitrev.txt | ||||||
|  | 
 | ||||||
|  | if [ "%{_ossnoss}" == "NOREDIST" -o "%{_ossnoss}" == "noredist" ] ; then | ||||||
|  |    echo "Adding noredist flag to the maven build" | ||||||
|  |    FLAGS="$FLAGS -Dnoredist" | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | if [ "%{_sim}" == "SIMULATOR" -o "%{_sim}" == "simulator" ] ; then  | ||||||
|  |    echo "Adding simulator flag to the maven build" | ||||||
|  |    FLAGS="$FLAGS -Dsimulator" | ||||||
|  | fi  | ||||||
|  | 
 | ||||||
|  | mvn -Pawsapi,systemvm -DskipTests $FLAGS clean package | ||||||
|  | 
 | ||||||
|  | %install | ||||||
|  | [ ${RPM_BUILD_ROOT} != "/" ] && rm -rf ${RPM_BUILD_ROOT} | ||||||
|  | # Common directories | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_bindir} | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/log/%{name}/agent | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/log/%{name}/awsapi | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/log/%{name}/ipallocator | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/cache/%{name}/management/work | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/cache/%{name}/management/temp | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/%{name}/mnt | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/%{name}/management | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_initrddir} | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig | ||||||
|  | 
 | ||||||
|  | # Common | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/%{name}-common/scripts | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/%{name}-common/vms | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{python_sitearch}/ | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%/usr/bin | ||||||
|  | cp -r scripts/* ${RPM_BUILD_ROOT}%{_datadir}/%{name}-common/scripts | ||||||
|  | install -D systemvm/dist/systemvm.iso ${RPM_BUILD_ROOT}%{_datadir}/%{name}-common/vms/systemvm.iso | ||||||
|  | install -D systemvm/dist/systemvm.zip ${RPM_BUILD_ROOT}%{_datadir}/%{name}-common/vms/systemvm.zip | ||||||
|  | install python/lib/cloud_utils.py ${RPM_BUILD_ROOT}%{python_sitearch}/cloud_utils.py | ||||||
|  | cp -r python/lib/cloudutils ${RPM_BUILD_ROOT}%{python_sitearch}/ | ||||||
|  | python -m py_compile ${RPM_BUILD_ROOT}%{python_sitearch}/cloud_utils.py | ||||||
|  | python -m compileall ${RPM_BUILD_ROOT}%{python_sitearch}/cloudutils | ||||||
|  | cp build/gitrev.txt ${RPM_BUILD_ROOT}%{_datadir}/%{name}-common/scripts | ||||||
|  | cp packaging/centos7/cloudstack-sccs ${RPM_BUILD_ROOT}/usr/bin | ||||||
|  |   | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/%{name}-common/scripts/network/cisco | ||||||
|  | cp -r plugins/network-elements/cisco-vnmc/scripts/network/cisco/* ${RPM_BUILD_ROOT}%{_datadir}/%{name}-common/scripts/network/cisco | ||||||
|  | 
 | ||||||
|  | # Management | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/ | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/webapps/client | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/setup | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/log/%{name}/management | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/log/%{name}/awsapi | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/run | ||||||
|  | 
 | ||||||
|  | # Specific for tomcat | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/Catalina/localhost/client | ||||||
|  | ln -sf /usr/share/tomcat/bin ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/bin | ||||||
|  | ln -sf /etc/%{name}/management ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/conf | ||||||
|  | ln -sf /usr/share/tomcat/lib ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/lib | ||||||
|  | ln -sf /var/log/%{name}/management ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/logs | ||||||
|  | ln -sf /var/cache/%{name}/management/temp ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/temp | ||||||
|  | ln -sf /var/cache/%{name}/management/work ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/work | ||||||
|  | 
 | ||||||
|  | /bin/touch ${RPM_BUILD_ROOT}%{_localstatedir}/log/%{name}/management/catalina.out | ||||||
|  | 
 | ||||||
|  | install -D client/target/utilities/bin/cloud-migrate-databases ${RPM_BUILD_ROOT}%{_bindir}/%{name}-migrate-databases | ||||||
|  | install -D client/target/utilities/bin/cloud-set-guest-password ${RPM_BUILD_ROOT}%{_bindir}/%{name}-set-guest-password | ||||||
|  | install -D client/target/utilities/bin/cloud-set-guest-sshkey ${RPM_BUILD_ROOT}%{_bindir}/%{name}-set-guest-sshkey | ||||||
|  | install -D client/target/utilities/bin/cloud-setup-databases ${RPM_BUILD_ROOT}%{_bindir}/%{name}-setup-databases | ||||||
|  | install -D client/target/utilities/bin/cloud-setup-encryption ${RPM_BUILD_ROOT}%{_bindir}/%{name}-setup-encryption | ||||||
|  | install -D client/target/utilities/bin/cloud-setup-management ${RPM_BUILD_ROOT}%{_bindir}/%{name}-setup-management | ||||||
|  | install -D client/target/utilities/bin/cloud-setup-baremetal ${RPM_BUILD_ROOT}%{_bindir}/%{name}-setup-baremetal | ||||||
|  | install -D client/target/utilities/bin/cloud-sysvmadm ${RPM_BUILD_ROOT}%{_bindir}/%{name}-sysvmadm | ||||||
|  | install -D client/target/utilities/bin/cloud-update-xenserver-licenses ${RPM_BUILD_ROOT}%{_bindir}/%{name}-update-xenserver-licenses | ||||||
|  | 
 | ||||||
|  | cp -r client/target/utilities/scripts/db/* ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/setup | ||||||
|  | cp -r client/target/cloud-client-ui-%{_maventag}/* ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/webapps/client | ||||||
|  | 
 | ||||||
|  | # Don't package the scripts in the management webapp | ||||||
|  | rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/webapps/client/WEB-INF/classes/scripts | ||||||
|  | rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/webapps/client/WEB-INF/classes/vms | ||||||
|  | 
 | ||||||
|  | for name in catalina.properties db.properties log4j-cloud.xml web.xml cloud-bridge.properties\ | ||||||
|  |             ec2-service.properties server.xml commons-logging.properties environment.properties tomcat-users.xml | ||||||
|  | do | ||||||
|  |   cp packaging/centos7/tomcat7/$name \ | ||||||
|  |     ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/$name | ||||||
|  | done | ||||||
|  | 
 | ||||||
|  | #ln -s %{_sysconfdir}/%{name}/management/log4j-cloud.xml \ | ||||||
|  | #    ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/webapps/client/WEB-INF/classes/log4j-cloud.xml | ||||||
|  | 
 | ||||||
|  | mv ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/webapps/client/WEB-INF/classes/context.xml \ | ||||||
|  |     ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/Catalina/localhost/client | ||||||
|  | 
 | ||||||
|  | install python/bindir/cloud-external-ipallocator.py ${RPM_BUILD_ROOT}%{_bindir}/%{name}-external-ipallocator.py | ||||||
|  | install -D client/target/pythonlibs/jasypt-1.9.0.jar ${RPM_BUILD_ROOT}%{_datadir}/%{name}-common/lib/jasypt-1.9.0.jar | ||||||
|  | 
 | ||||||
|  | install -D packaging/centos7/cloud-ipallocator.rc ${RPM_BUILD_ROOT}%{_initrddir}/%{name}-ipallocator | ||||||
|  | install -D packaging/centos7/cloud-management.sysconfig ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/%{name}-management | ||||||
|  | install -D packaging/centos7/cloud-management.service ${RPM_BUILD_ROOT}%{_unitdir}/%{name}-management.service | ||||||
|  | install -D packaging/centos7/cloud-management.sudoers ${RPM_BUILD_ROOT}%{_sysconfdir}/sudoers.d/%{name}-management | ||||||
|  | install -D packaging/centos7/cloud.limits ${RPM_BUILD_ROOT}%{_sysconfdir}/security/limits.d/cloud | ||||||
|  | touch ${RPM_BUILD_ROOT}%{_localstatedir}/run/%{name}-management.pid | ||||||
|  | 
 | ||||||
|  | chmod 770 ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/Catalina | ||||||
|  | chmod 770 ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/Catalina/localhost | ||||||
|  | chmod 770 ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/Catalina/localhost/client | ||||||
|  | chmod 770 ${RPM_BUILD_ROOT}%{_localstatedir}/%{name}/mnt | ||||||
|  | chmod 770 ${RPM_BUILD_ROOT}%{_localstatedir}/%{name}/management | ||||||
|  | chmod 770 ${RPM_BUILD_ROOT}%{_localstatedir}/cache/%{name}/management/work | ||||||
|  | chmod 770 ${RPM_BUILD_ROOT}%{_localstatedir}/cache/%{name}/management/temp | ||||||
|  | chmod 770 ${RPM_BUILD_ROOT}%{_localstatedir}/log/%{name}/management | ||||||
|  | chmod 770 ${RPM_BUILD_ROOT}%{_localstatedir}/log/%{name}/agent | ||||||
|  | 
 | ||||||
|  | # KVM Agent | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/agent | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/log/%{name}/agent | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/%{name}-agent/lib | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/%{name}-agent/plugins | ||||||
|  | install -D packaging/centos7/cloud-agent.rc ${RPM_BUILD_ROOT}%{_sysconfdir}/init.d/%{name}-agent | ||||||
|  | install -D agent/target/transformed/agent.properties ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/agent/agent.properties | ||||||
|  | install -D agent/target/transformed/environment.properties ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/agent/environment.properties | ||||||
|  | install -D agent/target/transformed/log4j-cloud.xml ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/agent/log4j-cloud.xml | ||||||
|  | install -D agent/target/transformed/cloud-setup-agent ${RPM_BUILD_ROOT}%{_bindir}/%{name}-setup-agent | ||||||
|  | install -D agent/target/transformed/cloudstack-agent-upgrade ${RPM_BUILD_ROOT}%{_bindir}/%{name}-agent-upgrade | ||||||
|  | install -D agent/target/transformed/libvirtqemuhook ${RPM_BUILD_ROOT}%{_datadir}/%{name}-agent/lib/libvirtqemuhook | ||||||
|  | install -D agent/target/transformed/cloud-ssh ${RPM_BUILD_ROOT}%{_bindir}/%{name}-ssh | ||||||
|  | install -D plugins/hypervisors/kvm/target/cloud-plugin-hypervisor-kvm-%{_maventag}.jar ${RPM_BUILD_ROOT}%{_datadir}/%name-agent/lib/cloud-plugin-hypervisor-kvm-%{_maventag}.jar | ||||||
|  | cp plugins/hypervisors/kvm/target/dependencies/*  ${RPM_BUILD_ROOT}%{_datadir}/%{name}-agent/lib | ||||||
|  | 
 | ||||||
|  | # Usage server | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/usage | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/%{name}-usage/lib | ||||||
|  | install -D usage/target/cloud-usage-%{_maventag}.jar ${RPM_BUILD_ROOT}%{_datadir}/%{name}-usage/cloud-usage-%{_maventag}.jar | ||||||
|  | install -D usage/target/transformed/db.properties ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/usage/db.properties | ||||||
|  | install -D usage/target/transformed/log4j-cloud_usage.xml ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/usage/log4j-cloud.xml | ||||||
|  | cp usage/target/dependencies/* ${RPM_BUILD_ROOT}%{_datadir}/%{name}-usage/lib/ | ||||||
|  | install -D packaging/centos7/cloud-usage.rc ${RPM_BUILD_ROOT}/%{_sysconfdir}/init.d/%{name}-usage | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/log/%{name}/usage/ | ||||||
|  | 
 | ||||||
|  | # CLI | ||||||
|  | cp -r cloud-cli/cloudtool ${RPM_BUILD_ROOT}%{python_sitearch}/ | ||||||
|  | install cloud-cli/cloudapis/cloud.py ${RPM_BUILD_ROOT}%{python_sitearch}/cloudapis.py | ||||||
|  | 
 | ||||||
|  | # AWS API | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi | ||||||
|  | mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/setup | ||||||
|  | cp -r awsapi/target/cloud-awsapi-%{_maventag}/* ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi | ||||||
|  | install -D awsapi-setup/setup/cloud-setup-bridge ${RPM_BUILD_ROOT}%{_bindir}/cloudstack-setup-bridge | ||||||
|  | install -D awsapi-setup/setup/cloudstack-aws-api-register ${RPM_BUILD_ROOT}%{_bindir}/cloudstack-aws-api-register | ||||||
|  | cp -r awsapi-setup/db/mysql/* ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/setup | ||||||
|  | cp awsapi/resource/Axis2/axis2.xml ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/conf | ||||||
|  | cp awsapi/target/WEB-INF/services/cloud-ec2.aar ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/services | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | for name in cloud-bridge.properties commons-logging.properties ec2-service.properties ; do | ||||||
|  |   mv ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/classes/$name \ | ||||||
|  |     ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/$name | ||||||
|  | done | ||||||
|  | 
 | ||||||
|  | # MYSQL HA | ||||||
|  | if [ "x%{_ossnoss}" == "xnoredist" ] ; then | ||||||
|  |   mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/%{name}-mysql-ha/lib | ||||||
|  |   cp -r plugins/database/mysql-ha/target/cloud-plugin-database-mysqlha-%{_maventag}.jar ${RPM_BUILD_ROOT}%{_datadir}/%{name}-mysql-ha/lib | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | #Don't package the below for AWS API | ||||||
|  | rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/classes/db.properties | ||||||
|  | rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/classes/LICENSE.txt | ||||||
|  | rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/classes/log4j.properties | ||||||
|  | rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/classes/log4j-vmops.xml | ||||||
|  | rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/classes/META-INF | ||||||
|  | rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/classes/NOTICE.txt | ||||||
|  | rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/classes/services.xml | ||||||
|  | 
 | ||||||
|  | #License files from whisker | ||||||
|  | install -D tools/whisker/NOTICE ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-management-%{version}/NOTICE | ||||||
|  | install -D tools/whisker/LICENSE ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-management-%{version}/LICENSE | ||||||
|  | install -D tools/whisker/NOTICE ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-common-%{version}/NOTICE | ||||||
|  | install -D tools/whisker/LICENSE ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-common-%{version}/LICENSE | ||||||
|  | install -D tools/whisker/NOTICE ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-agent-%{version}/NOTICE | ||||||
|  | install -D tools/whisker/LICENSE ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-agent-%{version}/LICENSE | ||||||
|  | install -D tools/whisker/NOTICE ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-usage-%{version}/NOTICE | ||||||
|  | install -D tools/whisker/LICENSE ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-usage-%{version}/LICENSE | ||||||
|  | install -D tools/whisker/NOTICE ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-awsapi-%{version}/NOTICE | ||||||
|  | install -D tools/whisker/LICENSE ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-awsapi-%{version}/LICENSE | ||||||
|  | install -D tools/whisker/NOTICE ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-cli-%{version}/NOTICE | ||||||
|  | install -D tools/whisker/LICENSE ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-cli-%{version}/LICENSE | ||||||
|  | if [ "x%{_ossnoss}" == "xnoredist" ] ; then | ||||||
|  |   install -D tools/whisker/LICENSE ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-mysql-ha-%{version}/LICENSE | ||||||
|  |   install -D tools/whisker/NOTICE ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-mysql-ha-%{version}/NOTICE | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | %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 | ||||||
|  | /usr/bin/systemctl stop cloudstack-management || true | ||||||
|  | /usr/bin/systemctl off cloudstack-management || true | ||||||
|  | 
 | ||||||
|  | %pre management | ||||||
|  | id cloud > /dev/null 2>&1 || /usr/sbin/useradd -M -c "CloudStack unprivileged user" \ | ||||||
|  |      -r -s /bin/sh -d %{_localstatedir}/cloudstack/management cloud|| true | ||||||
|  | 
 | ||||||
|  | rm -rf %{_localstatedir}/cache/cloudstack | ||||||
|  | 
 | ||||||
|  | %post management | ||||||
|  | if [ "$1" == "1" ] ; then | ||||||
|  |     /usr/bin/systemctl on cloudstack-management > /dev/null 2>&1 || true | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | if [ -d "%{_datadir}/%{name}-management" ] ; then | ||||||
|  |    ln -s %{_datadir}/%{name}-bridge/webapps %{_datadir}/%{name}-management/webapps7080 | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | if [ ! -f %{_datadir}/cloudstack-common/scripts/vm/hypervisor/xenserver/vhd-util ] ; then | ||||||
|  |     echo Please download vhd-util from http://download.cloud.com.s3.amazonaws.com/tools/vhd-util and put it in  | ||||||
|  |     echo %{_datadir}/cloudstack-common/scripts/vm/hypervisor/xenserver/ | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | %preun agent | ||||||
|  | /sbin/service cloudstack-agent stop || true | ||||||
|  | if [ "$1" == "0" ] ; then | ||||||
|  |     /sbin/chkconfig --del cloudstack-agent > /dev/null 2>&1 || true | ||||||
|  |     /sbin/service cloudstack-agent stop > /dev/null 2>&1 || true | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | %pre agent | ||||||
|  | 
 | ||||||
|  | # save old configs if they exist (for upgrade). Otherwise we may lose them | ||||||
|  | # when the old packages are erased. There are a lot of properties files here. | ||||||
|  | if [ -d "%{_sysconfdir}/cloud" ] ; then | ||||||
|  |     mv %{_sysconfdir}/cloud %{_sysconfdir}/cloud.rpmsave | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | %post agent | ||||||
|  | if [ "$1" == "1" ] ; then | ||||||
|  |     echo "Running %{_bindir}/%{name}-agent-upgrade to update bridge name for upgrade from CloudStack 4.0.x (and before) to CloudStack 4.1 (and later)" | ||||||
|  |     %{_bindir}/%{name}-agent-upgrade | ||||||
|  |     if [ ! -d %{_sysconfdir}/libvirt/hooks ] ; then | ||||||
|  |         mkdir %{_sysconfdir}/libvirt/hooks | ||||||
|  |     fi | ||||||
|  |     cp -a ${RPM_BUILD_ROOT}%{_datadir}/%{name}-agent/lib/libvirtqemuhook %{_sysconfdir}/libvirt/hooks/qemu | ||||||
|  |     /sbin/service libvirtd restart | ||||||
|  |     /sbin/chkconfig --add cloudstack-agent > /dev/null 2>&1 || true | ||||||
|  |     /sbin/chkconfig --level 345 cloudstack-agent on > /dev/null 2>&1 || true | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | # if saved configs from upgrade exist, copy them over | ||||||
|  | if [ -f "%{_sysconfdir}/cloud.rpmsave/agent/agent.properties" ]; then | ||||||
|  |     mv %{_sysconfdir}/%{name}/agent/agent.properties  %{_sysconfdir}/%{name}/agent/agent.properties.rpmnew | ||||||
|  |     cp -p %{_sysconfdir}/cloud.rpmsave/agent/agent.properties %{_sysconfdir}/%{name}/agent | ||||||
|  |     # make sure we only do this on the first install of this RPM, don't want to overwrite on a reinstall | ||||||
|  |     mv %{_sysconfdir}/cloud.rpmsave/agent/agent.properties %{_sysconfdir}/cloud.rpmsave/agent/agent.properties.rpmsave | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | %preun usage | ||||||
|  | /sbin/service cloudstack-usage stop || true | ||||||
|  | if [ "$1" == "0" ] ; then | ||||||
|  |     /sbin/chkconfig --del cloudstack-usage > /dev/null 2>&1 || true | ||||||
|  |     /sbin/service cloudstack-usage stop > /dev/null 2>&1 || true | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | %post usage | ||||||
|  | if [ -f "%{_sysconfdir}/%{name}/management/db.properties" ]; then | ||||||
|  |     echo Replacing db.properties with management server db.properties | ||||||
|  |     rm -f %{_sysconfdir}/%{name}/usage/db.properties | ||||||
|  |     ln -s %{_sysconfdir}/%{name}/management/db.properties %{_sysconfdir}/%{name}/usage/db.properties | ||||||
|  |     /sbin/chkconfig --add cloudstack-usage > /dev/null 2>&1 || true | ||||||
|  |     /sbin/chkconfig --level 345 cloudstack-usage on > /dev/null 2>&1 || true | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | if [ -f "%{_sysconfdir}/%{name}/management/key" ]; then | ||||||
|  |     echo Replacing key with management server key | ||||||
|  |     rm -f %{_sysconfdir}/%{name}/usage/key | ||||||
|  |     ln -s %{_sysconfdir}/%{name}/management/key %{_sysconfdir}/%{name}/usage/key | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | #%post awsapi | ||||||
|  | #if [ -d "%{_datadir}/%{name}-management" ] ; then | ||||||
|  | #   ln -s %{_datadir}/%{name}-bridge/webapps %{_datadir}/%{name}-management/webapps7080 | ||||||
|  | #fi | ||||||
|  | 
 | ||||||
|  | #No default permission as the permission setup is complex | ||||||
|  | %files management | ||||||
|  | %defattr(-,root,root,-) | ||||||
|  | %dir %attr(0770,root,cloud) %{_sysconfdir}/%{name}/management/Catalina | ||||||
|  | %dir %attr(0770,root,cloud) %{_sysconfdir}/%{name}/management/Catalina/localhost | ||||||
|  | %dir %attr(0770,root,cloud) %{_sysconfdir}/%{name}/management/Catalina/localhost/client | ||||||
|  | %dir %{_datadir}/%{name}-management | ||||||
|  | %dir %attr(0770,root,cloud) %{_localstatedir}/%{name}/mnt | ||||||
|  | %dir %attr(0770,cloud,cloud) %{_localstatedir}/%{name}/management | ||||||
|  | %dir %attr(0770,root,cloud) %{_localstatedir}/cache/%{name}/management | ||||||
|  | %dir %attr(0770,root,cloud) %{_localstatedir}/cache/%{name}/management/work | ||||||
|  | %dir %attr(0770,root,cloud) %{_localstatedir}/cache/%{name}/management/temp | ||||||
|  | %dir %attr(0770,root,cloud) %{_localstatedir}/log/%{name}/management | ||||||
|  | %dir %attr(0770,root,cloud) %{_localstatedir}/log/%{name}/agent | ||||||
|  | %dir %attr(0770,root,cloud) %{_localstatedir}/log/%{name}/awsapi | ||||||
|  | %config(noreplace) %{_sysconfdir}/sysconfig/%{name}-management | ||||||
|  | %config(noreplace) %{_sysconfdir}/sudoers.d/%{name}-management | ||||||
|  | %config(noreplace) %{_sysconfdir}/security/limits.d/cloud | ||||||
|  | %config(noreplace) %attr(0640,root,cloud) %{_sysconfdir}/%{name}/management/db.properties | ||||||
|  | %config(noreplace) %{_sysconfdir}/%{name}/management/log4j-cloud.xml | ||||||
|  | %config(noreplace) %{_sysconfdir}/%{name}/management/Catalina/localhost/client/context.xml | ||||||
|  | %config(noreplace) %{_sysconfdir}/%{name}/management/catalina.properties | ||||||
|  | %config(noreplace) %{_sysconfdir}/%{name}/management/tomcat-users.xml | ||||||
|  | %config(noreplace) %{_sysconfdir}/%{name}/management/web.xml | ||||||
|  | %config(noreplace) %{_sysconfdir}/%{name}/management/server.xml | ||||||
|  | %config(noreplace) %{_sysconfdir}/%{name}/management/environment.properties | ||||||
|  | %config(noreplace) %{_sysconfdir}/%{name}/management/cloud-bridge.properties | ||||||
|  | %config(noreplace) %{_sysconfdir}/%{name}/management/commons-logging.properties | ||||||
|  | %config(noreplace) %{_sysconfdir}/%{name}/management/ec2-service.properties | ||||||
|  | %attr(0755,root,root) %{_unitdir}/%{name}-management.service | ||||||
|  | %attr(0755,cloud,cloud) %{_localstatedir}/run/%{name}-management.pid | ||||||
|  | 
 | ||||||
|  | %attr(0755,root,root) %{_bindir}/%{name}-setup-management | ||||||
|  | %attr(0755,root,root) %{_bindir}/%{name}-update-xenserver-licenses | ||||||
|  | %{_datadir}/%{name}-management/webapps | ||||||
|  | %{_datadir}/%{name}-management/bin | ||||||
|  | %{_datadir}/%{name}-management/conf | ||||||
|  | %{_datadir}/%{name}-management/lib | ||||||
|  | %{_datadir}/%{name}-management/logs | ||||||
|  | %{_datadir}/%{name}-management/temp | ||||||
|  | %{_datadir}/%{name}-management/work | ||||||
|  | %attr(0755,root,root) %{_bindir}/%{name}-setup-databases | ||||||
|  | %attr(0755,root,root) %{_bindir}/%{name}-migrate-databases | ||||||
|  | %attr(0755,root,root) %{_bindir}/%{name}-set-guest-password | ||||||
|  | %attr(0755,root,root) %{_bindir}/%{name}-set-guest-sshkey | ||||||
|  | %attr(0755,root,root) %{_bindir}/%{name}-sysvmadm | ||||||
|  | %attr(0755,root,root) %{_bindir}/%{name}-setup-encryption | ||||||
|  | %{_datadir}/%{name}-management/setup/*.sql | ||||||
|  | %{_datadir}/%{name}-management/setup/db/*.sql | ||||||
|  | %{_datadir}/%{name}-management/setup/*.sh | ||||||
|  | %{_datadir}/%{name}-management/setup/server-setup.xml | ||||||
|  | %attr(0755,root,root) %{_bindir}/%{name}-external-ipallocator.py | ||||||
|  | %attr(0755,root,root) %{_initrddir}/%{name}-ipallocator | ||||||
|  | %dir %attr(0770,root,root) %{_localstatedir}/log/%{name}/ipallocator | ||||||
|  | %{_defaultdocdir}/%{name}-management-%{version}/LICENSE | ||||||
|  | %{_defaultdocdir}/%{name}-management-%{version}/NOTICE | ||||||
|  | %attr(0644,cloud,cloud) %{_localstatedir}/log/%{name}/management/catalina.out | ||||||
|  | 
 | ||||||
|  | %files agent | ||||||
|  | %attr(0755,root,root) %{_bindir}/%{name}-setup-agent | ||||||
|  | %attr(0755,root,root) %{_bindir}/%{name}-agent-upgrade | ||||||
|  | %attr(0755,root,root) %{_bindir}/%{name}-ssh | ||||||
|  | %attr(0755,root,root) %{_sysconfdir}/init.d/%{name}-agent | ||||||
|  | %attr(0755,root,root) %{_datadir}/%{name}-common/scripts/network/cisco | ||||||
|  | %config(noreplace) %{_sysconfdir}/%{name}/agent | ||||||
|  | %dir %{_localstatedir}/log/%{name}/agent | ||||||
|  | %attr(0644,root,root) %{_datadir}/%{name}-agent/lib/*.jar | ||||||
|  | %attr(0755,root,root) %{_datadir}/%{name}-agent/lib/libvirtqemuhook | ||||||
|  | %dir %{_datadir}/%{name}-agent/plugins | ||||||
|  | %{_defaultdocdir}/%{name}-agent-%{version}/LICENSE | ||||||
|  | %{_defaultdocdir}/%{name}-agent-%{version}/NOTICE | ||||||
|  | 
 | ||||||
|  | %files common | ||||||
|  | %dir %attr(0755,root,root) %{python_sitearch}/cloudutils | ||||||
|  | %dir %attr(0755,root,root) %{_datadir}/%{name}-common/vms | ||||||
|  | %attr(0755,root,root) %{_datadir}/%{name}-common/scripts | ||||||
|  | %attr(0755,root,root) /usr/bin/cloudstack-sccs | ||||||
|  | %attr(0644, root, root) %{_datadir}/%{name}-common/vms/systemvm.iso | ||||||
|  | %attr(0644, root, root) %{_datadir}/%{name}-common/vms/systemvm.zip | ||||||
|  | %attr(0644,root,root) %{python_sitearch}/cloud_utils.py | ||||||
|  | %attr(0644,root,root) %{python_sitearch}/cloud_utils.pyc | ||||||
|  | %attr(0644,root,root) %{python_sitearch}/cloudutils/* | ||||||
|  | %attr(0644, root, root) %{_datadir}/%{name}-common/lib/jasypt-1.9.0.jar | ||||||
|  | %{_defaultdocdir}/%{name}-common-%{version}/LICENSE | ||||||
|  | %{_defaultdocdir}/%{name}-common-%{version}/NOTICE | ||||||
|  | 
 | ||||||
|  | %files usage | ||||||
|  | %attr(0755,root,root) %{_sysconfdir}/init.d/%{name}-usage | ||||||
|  | %attr(0644,root,root) %{_datadir}/%{name}-usage/*.jar | ||||||
|  | %attr(0644,root,root) %{_datadir}/%{name}-usage/lib/*.jar | ||||||
|  | %dir %attr(0770,root,cloud) %{_localstatedir}/log/%{name}/usage | ||||||
|  | %attr(0644,root,root) %{_sysconfdir}/%{name}/usage/db.properties | ||||||
|  | %attr(0644,root,root) %{_sysconfdir}/%{name}/usage/log4j-cloud.xml | ||||||
|  | %{_defaultdocdir}/%{name}-usage-%{version}/LICENSE | ||||||
|  | %{_defaultdocdir}/%{name}-usage-%{version}/NOTICE | ||||||
|  | 
 | ||||||
|  | %files cli | ||||||
|  | %attr(0644,root,root) %{python_sitearch}/cloudapis.py | ||||||
|  | %attr(0644,root,root) %{python_sitearch}/cloudtool/__init__.py | ||||||
|  | %attr(0644,root,root) %{python_sitearch}/cloudtool/utils.py | ||||||
|  | %{_defaultdocdir}/%{name}-cli-%{version}/LICENSE | ||||||
|  | %{_defaultdocdir}/%{name}-cli-%{version}/NOTICE | ||||||
|  | 
 | ||||||
|  | %files awsapi | ||||||
|  | %defattr(0644,cloud,cloud,0755) | ||||||
|  | %{_datadir}/%{name}-bridge/webapps/awsapi | ||||||
|  | %attr(0644,root,root) %{_datadir}/%{name}-bridge/setup/* | ||||||
|  | %attr(0755,root,root) %{_bindir}/cloudstack-aws-api-register | ||||||
|  | %attr(0755,root,root) %{_bindir}/cloudstack-setup-bridge | ||||||
|  | %attr(0666,cloud,cloud) %{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/classes/crypto.properties | ||||||
|  | %attr(0666,cloud,cloud) %{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/classes/xes.keystore | ||||||
|  | 
 | ||||||
|  | %{_defaultdocdir}/%{name}-awsapi-%{version}/LICENSE | ||||||
|  | %{_defaultdocdir}/%{name}-awsapi-%{version}/NOTICE | ||||||
|  | 
 | ||||||
|  | %if "%{_ossnoss}" == "noredist" | ||||||
|  | %files mysql-ha | ||||||
|  | %defattr(0644,cloud,cloud,0755) | ||||||
|  | %attr(0644,root,root) %{_datadir}/%{name}-mysql-ha/lib/* | ||||||
|  | %{_defaultdocdir}/%{name}-mysql-ha-%{version}/LICENSE | ||||||
|  | %{_defaultdocdir}/%{name}-mysql-ha-%{version}/NOTICE | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | %files baremetal-agent | ||||||
|  | %attr(0755,root,root) %{_bindir}/cloudstack-setup-baremetal | ||||||
|  | 
 | ||||||
|  | %changelog | ||||||
|  | * Wed Nov 19 2014 Hugo Trippaers <hugo@apache.org> 4.6.0 | ||||||
|  | - Create a specific spec for CentOS 7 | ||||||
|  | 
 | ||||||
|  | * Fri Jul 4 2014 Hugo Trippaers <hugo@apache.org> 4.5.0 | ||||||
|  | - Add a package for the mysql ha module | ||||||
|  | 
 | ||||||
|  | * Fri Oct 5 2012 Hugo Trippaers <hugo@apache.org> 4.1.0 | ||||||
|  | - new style spec file | ||||||
| @ -15,13 +15,19 @@ | |||||||
| # specific language governing permissions and limitations | # specific language governing permissions and limitations | ||||||
| # under the License. | # under the License. | ||||||
| 
 | 
 | ||||||
| %define _pythonparamiko %{nil} | module cloudstack-agent 1.0; | ||||||
| %define _javaversion java => 1.7.0 | 
 | ||||||
| %define _tomcatversion tomcat => 7.0 | require { | ||||||
| %define _vlanconfigtool iproute | 	type nfs_t; | ||||||
| %define _tomcatpathname tomcat | 	type system_conf_t; | ||||||
| %define _managementstartscriptpath %{_sbindir} | 	type mount_t; | ||||||
| %define _managementservice install -D packaging/centos63/%{_os}/cloud-management.service ${RPM_BUILD_ROOT}%{_unitdir}/%{name}-management.service | 	type qemu_t; | ||||||
| %define _managementserviceattribute %attr(0755,root,root) %{_unitdir}/%{name}-management.service | 	class file unlink; | ||||||
| %define _iptablesservice Requires: iptables-services | 	class filesystem getattr; | ||||||
| %define _serverxmlname server7 | } | ||||||
|  | 
 | ||||||
|  | #============= mount_t ============== | ||||||
|  | allow mount_t system_conf_t:file unlink; | ||||||
|  | 
 | ||||||
|  | #============= qemu_t ============== | ||||||
|  | allow qemu_t nfs_t:filesystem getattr; | ||||||
| @ -1,3 +1,5 @@ | |||||||
|  | #!/bin/sh | ||||||
|  | 
 | ||||||
| # Licensed to the Apache Software Foundation (ASF) under one | # Licensed to the Apache Software Foundation (ASF) under one | ||||||
| # or more contributor license agreements.  See the NOTICE file | # or more contributor license agreements.  See the NOTICE file | ||||||
| # distributed with this work for additional information | # distributed with this work for additional information | ||||||
| @ -15,4 +17,4 @@ | |||||||
| # specific language governing permissions and limitations | # specific language governing permissions and limitations | ||||||
| # under the License. | # under the License. | ||||||
| 
 | 
 | ||||||
| . /usr/sbin/tomcat start | cat /usr/share/cloudstack-common/scripts/gitrev.txt | ||||||
							
								
								
									
										60
									
								
								packaging/centos7/replace.properties
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								packaging/centos7/replace.properties
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,60 @@ | |||||||
|  | # Licensed to the Apache Software Foundation (ASF) under one | ||||||
|  | # or more contributor license agreements.  See the NOTICE file | ||||||
|  | # distributed with this work for additional information | ||||||
|  | # regarding copyright ownership.  The ASF licenses this file | ||||||
|  | # to you under the Apache License, Version 2.0 (the | ||||||
|  | # "License"); you may not use this file except in compliance | ||||||
|  | # with the License.  You may obtain a copy of the License at | ||||||
|  | #  | ||||||
|  | #   http://www.apache.org/licenses/LICENSE-2.0 | ||||||
|  | #  | ||||||
|  | # Unless required by applicable law or agreed to in writing, | ||||||
|  | # software distributed under the License is distributed on an | ||||||
|  | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | ||||||
|  | # KIND, either express or implied.  See the License for the | ||||||
|  | # specific language governing permissions and limitations | ||||||
|  | # under the License. | ||||||
|  | 
 | ||||||
|  | DBUSER=cloud | ||||||
|  | DBPW=cloud | ||||||
|  | DBROOTPW= | ||||||
|  | MSLOG=vmops.log | ||||||
|  | APISERVERLOG=api.log | ||||||
|  | DBHOST=localhost | ||||||
|  | COMPONENTS-SPEC=components-premium.xml | ||||||
|  | AWSAPILOG=awsapi.log | ||||||
|  | REMOTEHOST=localhost | ||||||
|  | AGENTCLASSPATH= | ||||||
|  | AGENTLOG=/var/log/cloudstack/agent/agent.log | ||||||
|  | AGENTLOGDIR=/var/log/cloudstack/agent/ | ||||||
|  | AGENTSYSCONFDIR=/etc/cloudstack/agent | ||||||
|  | APISERVERLOG=/var/log/cloudstack/management/apilog.log | ||||||
|  | AWSAPILOG=/var/log/cloudstack/awsapi/awsapi.log | ||||||
|  | BINDIR=/usr/bin | ||||||
|  | COMMONLIBDIR=/usr/share/cloudstack-common | ||||||
|  | CONFIGUREVARS= | ||||||
|  | DEPSCLASSPATH= | ||||||
|  | DOCDIR= | ||||||
|  | IPALOCATORLOG=/var/log/cloudstack/management/ipallocator.log | ||||||
|  | JAVADIR=/usr/share/java | ||||||
|  | LIBEXECDIR=/usr/libexec | ||||||
|  | LOCKDIR=/var/lock | ||||||
|  | MSCLASSPATH= | ||||||
|  | MSCONF=/etc/cloudstack/management | ||||||
|  | MSENVIRON=/usr/share/cloudstack-management | ||||||
|  | MSLOG=/var/log/cloudstack/management/management-server.log | ||||||
|  | MSLOGDIR=/var/log/cloudstack/management/ | ||||||
|  | MSMNTDIR=/var/cloudstack/mnt | ||||||
|  | MSUSER=cloud | ||||||
|  | PIDDIR=/var/run | ||||||
|  | PLUGINJAVADIR=/usr/share/cloudstack-management/plugin | ||||||
|  | PREMIUMJAVADIR=/usr/share/cloudstack-management/premium | ||||||
|  | PYTHONDIR=/usr/lib/python2.6/site-packages/ | ||||||
|  | SERVERSYSCONFDIR=/etc/sysconfig | ||||||
|  | SETUPDATADIR=/usr/share/cloudstack-management/setup | ||||||
|  | SYSCONFDIR=/etc/sysconfig | ||||||
|  | SYSTEMCLASSPATH= | ||||||
|  | SYSTEMJARS= | ||||||
|  | USAGECLASSPATH= | ||||||
|  | USAGELOG=/var/log/cloudstack/usage/usage.log | ||||||
|  | USAGESYSCONFDIR=/etc/sysconfig | ||||||
							
								
								
									
										81
									
								
								packaging/centos7/tomcat7/catalina.properties
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										81
									
								
								packaging/centos7/tomcat7/catalina.properties
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,81 @@ | |||||||
|  | # Licensed to the Apache Software Foundation (ASF) under one or more | ||||||
|  | # contributor license agreements.  See the NOTICE file distributed with | ||||||
|  | # this work for additional information regarding copyright ownership. | ||||||
|  | # The ASF licenses this file to You under the Apache License, Version 2.0 | ||||||
|  | # (the "License"); you may not use this file except in compliance with | ||||||
|  | # the License.  You may obtain a copy of the License at | ||||||
|  | # | ||||||
|  | #     http://www.apache.org/licenses/LICENSE-2.0 | ||||||
|  | # | ||||||
|  | # Unless required by applicable law or agreed to in writing, software | ||||||
|  | # distributed under the License is distributed on an "AS IS" BASIS, | ||||||
|  | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||||
|  | # See the License for the specific language governing permissions and | ||||||
|  | # limitations under the License. | ||||||
|  | 
 | ||||||
|  | # | ||||||
|  | # List of comma-separated packages that start with or equal this string | ||||||
|  | # will cause a security exception to be thrown when | ||||||
|  | # passed to checkPackageAccess unless the | ||||||
|  | # corresponding RuntimePermission ("accessClassInPackage."+package) has | ||||||
|  | # been granted. | ||||||
|  | package.access=sun.,org.apache.catalina.,org.apache.coyote.,org.apache.tomcat.,org.apache.jasper.,sun.beans. | ||||||
|  | # | ||||||
|  | # List of comma-separated packages that start with or equal this string | ||||||
|  | # will cause a security exception to be thrown when | ||||||
|  | # passed to checkPackageDefinition unless the | ||||||
|  | # corresponding RuntimePermission ("defineClassInPackage."+package) has | ||||||
|  | # been granted. | ||||||
|  | # | ||||||
|  | # by default, no packages are restricted for definition, and none of | ||||||
|  | # the class loaders supplied with the JDK call checkPackageDefinition. | ||||||
|  | # | ||||||
|  | package.definition=sun.,java.,org.apache.catalina.,org.apache.coyote.,org.apache.tomcat.,org.apache.jasper. | ||||||
|  | 
 | ||||||
|  | # | ||||||
|  | # | ||||||
|  | # List of comma-separated paths defining the contents of the "common"  | ||||||
|  | # classloader. Prefixes should be used to define what is the repository type. | ||||||
|  | # Path may be relative to the CATALINA_HOME or CATALINA_BASE path or absolute. | ||||||
|  | # If left as blank,the JVM system loader will be used as Catalina's "common"  | ||||||
|  | # loader. | ||||||
|  | # Examples: | ||||||
|  | #     "foo": Add this folder as a class repository | ||||||
|  | #     "foo/*.jar": Add all the JARs of the specified folder as class  | ||||||
|  | #                  repositories | ||||||
|  | #     "foo/bar.jar": Add bar.jar as a class repository | ||||||
|  | common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar,/usr/share/java/mysql-connector-java.jar,/usr/share/cloudstack-mysql-ha/lib/*jar | ||||||
|  | 
 | ||||||
|  | # | ||||||
|  | # List of comma-separated paths defining the contents of the "server"  | ||||||
|  | # classloader. Prefixes should be used to define what is the repository type. | ||||||
|  | # Path may be relative to the CATALINA_HOME or CATALINA_BASE path or absolute. | ||||||
|  | # If left as blank, the "common" loader will be used as Catalina's "server"  | ||||||
|  | # loader. | ||||||
|  | # Examples: | ||||||
|  | #     "foo": Add this folder as a class repository | ||||||
|  | #     "foo/*.jar": Add all the JARs of the specified folder as class  | ||||||
|  | #                  repositories | ||||||
|  | #     "foo/bar.jar": Add bar.jar as a class repository | ||||||
|  | server.loader= | ||||||
|  | 
 | ||||||
|  | # | ||||||
|  | # List of comma-separated paths defining the contents of the "shared"  | ||||||
|  | # classloader. Prefixes should be used to define what is the repository type. | ||||||
|  | # Path may be relative to the CATALINA_BASE path or absolute. If left as blank, | ||||||
|  | # the "common" loader will be used as Catalina's "shared" loader. | ||||||
|  | # Examples: | ||||||
|  | #     "foo": Add this folder as a class repository | ||||||
|  | #     "foo/*.jar": Add all the JARs of the specified folder as class  | ||||||
|  | #                  repositories | ||||||
|  | #     "foo/bar.jar": Add bar.jar as a class repository  | ||||||
|  | # Please note that for single jars, e.g. bar.jar, you need the URL form | ||||||
|  | # starting with file:. | ||||||
|  | shared.loader= | ||||||
|  | 
 | ||||||
|  | # | ||||||
|  | # String cache configuration. | ||||||
|  | tomcat.util.buf.StringCache.byte.enabled=true | ||||||
|  | #tomcat.util.buf.StringCache.char.enabled=true | ||||||
|  | #tomcat.util.buf.StringCache.trainThreshold=500000 | ||||||
|  | #tomcat.util.buf.StringCache.cacheSize=5000 | ||||||
							
								
								
									
										25
									
								
								packaging/centos7/tomcat7/cloud-bridge.properties
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								packaging/centos7/tomcat7/cloud-bridge.properties
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,25 @@ | |||||||
|  | # Licensed to the Apache Software Foundation (ASF) under one | ||||||
|  | # or more contributor license agreements.  See the NOTICE file | ||||||
|  | # distributed with this work for additional information | ||||||
|  | # regarding copyright ownership.  The ASF licenses this file | ||||||
|  | # to you under the Apache License, Version 2.0 (the | ||||||
|  | # "License"); you may not use this file except in compliance | ||||||
|  | # with the License.  You may obtain a copy of the License at | ||||||
|  | #  | ||||||
|  | #   http://www.apache.org/licenses/LICENSE-2.0 | ||||||
|  | #  | ||||||
|  | # Unless required by applicable law or agreed to in writing, | ||||||
|  | # software distributed under the License is distributed on an | ||||||
|  | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | ||||||
|  | # KIND, either express or implied.  See the License for the | ||||||
|  | # specific language governing permissions and limitations | ||||||
|  | # under the License. | ||||||
|  | 
 | ||||||
|  | host=http://localhost:7080/awsapi | ||||||
|  | storage.root=/Users/john1/S3-Mount | ||||||
|  | storage.multipartDir=__multipart__uploads__ | ||||||
|  | bucket.dns=false | ||||||
|  | serviceEndpoint=localhost:7080 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
							
								
								
									
										30
									
								
								packaging/centos7/tomcat7/commons-logging.properties
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								packaging/centos7/tomcat7/commons-logging.properties
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,30 @@ | |||||||
|  | # | ||||||
|  | # Licensed to the Apache Software Foundation (ASF) under one | ||||||
|  | # or more contributor license agreements. See the NOTICE file | ||||||
|  | # distributed with this work for additional information | ||||||
|  | # regarding copyright ownership. The ASF licenses this file | ||||||
|  | # to you under the Apache License, Version 2.0 (the | ||||||
|  | # "License"); you may not use this file except in compliance | ||||||
|  | # with the License. You may obtain a copy of the License at | ||||||
|  | # | ||||||
|  | # http://www.apache.org/licenses/LICENSE-2.0 | ||||||
|  | # | ||||||
|  | # Unless required by applicable law or agreed to in writing, | ||||||
|  | # software distributed under the License is distributed on an | ||||||
|  | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | ||||||
|  | # KIND, either express or implied. See the License for the | ||||||
|  | # specific language governing permissions and limitations | ||||||
|  | # under the License. | ||||||
|  | # | ||||||
|  | 
 | ||||||
|  | # This is the logging properties that goes to the war, there are two logging conf kept at the  | ||||||
|  | # svn, one for developement (one at src/test-resources) and other for producation | ||||||
|  |   | ||||||
|  | # Uncomment the next line to disable all logging. | ||||||
|  | #org.apache.commons.logging.Log=org.apache.commons.logging.impl.NoOpLog | ||||||
|  | 
 | ||||||
|  | # Uncomment the next line to enable the simple log based logging | ||||||
|  | #org.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog | ||||||
|  | 
 | ||||||
|  | # Uncomment the next line to enable log4j based logging | ||||||
|  | org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JLogger | ||||||
							
								
								
									
										107
									
								
								packaging/centos7/tomcat7/db.properties
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										107
									
								
								packaging/centos7/tomcat7/db.properties
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,107 @@ | |||||||
|  | # Licensed to the Apache Software Foundation (ASF) under one | ||||||
|  | # or more contributor license agreements.  See the NOTICE file | ||||||
|  | db.usage.maxActive=100 | ||||||
|  | # distributed with this work for additional information | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | # to you under the Apache License, Version 2.0 (the | ||||||
|  | # with the License.  You may obtain a copy of the License at | ||||||
|  | # "License"); you may not use this file except in compliance | ||||||
|  | #   http://www.apache.org/licenses/LICENSE-2.0 | ||||||
|  | # software distributed under the License is distributed on an | ||||||
|  | # regarding copyright ownership.  The ASF licenses this file | ||||||
|  | # Unless required by applicable law or agreed to in writing, | ||||||
|  | db.cloud.name=cloud | ||||||
|  | db.cloud.password=ENC(vlzQjmqOV4s5q7n+S1OMbA==) | ||||||
|  | # specific language governing permissions and limitations | ||||||
|  | # KIND, either express or implied.  See the License for the | ||||||
|  | 
 | ||||||
|  | # | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | # in which the management server(Tomcat) is running | ||||||
|  | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | ||||||
|  | # under the License. | ||||||
|  | # management server clustering parameters, change cluster.node.IP to the machine IP address | ||||||
|  | 
 | ||||||
|  | # usage database tuning parameters | ||||||
|  | 
 | ||||||
|  | db.usage.maxWait=10000 | ||||||
|  | db.cloud.port=3306 | ||||||
|  | # High Availability And Cluster Properties | ||||||
|  | db.usage.maxIdle=30 | ||||||
|  | # CloudStack database settings | ||||||
|  | cluster.node.IP=127.0.0.1 | ||||||
|  | db.cloud.testOnBorrow=true | ||||||
|  | db.cloud.maxIdle=30 | ||||||
|  | db.cloud.autoReconnectForPools=true | ||||||
|  | db.cloud.trustStore= | ||||||
|  | region.id=1 | ||||||
|  | cluster.servlet.port=9090 | ||||||
|  | db.cloud.host=localhost | ||||||
|  | db.cloud.url.params=prepStmtCacheSize=517&cachePrepStmts=true | ||||||
|  | # CloudStack database tuning parameters | ||||||
|  | db.usage.name=cloud_usage | ||||||
|  | db.cloud.poolPreparedStatements=false | ||||||
|  | db.ha.enabled=false | ||||||
|  | db.cloud.keyStorePassphrase=vmops.com | ||||||
|  | db.simulator.maxActive=250 | ||||||
|  | db.cloud.username=cloud | ||||||
|  | db.usage.port=3306 | ||||||
|  | db.cloud.maxWait=10000 | ||||||
|  | db.cloud.timeBetweenEvictionRunsMillis=40000 | ||||||
|  | db.cloud.keyStorePassword= | ||||||
|  | # usage database settings | ||||||
|  | db.cloud.queriesBeforeRetryMaster=5000 | ||||||
|  | db.cloud.validationQuery=SELECT 1 | ||||||
|  | db.usage.failOverReadOnly=false | ||||||
|  | db.cloud.maxActive=250 | ||||||
|  | 
 | ||||||
|  | db.cloud.useSSL=false | ||||||
|  | db.usage.host=localhost | ||||||
|  | db.cloud.initialTimeout=3600 | ||||||
|  | # Encryption Settings | ||||||
|  | db.cloud.minEvictableIdleTimeMillis=240000 | ||||||
|  | db.cloud.testWhileIdle=true | ||||||
|  | # CloudStack database SSL settings | ||||||
|  | db.cloud.slaves=localhost,localhost | ||||||
|  | db.simulator.maxIdle=30 | ||||||
|  | db.cloud.keyStore= | ||||||
|  | db.cloud.encrypt.secret=ENC(zaGuSF5a4KyWayn2t0yyjDa0HjdToVtZ) | ||||||
|  | db.cloud.encryption.type=file | ||||||
|  | db.cloud.failOverReadOnly=false | ||||||
|  | 
 | ||||||
|  | db.simulator.port=3306 | ||||||
|  | db.awsapi.host=localhost | ||||||
|  | db.usage.password=ENC(cQEcN5aVucSYK+WUkPjDcw==) | ||||||
|  | db.usage.username=cloud | ||||||
|  | db.cloud.trustStorePassword= | ||||||
|  | db.awsapi.password=cloud | ||||||
|  | db.simulator.username=cloud | ||||||
|  | db.usage.url.params= | ||||||
|  | db.usage.initialTimeout=3600 | ||||||
|  | 
 | ||||||
|  | # Simulator database settings | ||||||
|  | db.cloud.reconnectAtTxEnd=true | ||||||
|  | db.usage.autoReconnect=true | ||||||
|  | #usage Database | ||||||
|  | db.simulator.maxWait=10000 | ||||||
|  | # cloud stack Database | ||||||
|  | db.simulator.password=cloud | ||||||
|  | db.awsapi.username=cloud | ||||||
|  | db.usage.reconnectAtTxEnd=true | ||||||
|  | db.simulator.autoReconnect=true | ||||||
|  | 
 | ||||||
|  | # awsapi database settings | ||||||
|  | db.awsapi.port=3306 | ||||||
|  | db.ha.loadBalanceStrategy=com.cloud.utils.db.StaticStrategy | ||||||
|  | db.awsapi.name=cloudbridge | ||||||
|  | db.cloud.autoReconnect=true | ||||||
|  | db.simulator.host=localhost | ||||||
|  | db.simulator.name=simulator | ||||||
|  | db.usage.queriesBeforeRetryMaster=5000 | ||||||
|  | db.usage.slaves=localhost,localhost | ||||||
|  | db.usage.secondsBeforeRetryMaster=3600 | ||||||
|  | db.usage.autoReconnectForPools=true | ||||||
|  | db.cloud.secondsBeforeRetryMaster=3600 | ||||||
							
								
								
									
										25
									
								
								packaging/centos7/tomcat7/ec2-service.properties
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								packaging/centos7/tomcat7/ec2-service.properties
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,25 @@ | |||||||
|  | # Licensed to the Apache Software Foundation (ASF) under one | ||||||
|  | # or more contributor license agreements.  See the NOTICE file | ||||||
|  | # distributed with this work for additional information | ||||||
|  | # regarding copyright ownership.  The ASF licenses this file | ||||||
|  | # to you under the Apache License, Version 2.0 (the | ||||||
|  | # "License"); you may not use this file except in compliance | ||||||
|  | # with the License.  You may obtain a copy of the License at | ||||||
|  | #  | ||||||
|  | #   http://www.apache.org/licenses/LICENSE-2.0 | ||||||
|  | #  | ||||||
|  | # Unless required by applicable law or agreed to in writing, | ||||||
|  | # software distributed under the License is distributed on an | ||||||
|  | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | ||||||
|  | # KIND, either express or implied.  See the License for the | ||||||
|  | # specific language governing permissions and limitations | ||||||
|  | # under the License. | ||||||
|  | 
 | ||||||
|  | managementServer=127.0.0.1 | ||||||
|  | cloudAPIPort=8080 | ||||||
|  | cloudstackVersion=2.2.0 | ||||||
|  | WSDLVersion=2012-08-15 | ||||||
|  | keystore=xes.keystore | ||||||
|  | keystorePass=apache | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
							
								
								
									
										22
									
								
								packaging/centos7/tomcat7/environment.properties
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								packaging/centos7/tomcat7/environment.properties
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,22 @@ | |||||||
|  | # Licensed to the Apache Software Foundation (ASF) under one | ||||||
|  | # or more contributor license agreements.  See the NOTICE file | ||||||
|  | # distributed with this work for additional information | ||||||
|  | # regarding copyright ownership.  The ASF licenses this file | ||||||
|  | # to you under the Apache License, Version 2.0 (the | ||||||
|  | # "License"); you may not use this file except in compliance | ||||||
|  | # with the License.  You may obtain a copy of the License at | ||||||
|  | #  | ||||||
|  | #   http://www.apache.org/licenses/LICENSE-2.0 | ||||||
|  | #  | ||||||
|  | # Unless required by applicable law or agreed to in writing, | ||||||
|  | # software distributed under the License is distributed on an | ||||||
|  | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | ||||||
|  | # KIND, either express or implied.  See the License for the | ||||||
|  | # specific language governing permissions and limitations | ||||||
|  | # under the License. | ||||||
|  | 
 | ||||||
|  | # management server compile-time environment parameters | ||||||
|  | 
 | ||||||
|  | paths.script=/usr/share/cloudstack-common | ||||||
|  | mount.parent=/var/cloudstack/mnt | ||||||
|  | cloud-stack-components-specification=components.xml | ||||||
							
								
								
									
										217
									
								
								packaging/centos7/tomcat7/log4j-cloud.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										217
									
								
								packaging/centos7/tomcat7/log4j-cloud.xml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,217 @@ | |||||||
|  | <?xml version="1.0" encoding="UTF-8"?> | ||||||
|  | <!-- | ||||||
|  | Licensed to the Apache Software Foundation (ASF) under one | ||||||
|  | or more contributor license agreements.  See the NOTICE file | ||||||
|  | distributed with this work for additional information | ||||||
|  | regarding copyright ownership.  The ASF licenses this file | ||||||
|  | to you under the Apache License, Version 2.0 (the | ||||||
|  | "License"); you may not use this file except in compliance | ||||||
|  | with the License.  You may obtain a copy of the License at | ||||||
|  | 
 | ||||||
|  |   http://www.apache.org/licenses/LICENSE-2.0 | ||||||
|  | 
 | ||||||
|  | Unless required by applicable law or agreed to in writing, | ||||||
|  | software distributed under the License is distributed on an | ||||||
|  | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | ||||||
|  | KIND, either express or implied.  See the License for the | ||||||
|  | specific language governing permissions and limitations | ||||||
|  | under the License. | ||||||
|  | --> | ||||||
|  | <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> | ||||||
|  | 
 | ||||||
|  | <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false"> | ||||||
|  |    <throwableRenderer class="com.cloud.utils.log.CglibThrowableRenderer"/> | ||||||
|  | 
 | ||||||
|  |    <!-- ================================= --> | ||||||
|  |    <!-- Preserve messages in a local file --> | ||||||
|  |    <!-- ================================= --> | ||||||
|  | 
 | ||||||
|  |    <!-- A regular appender FIXME implement code that will close/reopen logs on SIGHUP by logrotate FIXME make the paths configurable using the build system --> | ||||||
|  |    <appender name="FILE" class="org.apache.log4j.rolling.RollingFileAppender"> | ||||||
|  |       <param name="Append" value="true"/> | ||||||
|  |       <param name="Threshold" value="TRACE"/> | ||||||
|  |       <rollingPolicy class="org.apache.log4j.rolling.TimeBasedRollingPolicy"> | ||||||
|  |         <param name="FileNamePattern" value="/var/log/cloudstack/management/management-server.log.%d{yyyy-MM-dd}.gz"/> | ||||||
|  |         <param name="ActiveFileName" value="/var/log/cloudstack/management/management-server.log"/> | ||||||
|  |       </rollingPolicy> | ||||||
|  |       <layout class="org.apache.log4j.EnhancedPatternLayout"> | ||||||
|  |          <param name="ConversionPattern" value="%d{ISO8601} %-5p [%c{1.}] (%t:%x) %m%n"/> | ||||||
|  |       </layout> | ||||||
|  |    </appender> | ||||||
|  |     | ||||||
|  |    <appender name="APISERVER" class="org.apache.log4j.rolling.RollingFileAppender"> | ||||||
|  |       <param name="Append" value="true"/> | ||||||
|  |       <param name="Threshold" value="DEBUG"/> | ||||||
|  |       <rollingPolicy class="org.apache.log4j.rolling.TimeBasedRollingPolicy"> | ||||||
|  |         <param name="FileNamePattern" value="/var/log/cloudstack/management/apilog.log.%d{yyyy-MM-dd}.gz"/> | ||||||
|  |         <param name="ActiveFileName" value="/var/log/cloudstack/management/apilog.log"/> | ||||||
|  |       </rollingPolicy> | ||||||
|  |       <layout class="org.apache.log4j.EnhancedPatternLayout"> | ||||||
|  |          <param name="ConversionPattern" value="%d{ISO8601} %-5p [%c{1.}] (%t:%x) %m%n"/> | ||||||
|  |       </layout> | ||||||
|  |    </appender> | ||||||
|  | 
 | ||||||
|  |    <appender name="AWSAPI" class="org.apache.log4j.rolling.RollingFileAppender"> | ||||||
|  |       <param name="Append" value="true"/> | ||||||
|  |       <param name="Threshold" value="DEBUG"/> | ||||||
|  |       <rollingPolicy class="org.apache.log4j.rolling.TimeBasedRollingPolicy"> | ||||||
|  |         <param name="FileNamePattern" value="/var/log/cloudstack/awsapi/awsapi.log.%d{yyyy-MM-dd}.gz"/> | ||||||
|  |         <param name="ActiveFileName" value="/var/log/cloudstack/awsapi/awsapi.log"/> | ||||||
|  |       </rollingPolicy> | ||||||
|  |       <layout class="org.apache.log4j.EnhancedPatternLayout"> | ||||||
|  |          <param name="ConversionPattern" value="%d{ISO8601} %-5p [%c{1.}] (%t:%x) %m%n"/> | ||||||
|  |       </layout> | ||||||
|  |    </appender> | ||||||
|  |    <!-- ============================== --> | ||||||
|  |    <!-- Append warnings+ to the syslog if it is listening on UDP port FIXME make sysloghost configurable! --> | ||||||
|  |    <!-- ============================== --> | ||||||
|  | 
 | ||||||
|  |    <appender name="SYSLOG" class="org.apache.log4j.net.SyslogAppender"> | ||||||
|  |       <param name="Threshold" value="WARN"/> | ||||||
|  |       <param name="SyslogHost" value="localhost"/> | ||||||
|  |       <param name="Facility" value="LOCAL6"/> | ||||||
|  |       <layout class="org.apache.log4j.PatternLayout"> | ||||||
|  |          <param name="ConversionPattern" value="%-5p [%c{3}] (%t:%x) %m%n"/> | ||||||
|  |       </layout> | ||||||
|  |    </appender> | ||||||
|  | 
 | ||||||
|  |    <!-- ============================== --> | ||||||
|  |    <!-- Append alerts to the syslog if it is configured --> | ||||||
|  |    <!-- ============================== --> | ||||||
|  | 
 | ||||||
|  |    <appender name="ALERTSYSLOG" class="org.apache.cloudstack.syslog.AlertsSyslogAppender"> | ||||||
|  |       <param name="Threshold" value="WARN"/> | ||||||
|  |       <param name="SyslogHosts" value=""/> | ||||||
|  |       <param name="Facility" value="LOCAL6"/> | ||||||
|  |       <layout class="org.apache.log4j.PatternLayout"> | ||||||
|  |          <param name="ConversionPattern" value="%-5p [%c{3}] (%t:%x) %m%n"/> | ||||||
|  |       </layout> | ||||||
|  |    </appender> | ||||||
|  | 
 | ||||||
|  |    <!-- ============================== --> | ||||||
|  |    <!-- send alert warnings+ as the SNMP trap if it is configured! --> | ||||||
|  |    <!-- ============================== --> | ||||||
|  | 
 | ||||||
|  |    <appender name="SNMP" class="org.apache.cloudstack.alert.snmp.SnmpTrapAppender"> | ||||||
|  |       <param name="Threshold" value="WARN"/> | ||||||
|  |       <param name="SnmpManagerIpAddresses" value=""/> | ||||||
|  |       <param name="SnmpManagerPorts" value=""/> | ||||||
|  |       <param name="SnmpManagerCommunities" value=""/> | ||||||
|  |       <layout class="org.apache.cloudstack.alert.snmp.SnmpEnhancedPatternLayout"> | ||||||
|  |          <param name="PairDelimiter" value="//"/> | ||||||
|  |          <param name="KeyValueDelimiter" value="::"/> | ||||||
|  |       </layout> | ||||||
|  |    </appender> | ||||||
|  | 
 | ||||||
|  |    <!-- ============================== --> | ||||||
|  |    <!-- Append messages to the console --> | ||||||
|  |    <!-- ============================== --> | ||||||
|  | 
 | ||||||
|  |    <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender"> | ||||||
|  |       <param name="Target" value="System.out"/> | ||||||
|  |       <param name="Threshold" value="INFO"/> | ||||||
|  |       <layout class="org.apache.log4j.EnhancedPatternLayout"> | ||||||
|  |          <param name="ConversionPattern" value="%-5p [%c{1.}] (%t:%x) %m%n"/> | ||||||
|  |       </layout> | ||||||
|  |    </appender> | ||||||
|  | 
 | ||||||
|  |    <!-- ================ --> | ||||||
|  |    <!-- Limit categories --> | ||||||
|  |    <!-- ================ --> | ||||||
|  | 
 | ||||||
|  |    <category name="com.cloud"> | ||||||
|  |      <priority value="DEBUG"/> | ||||||
|  |    </category> | ||||||
|  |     | ||||||
|  |    <category name="org.apache.cloudstack"> | ||||||
|  |      <priority value="DEBUG"/> | ||||||
|  |    </category> | ||||||
|  |     | ||||||
|  |    <category name="org.apache.cloudstack"> | ||||||
|  |       <priority value="DEBUG"/> | ||||||
|  |    </category> | ||||||
|  | 
 | ||||||
|  |    <category name="com.cloud.utils.nio"> | ||||||
|  |      <priority value="INFO"/> | ||||||
|  |    </category> | ||||||
|  |     | ||||||
|  |    <!-- Limit the org.apache category to INFO as its DEBUG is verbose --> | ||||||
|  |    <category name="org.apache"> | ||||||
|  |       <priority value="INFO"/> | ||||||
|  |    </category> | ||||||
|  | 
 | ||||||
|  |    <category name="org.apache.cloudstack"> | ||||||
|  |       <priority value="DEBUG"/> | ||||||
|  |    </category> | ||||||
|  | 
 | ||||||
|  |    <category name="org.apache.cloudstack.api.command"> | ||||||
|  |       <priority value="TRACE"/> | ||||||
|  |    </category> | ||||||
|  |     | ||||||
|  |    <category name="org"> | ||||||
|  |       <priority value="INFO"/> | ||||||
|  |    </category> | ||||||
|  |     | ||||||
|  |    <category name="org.springframework"> | ||||||
|  |       <priority value="WARN"/> | ||||||
|  |    </category> | ||||||
|  |     | ||||||
|  |    <category name="org.apache.cloudstack.spring.module.context.ResourceApplicationContext"> | ||||||
|  |       <priority value="WARN"/> | ||||||
|  |    </category> | ||||||
|  |     | ||||||
|  |    <category name="net"> | ||||||
|  |      <priority value="INFO"/> | ||||||
|  |    </category> | ||||||
|  | 
 | ||||||
|  |    <category name="apiserver.com.cloud"> | ||||||
|  |      <priority value="DEBUG"/> | ||||||
|  |    </category> | ||||||
|  | 
 | ||||||
|  |    <logger name="apiserver.com.cloud" additivity="false"> | ||||||
|  |       <level value="DEBUG"/> | ||||||
|  |       <appender-ref ref="APISERVER"/> | ||||||
|  |    </logger> | ||||||
|  | 
 | ||||||
|  |     | ||||||
|  |    <logger name="com.cloud.bridge" additivity="false"> | ||||||
|  |       <level value="DEBUG"/> | ||||||
|  |       <appender-ref ref="AWSAPI"/> | ||||||
|  |    </logger> | ||||||
|  |     | ||||||
|  |    <logger name="com.cloud.stack" additivity="false"> | ||||||
|  |       <level value="DEBUG"/> | ||||||
|  |       <appender-ref ref="AWSAPI"/> | ||||||
|  |    </logger> | ||||||
|  |     | ||||||
|  | 
 | ||||||
|  |    <logger name="org.apache.axis2" additivity="false"> | ||||||
|  |       <level value="INFO"/> | ||||||
|  |       <appender-ref ref="AWSAPI"/> | ||||||
|  |    </logger> | ||||||
|  | 
 | ||||||
|  |    <!-- ============================== --> | ||||||
|  |    <!-- Add or remove these logger for SNMP, this logger is for SNMP alerts plugin --> | ||||||
|  |    <!-- ============================== --> | ||||||
|  | 
 | ||||||
|  |    <logger name="org.apache.cloudstack.alerts" additivity="false"> | ||||||
|  |       <level value="WARN"/> | ||||||
|  |       <appender-ref ref="SYSLOG"/> | ||||||
|  |       <appender-ref ref="CONSOLE"/> | ||||||
|  |       <appender-ref ref="FILE"/> | ||||||
|  |       <appender-ref ref="SNMP"/> | ||||||
|  |       <appender-ref ref="ALERTSYSLOG"/> | ||||||
|  |    </logger> | ||||||
|  | 
 | ||||||
|  |    <!-- ======================= --> | ||||||
|  |    <!-- Setup the Root category --> | ||||||
|  |    <!-- ======================= --> | ||||||
|  | 
 | ||||||
|  |    <root> | ||||||
|  |       <level value="INFO"/> | ||||||
|  |       <appender-ref ref="SYSLOG"/> | ||||||
|  |       <appender-ref ref="CONSOLE"/> | ||||||
|  |       <appender-ref ref="FILE"/> | ||||||
|  |    </root> | ||||||
|  | 
 | ||||||
|  | </log4j:configuration> | ||||||
							
								
								
									
										112
									
								
								packaging/centos7/tomcat7/server.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										112
									
								
								packaging/centos7/tomcat7/server.xml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,112 @@ | |||||||
|  | <?xml version='1.0' encoding='utf-8'?> | ||||||
|  | <!-- | ||||||
|  |   Licensed to the Apache Software Foundation (ASF) under one or more | ||||||
|  |   contributor license agreements.  See the NOTICE file distributed with | ||||||
|  |   this work for additional information regarding copyright ownership. | ||||||
|  |   The ASF licenses this file to You under the Apache License, Version 2.0 | ||||||
|  |   (the "License"); you may not use this file except in compliance with | ||||||
|  |   the License.  You may obtain a copy of the License at | ||||||
|  | 
 | ||||||
|  |       http://www.apache.org/licenses/LICENSE-2.0 | ||||||
|  | 
 | ||||||
|  |   Unless required by applicable law or agreed to in writing, software | ||||||
|  |   distributed under the License is distributed on an "AS IS" BASIS, | ||||||
|  |   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||||
|  |   See the License for the specific language governing permissions and | ||||||
|  |   limitations under the License. | ||||||
|  | --> | ||||||
|  | <!-- Note:  A "Server" is not itself a "Container", so you may not | ||||||
|  |      define subcomponents such as "Valves" at this level. | ||||||
|  |      Documentation at /docs/config/server.html | ||||||
|  |  --> | ||||||
|  | <Server port="8005" shutdown="SHUTDOWN"> | ||||||
|  |   <!-- Security listener. Documentation at /docs/config/listeners.html | ||||||
|  |   <Listener className="org.apache.catalina.security.SecurityListener" /> | ||||||
|  |   --> | ||||||
|  |   <!--APR library loader. Documentation at /docs/apr.html --> | ||||||
|  |   <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" /> | ||||||
|  |   <!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html --> | ||||||
|  |   <Listener className="org.apache.catalina.core.JasperListener" /> | ||||||
|  |   <!-- Prevent memory leaks due to use of particular java/javax APIs--> | ||||||
|  |   <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" /> | ||||||
|  |   <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" /> | ||||||
|  |   <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" /> | ||||||
|  | 
 | ||||||
|  |   <!-- Global JNDI resources | ||||||
|  |        Documentation at /docs/jndi-resources-howto.html | ||||||
|  |   --> | ||||||
|  |   <GlobalNamingResources> | ||||||
|  |     <!-- Editable user database that can also be used by | ||||||
|  |          UserDatabaseRealm to authenticate users | ||||||
|  |     --> | ||||||
|  |     <Resource name="UserDatabase" auth="Container" | ||||||
|  |               type="org.apache.catalina.UserDatabase" | ||||||
|  |               description="User database that can be updated and saved" | ||||||
|  |               factory="org.apache.catalina.users.MemoryUserDatabaseFactory" | ||||||
|  |               pathname="conf/tomcat-users.xml" /> | ||||||
|  |   </GlobalNamingResources> | ||||||
|  | 
 | ||||||
|  |   <Service name="CloudStackManagement"> | ||||||
|  | 
 | ||||||
|  |     <Executor name="tomcatThreadPool" namePrefix="catalina-exec-" | ||||||
|  |         maxThreads="150" minSpareThreads="25"/> | ||||||
|  | 
 | ||||||
|  |     <Connector executor="tomcatThreadPool" | ||||||
|  |                port="8080" protocol="HTTP/1.1" | ||||||
|  |                connectionTimeout="20000" | ||||||
|  |                acceptCount="150" | ||||||
|  |                enableLookups="false" | ||||||
|  |                maxThreads="150" | ||||||
|  |                maxHttpHeaderSize="8192" | ||||||
|  |                redirectPort="8443" /> | ||||||
|  | 
 | ||||||
|  |     <Engine name="Catalina" defaultHost="localhost"> | ||||||
|  | 
 | ||||||
|  |       <Realm className="org.apache.catalina.realm.LockOutRealm"> | ||||||
|  |         <Realm className="org.apache.catalina.realm.UserDatabaseRealm" | ||||||
|  |                resourceName="UserDatabase"/> | ||||||
|  |       </Realm> | ||||||
|  | 
 | ||||||
|  |       <Host name="localhost"  appBase="webapps" | ||||||
|  |             unpackWARs="true" autoDeploy="true"> | ||||||
|  | 
 | ||||||
|  |         <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" | ||||||
|  |                prefix="localhost_access_log." suffix=".txt" | ||||||
|  |                pattern="%h %l %u %t "%r" %s %b" /> | ||||||
|  | 
 | ||||||
|  |       </Host> | ||||||
|  |     </Engine> | ||||||
|  |   </Service> | ||||||
|  | 
 | ||||||
|  |   <Service name="CloudStackAwsApi"> | ||||||
|  | 
 | ||||||
|  |     <Executor name="tomcatThreadPool" namePrefix="catalina-exec-" | ||||||
|  |         maxThreads="150" minSpareThreads="25"/> | ||||||
|  | 
 | ||||||
|  |     <Connector executor="tomcatThreadPool" | ||||||
|  |                port="7080" protocol="HTTP/1.1" | ||||||
|  |                connectionTimeout="20000" | ||||||
|  |                acceptCount="150" | ||||||
|  |                enableLookups="false" | ||||||
|  |                maxThreads="150" | ||||||
|  |                maxHttpHeaderSize="8192" | ||||||
|  |                redirectPort="8443" /> | ||||||
|  | 
 | ||||||
|  |     <Engine name="Catalina7080" defaultHost="localhost"> | ||||||
|  | 
 | ||||||
|  |       <Realm className="org.apache.catalina.realm.LockOutRealm"> | ||||||
|  |         <Realm className="org.apache.catalina.realm.UserDatabaseRealm" | ||||||
|  |                resourceName="UserDatabase"/> | ||||||
|  |       </Realm> | ||||||
|  | 
 | ||||||
|  |       <Host name="localhost" appBase="webapps7080" | ||||||
|  |             unpackWARs="true" autoDeploy="true"> | ||||||
|  | 
 | ||||||
|  |         <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" | ||||||
|  |                prefix="localhost_7080_access_log." suffix=".txt" | ||||||
|  |                pattern="%h %l %u %t "%r" %s %b" /> | ||||||
|  | 
 | ||||||
|  |       </Host> | ||||||
|  |     </Engine> | ||||||
|  |   </Service> | ||||||
|  | </Server> | ||||||
							
								
								
									
										31
									
								
								packaging/centos7/tomcat7/tomcat-users.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								packaging/centos7/tomcat7/tomcat-users.xml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,31 @@ | |||||||
|  | <?xml version='1.0' encoding='utf-8'?> | ||||||
|  | <!-- | ||||||
|  |   Licensed to the Apache Software Foundation (ASF) under one or more | ||||||
|  |   contributor license agreements.  See the NOTICE file distributed with | ||||||
|  |   this work for additional information regarding copyright ownership. | ||||||
|  |   The ASF licenses this file to You under the Apache License, Version 2.0 | ||||||
|  |   (the "License"); you may not use this file except in compliance with | ||||||
|  |   the License.  You may obtain a copy of the License at | ||||||
|  | 
 | ||||||
|  |       http://www.apache.org/licenses/LICENSE-2.0 | ||||||
|  | 
 | ||||||
|  |   Unless required by applicable law or agreed to in writing, software | ||||||
|  |   distributed under the License is distributed on an "AS IS" BASIS, | ||||||
|  |   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||||
|  |   See the License for the specific language governing permissions and | ||||||
|  |   limitations under the License. | ||||||
|  | --> | ||||||
|  | <tomcat-users> | ||||||
|  | <!-- | ||||||
|  |   <role rolename="tomcat"/> | ||||||
|  |   <role rolename="role1"/> | ||||||
|  |   <user username="tomcat" password="tomcat" roles="tomcat"/> | ||||||
|  |   <user username="both" password="tomcat" roles="tomcat,role1"/> | ||||||
|  |   <user username="role1" password="tomcat" roles="role1"/> | ||||||
|  | --> | ||||||
|  | 
 | ||||||
|  | <!-- The host manager webapp is restricted to users with role "admin" --> | ||||||
|  | <!--<user name="tomcat" password="password" roles="admin" />--> | ||||||
|  | <!-- The manager webapp is restricted to users with role "manager" --> | ||||||
|  | <!--<user name="tomcat" password="password" roles="manager" />--> | ||||||
|  | </tomcat-users> | ||||||
							
								
								
									
										1188
									
								
								packaging/centos7/tomcat7/web.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1188
									
								
								packaging/centos7/tomcat7/web.xml
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @ -23,8 +23,7 @@ function usage() { | |||||||
|     echo "The commonly used Arguments are:" |     echo "The commonly used Arguments are:" | ||||||
|     echo "-p|--pack oss|OSS             To package with only redistributable libraries (default)" |     echo "-p|--pack oss|OSS             To package with only redistributable libraries (default)" | ||||||
|     echo "-p|--pack noredist|NOREDIST   To package with non-redistributable libraries" |     echo "-p|--pack noredist|NOREDIST   To package with non-redistributable libraries" | ||||||
|     echo "-o default|DEFAULT            To build in default Operating System mode" |     echo "-d centos7|centos63           To build a package for a distribution" | ||||||
|     echo "-o rhel7|RHEL7                To build for rhel7" |  | ||||||
|     echo "-s simulator|SIMULATOR        To build for Simulator" |     echo "-s simulator|SIMULATOR        To build for Simulator" | ||||||
|     echo "" |     echo "" | ||||||
|     echo "Examples: ./package.sh -p|--pack oss|OSS" |     echo "Examples: ./package.sh -p|--pack oss|OSS" | ||||||
| @ -33,24 +32,24 @@ function usage() { | |||||||
|     exit 1 |     exit 1 | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | # packaging | ||||||
|  | #   $1 redist flag | ||||||
|  | #   $2 simulator flag | ||||||
|  | #   $3 distribution name | ||||||
| function packaging() { | function packaging() { | ||||||
|     CWD=`pwd` |     CWD=`pwd` | ||||||
|     RPMDIR=$CWD/../../dist/rpmbuild |     RPMDIR=$CWD/../dist/rpmbuild | ||||||
|     PACK_PROJECT=cloudstack |     PACK_PROJECT=cloudstack | ||||||
|     if [ -n "$1" ] ;then |     if [ -n "$1" ] ; then | ||||||
|         DOS="-D_os $1" |         DEFOSSNOSS="-D_ossnoss $1" | ||||||
|         echo "$DOS" |  | ||||||
|     fi |     fi | ||||||
|     if [ -n "$2" ] ; then |     if [ -n "$2" ] ; then | ||||||
|         DEFOSSNOSS="-D_ossnoss $2" |         DEFSIM="-D_sim $2" | ||||||
|         echo "$DEFOSSNOSS" |  | ||||||
|     fi |  | ||||||
|     if [ -n "$3" ] ; then |  | ||||||
|         DEFSIM="-D_sim $3" |  | ||||||
|         echo "$DEFSIM" |  | ||||||
|     fi |     fi | ||||||
| 
 | 
 | ||||||
|     VERSION=`(cd ../../; mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version) | grep --color=none '^[0-9]\.'` |     DISTRO=$3 | ||||||
|  | 
 | ||||||
|  |     VERSION=`(cd ../; mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version) | grep --color=none '^[0-9]\.'` | ||||||
|     if echo $VERSION | grep -q SNAPSHOT ; then |     if echo $VERSION | grep -q SNAPSHOT ; then | ||||||
|         REALVER=`echo $VERSION | cut -d '-' -f 1` |         REALVER=`echo $VERSION | cut -d '-' -f 1` | ||||||
|         DEFVER="-D_ver $REALVER" |         DEFVER="-D_ver $REALVER" | ||||||
| @ -71,15 +70,13 @@ function packaging() { | |||||||
|     mkdir -p $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION |     mkdir -p $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION | ||||||
| 
 | 
 | ||||||
|     echo ". preparing source tarball" |     echo ". preparing source tarball" | ||||||
|     (cd ../../; tar -c --exclude .git --exclude dist  .  | tar -C $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION -x ) |     (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/SOURCES/; tar -czf $PACK_PROJECT-$VERSION.tgz $PACK_PROJECT-$VERSION) | ||||||
| 
 | 
 | ||||||
|     echo ". executing rpmbuild" |     echo ". executing rpmbuild" | ||||||
|     cp cloud.spec $RPMDIR/SPECS |     cp $DISTRO/cloud.spec $RPMDIR/SPECS | ||||||
|     cp -rf default $RPMDIR/SPECS |  | ||||||
|     cp -rf rhel7 $RPMDIR/SPECS |  | ||||||
| 
 | 
 | ||||||
|     (cd $RPMDIR; rpmbuild --define "_topdir $RPMDIR" "${DEFVER}" "${DEFREL}" ${DEFPRE+"${DEFPRE}"} ${DEFOSSNOSS+"$DEFOSSNOSS"} ${DEFSIM+"$DEFSIM"} "${DOS}" -bb SPECS/cloud.spec) |     (cd $RPMDIR; rpmbuild --define "_topdir $RPMDIR" "${DEFVER}" "${DEFREL}" ${DEFPRE+"${DEFPRE}"} ${DEFOSSNOSS+"$DEFOSSNOSS"} ${DEFSIM+"$DEFSIM"} -bb SPECS/cloud.spec) | ||||||
| 
 | 
 | ||||||
|     if [ $? -ne 0 ]; then |     if [ $? -ne 0 ]; then | ||||||
|         echo "RPM Build Failed " |         echo "RPM Build Failed " | ||||||
| @ -91,11 +88,13 @@ function packaging() { | |||||||
| 
 | 
 | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| if [ $# -lt 1 ] ; then | 
 | ||||||
|     packaging "default" | TARGETDISTRO="" | ||||||
| elif [ $# -gt 0 ] ; then | sim="" | ||||||
|     SHORTOPTS="hp:o:" | packageval="" | ||||||
|     LONGOPTS="help,pack:,operating-system:,simulator:" | 
 | ||||||
|  |     SHORTOPTS="hp:d:" | ||||||
|  |     LONGOPTS="help,pack:,simulator:distribution" | ||||||
|     ARGS=$(getopt -s bash -u -a --options $SHORTOPTS  --longoptions $LONGOPTS --name $0 -- "$@") |     ARGS=$(getopt -s bash -u -a --options $SHORTOPTS  --longoptions $LONGOPTS --name $0 -- "$@") | ||||||
|     eval set -- "$ARGS" |     eval set -- "$ARGS" | ||||||
|     echo "$ARGS" |     echo "$ARGS" | ||||||
| @ -119,19 +118,6 @@ elif [ $# -gt 0 ] ; then | |||||||
|             fi |             fi | ||||||
|             shift |             shift | ||||||
|             ;; |             ;; | ||||||
|         -o | --operating-system) |  | ||||||
|             os=$2 |  | ||||||
|             echo "$os" |  | ||||||
|             if [ "$os" == "default" -o "$os" == "DEFAULT" ] ; then |  | ||||||
|                 os = "default" |  | ||||||
|             elif [ "$os" == "rhel7" -o "$os" == "RHEL7" ] ; then |  | ||||||
|                 os="rhel7" |  | ||||||
|             else |  | ||||||
|                 echo "Error: Incorrect value provided in package.sh script for -o, Please see help ./package.sh --help|-h for more details." |  | ||||||
| 		exit 1 |  | ||||||
|             fi |  | ||||||
|             shift |  | ||||||
|             ;; |  | ||||||
|         -s | --simulator) |         -s | --simulator) | ||||||
|             sim=$2 |             sim=$2 | ||||||
|             echo "$sim" |             echo "$sim" | ||||||
| @ -145,6 +131,10 @@ elif [ $# -gt 0 ] ; then | |||||||
|             fi |             fi | ||||||
|             shift |             shift | ||||||
|             ;; |             ;; | ||||||
|  |         -d | --distribution) | ||||||
|  |             TARGETDISTRO=$2 | ||||||
|  |             shift | ||||||
|  |             ;; | ||||||
|         -) |         -) | ||||||
|             echo "Unrecognized option..." |             echo "Unrecognized option..." | ||||||
|             usage |             usage | ||||||
| @ -156,13 +146,11 @@ elif [ $# -gt 0 ] ; then | |||||||
|         esac |         esac | ||||||
|     done |     done | ||||||
| 
 | 
 | ||||||
|     if [ -z "${os+xxx}" ]; then |     if [ -z "$TARGETDISTRO" ] | ||||||
|         echo "Setting os to default" |     then | ||||||
|         os="default" |         echo "Missing target distribution" | ||||||
|  |         usage | ||||||
|  |         exit 1 | ||||||
|     fi |     fi | ||||||
|     echo "Passed OS = $os, packageval = $packageval and Simulator build = $sim" | 
 | ||||||
|     packaging $os $packageval $sim |     packaging "$packageval" "$sim" "$TARGETDISTRO" | ||||||
| else |  | ||||||
|     echo "Incorrect choice.  Nothing to do." >&2 |  | ||||||
|     echo "Please, execute ./package.sh --help for more help" |  | ||||||
| fi |  | ||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user