From 7ce03b4f8ea116ee666dc2f0d8d23546415c5f04 Mon Sep 17 00:00:00 2001 From: Hugo Trippaers Date: Sun, 3 Feb 2013 17:49:18 +0100 Subject: [PATCH] Summary: Fixup usage server for packaging Make the start method work again with jsvc Move the usageApplicationContext to resources and add resources to the pom.xml Remove the old components file Add mysql-connector as a runtime dependency Rename the usage package and the files to cloudstack Change paths to the new proposed locations --- packaging/centos63/cloud-usage.rc | 8 +- packaging/centos63/cloud.spec | 18 +++-- usage/conf/usage-components.xml.in | 80 ------------------- usage/pom.xml | 12 ++- .../usageApplicationContext.xml} | 0 usage/src/com/cloud/usage/UsageServer.java | 8 +- 6 files changed, 29 insertions(+), 97 deletions(-) delete mode 100644 usage/conf/usage-components.xml.in rename usage/{conf/usageApplicationContext.xml.in => resources/usageApplicationContext.xml} (100%) diff --git a/packaging/centos63/cloud-usage.rc b/packaging/centos63/cloud-usage.rc index 9aa01ea2b11..8bee5aeb6a0 100755 --- a/packaging/centos63/cloud-usage.rc +++ b/packaging/centos63/cloud-usage.rc @@ -32,10 +32,10 @@ . /etc/rc.d/init.d/functions -SHORTNAME="cloud-usage" +SHORTNAME="cloudstack-usage" PIDFILE=/var/run/"$SHORTNAME".pid LOCKFILE=/var/lock/subsys/"$SHORTNAME" -LOGFILE=/var/log/cloud/usage/usage.log +LOGFILE=/var/log/cloudstack/usage/usage.log PROGNAME="CloudStack Usage Monitor" CLASS="com.cloud.usage.UsageServer" PROG="jsvc" @@ -57,12 +57,12 @@ export JAVA_HOME SCP="" DCP="" -UCP=`ls /usr/share/cloud/usage/java/* | tr '\n' ':'` +UCP=`ls /usr/share/cloudstack-usage/cloud-usage-*.jar`":"`ls /usr/share/cloudstack-usage/lib/* | tr '\n' ':'` JCP="/usr/share/java/commons-daemon.jar" # We need to append the JSVC daemon JAR to the classpath # AgentShell implements the JSVC daemon methods -export CLASSPATH="$SCP:$DCP:$UCP:$JCP:/etc/sysconfig +export CLASSPATH="$SCP:$DCP:$UCP:$JCP:/etc/sysconfig" start() { if [ -s "$PIDFILE" ] && kill -0 $(cat "$PIDFILE") >/dev/null 2>&1; then diff --git a/packaging/centos63/cloud.spec b/packaging/centos63/cloud.spec index 8587bf72209..2b029e36354 100644 --- a/packaging/centos63/cloud.spec +++ b/packaging/centos63/cloud.spec @@ -240,10 +240,11 @@ install -D plugins/hypervisors/kvm/target/cloud-plugin-hypervisor-kvm-%{_maventa cp plugins/hypervisors/kvm/target/dependencies/* ${RPM_BUILD_ROOT}/usr/share/cloud/java # Usage server -install -D usage/target/cloud-usage-%{_maventag}.jar ${RPM_BUILD_ROOT}/usr/share/cloud/usage/java/cloud-usage-%{_maventag}.jar -cp usage/target/dependencies/* ${RPM_BUILD_ROOT}/usr/share/cloud/usage/java -install -D packaging/centos63/cloud-usage.rc ${RPM_BUILD_ROOT}/etc/init.d/cloud-usage -mkdir -p ${RPM_BUILD_ROOT}/var/log/cloud/usage/ +mkdir -p ${RPM_BUILD_ROOT}/usr/share/%{name}-usage/lib +install -D usage/target/cloud-usage-%{_maventag}.jar ${RPM_BUILD_ROOT}%{_datadir}/%{name}-usage/cloud-usage-%{_maventag}.jar +cp usage/target/dependencies/* ${RPM_BUILD_ROOT}%{_datadir}/%{name}-usage/lib/ +install -D packaging/centos63/cloud-usage.rc ${RPM_BUILD_ROOT}/%{_sysconfdir}/init.d/%{name}-usage +mkdir -p ${RPM_BUILD_ROOT}/var/log/%{name}/usage/ %clean [ ${RPM_BUILD_ROOT} != "/" ] && rm -rf ${RPM_BUILD_ROOT} @@ -335,14 +336,15 @@ fi %doc NOTICE %files common -%attr(0755,root,root) /usr/share/cloudstack-scripts/ +%attr(0755,root,root) %{_datadir}/cloudstack-scripts/ %doc LICENSE %doc NOTICE %files usage -%attr(0755,root,root) %{_sysconfdir}/init.d/cloud-usage -%attr(0644,root,root) /usr/share/cloud/usage/java/*.jar -%dir /var/log/cloud/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 /var/log/%{name}/usage %doc LICENSE %doc NOTICE diff --git a/usage/conf/usage-components.xml.in b/usage/conf/usage-components.xml.in deleted file mode 100644 index d9e222127f2..00000000000 --- a/usage/conf/usage-components.xml.in +++ /dev/null @@ -1,80 +0,0 @@ - - - - - - - - - - - - 50 - -1 - - - - - - - - - - - - - - - - - - - - - - - - DAILY - - - - - diff --git a/usage/pom.xml b/usage/pom.xml index 9ecd6e139ff..bbd0d4514fb 100644 --- a/usage/pom.xml +++ b/usage/pom.xml @@ -31,11 +31,22 @@ cloud-server ${project.version} + + mysql + mysql-connector-java + ${cs.mysql.version} + runtime + install src test + + + resources + + org.apache.maven.plugins @@ -102,7 +113,6 @@ - diff --git a/usage/conf/usageApplicationContext.xml.in b/usage/resources/usageApplicationContext.xml similarity index 100% rename from usage/conf/usageApplicationContext.xml.in rename to usage/resources/usageApplicationContext.xml diff --git a/usage/src/com/cloud/usage/UsageServer.java b/usage/src/com/cloud/usage/UsageServer.java index ce87b885d2f..881962f5c79 100644 --- a/usage/src/com/cloud/usage/UsageServer.java +++ b/usage/src/com/cloud/usage/UsageServer.java @@ -38,17 +38,17 @@ public class UsageServer { */ public static void main(String[] args) { initLog4j(); - ApplicationContext appContext = new ClassPathXmlApplicationContext("usageApplicationContext.xml"); - UsageServer usage = new UsageServer(); usage.init(args); - usage.start(appContext); + usage.start(); } public void init(String[] args) { } - public void start(ApplicationContext appContext) { + public void start() { + ApplicationContext appContext = new ClassPathXmlApplicationContext("usageApplicationContext.xml"); + try { ComponentContext.initComponentsLifeCycle(); } catch(Exception e) {