Adds a ceilometer-notification-agent package.
authorThomas Goirand <thomas@goirand.fr>
Mon, 3 Feb 2014 09:04:44 +0000 (17:04 +0800)
committerThomas Goirand <thomas@goirand.fr>
Mon, 3 Feb 2014 09:04:44 +0000 (17:04 +0800)
Change-Id: I35e8fb54cef551d7aa149898119b57c57e9c3aa1

Rewritten-From: e524865a79062d4e2029143d603a441874ce9a97

xenial/debian/ceilometer-notification-agent.init [new file with mode: 0644]
xenial/debian/ceilometer-notification-agent.install [new file with mode: 0644]
xenial/debian/ceilometer-notification-agent.logrotate [new file with mode: 0644]
xenial/debian/ceilometer-notification-agent.postrm [new file with mode: 0644]
xenial/debian/ceilometer-notification-agent.upstart.in [new file with mode: 0644]
xenial/debian/control

diff --git a/xenial/debian/ceilometer-notification-agent.init b/xenial/debian/ceilometer-notification-agent.init
new file mode 100644 (file)
index 0000000..c7d234f
--- /dev/null
@@ -0,0 +1,106 @@
+#!/bin/sh
+### BEGIN INIT INFO
+# Provides:          ceilometer-notification-agent
+# Required-Start:    $network $local_fs $remote_fs $syslog
+# Required-Stop:     $remote_fs
+# Should-Start:      mongodb rabbitmq-server
+# Should-Stop:       mongodb rabbitmq-server
+# Default-Start:     2 3 4 5
+# Default-Stop:      0 1 6
+# Short-Description: ceilometer notification agent
+# Description:       ceilometer notification agent
+### END INIT INFO
+
+# Author: Thomas Goirand <zigo@debian.org>
+
+PATH=/sbin:/usr/sbin:/bin:/usr/bin
+DESC="Ceilometer Notification Agent"
+SYS_NAME=ceilometer
+NAME=ceilometer-notification-agent
+DAEMON=/usr/bin/${NAME}
+
+SCRIPTNAME=/etc/init.d/${NAME}
+DAEMON_USER=${SYS_NAME}
+DAEMON_GROUP=${SYS_NAME}
+LOCK_DIR=/var/lock/${SYS_NAME}
+PID_DIR=/var/run/${SYS_NAME}
+PID_FILE=${PID_DIR}/${NAME}.pid
+LOGFILE=/var/log/${SYS_NAME}/${NAME}.log 
+DAEMON_ARGS="--config-file=/etc/${SYS_NAME}/ceilometer.conf --log-file=$LOGFILE"
+
+[ -x $DAEMON ] || exit 0
+
+for i in ${LOCK_DIR} ${PID_DIR} ; do
+       [ ! -d ${i} ] && mkdir -p ${i}
+       [ -d ${i} ] && chown ${DAEMON_USER}:${DAEMON_GROUP} ${i}
+done
+
+. /lib/lsb/init-functions
+
+do_start() {
+       start-stop-daemon --start \
+                       --background --quiet \
+                       --chuid ${DAEMON_USER}:${DAEMON_GROUP} \
+                       --make-pidfile --pidfile ${PID_FILE} \
+                       --chdir /var/run \
+                       --startas $DAEMON \
+                       --test > /dev/null \
+                       || return 1
+       start-stop-daemon --start \
+                       --background --quiet \
+                       --chuid ${DAEMON_USER}:${DAEMON_GROUP} \
+                       --make-pidfile --pidfile ${PID_FILE} \
+                       --chdir /var/run \
+                       --startas $DAEMON -- $DAEMON_ARGS \
+                       || return 2
+}
+
+do_stop() {
+       start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PID_FILE
+       RETVAL=$?
+       rm -f $PID_FILE
+       return "$RETVAL"
+}
+
+case "$1" in
+start)
+       log_daemon_msg "Starting $DESC" "$NAME"
+       do_start
+       case $? in
+               0|1) log_end_msg 0 ;;
+               2) log_end_msg 1 ;;
+       esac
+;;
+stop)
+       log_daemon_msg "Stopping $DESC" "$NAME"
+       do_stop
+       case $? in
+               0|1) log_end_msg 0 ;;
+               2) log_end_msg 1 ;;
+       esac
+;;
+status)
+       status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
+;;
+restart|force-reload)
+       log_daemon_msg "Restarting $DESC" "$NAME"
+       do_stop
+       case $? in
+       0|1)
+               do_start
+               case $? in
+                       0) log_end_msg 0 ;;
+                       1) log_end_msg 1 ;; # Old process is still running
+                       *) log_end_msg 1 ;; # Failed to start
+               esac
+       ;;
+       *) log_end_msg 1 ;; # Failed to stop
+       esac
+;;
+*)
+       echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2
+       exit 3
+;;
+esac
+
+exit 0
diff --git a/xenial/debian/ceilometer-notification-agent.install b/xenial/debian/ceilometer-notification-agent.install
new file mode 100644 (file)
index 0000000..e01c4b2
--- /dev/null
@@ -0,0 +1 @@
+/usr/bin/ceilometer-notification-agent
diff --git a/xenial/debian/ceilometer-notification-agent.logrotate b/xenial/debian/ceilometer-notification-agent.logrotate
new file mode 100644 (file)
index 0000000..7390c6a
--- /dev/null
@@ -0,0 +1,14 @@
+/var/log/ceilometer/ceilometer-notification-agent.log {
+    daily
+    missingok
+    compress
+    delaycompress
+    notifempty
+    postrotate
+        if dpkg-vendor --derives-from ubuntu ; then \
+            service ceilometer-notification-agent restart >/dev/null 2>&1 || true ; \
+        else \
+            invoke-rc.d ceilometer-notification-agent restart >/dev/null 2>&1 || true ; \
+        fi
+    endscript
+}
diff --git a/xenial/debian/ceilometer-notification-agent.postrm b/xenial/debian/ceilometer-notification-agent.postrm
new file mode 100644 (file)
index 0000000..6186c8f
--- /dev/null
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+set -e
+
+if [ "${1}" = purge ] ; then
+       rm -f /var/log/ceilometer/ceilometer-notification-agent.log*
+       [ -d /var/log/ceilometer ] && rmdir --ignore-fail-on-non-empty /var/log/ceilometer
+fi
+
+#DEBHELPER#
+
+exit 0
diff --git a/xenial/debian/ceilometer-notification-agent.upstart.in b/xenial/debian/ceilometer-notification-agent.upstart.in
new file mode 100644 (file)
index 0000000..a384044
--- /dev/null
@@ -0,0 +1,17 @@
+description "ceilometer-agent-compute"
+author "Thomas Goirand <zigo@debian.org>"
+
+start on runlevel [2345]
+stop on runlelvel [016]
+
+chdir /var/run
+
+pre-start script
+       mkdir -p /var/run/ceilometer
+       chown ceilometer:ceilometer /var/run/ceilometer
+
+       mkdir -p /var/lock/ceilometer
+       chown ceilometer:ceilometer /var/lock/ceilometer
+end script
+
+exec su -s /bin/sh -c "exec ceilometer-notification-agent --config-file /etc/ceilometer/ceilometer.conf --log-file /var/log/ceilometer/ceilometer-notification-agent.log" ceilometer
index 6def986f45f2d2215041d64c4f48694f95829747..7d0eecf54eeb81b50b16152e98f060155a06d010 100644 (file)
@@ -242,3 +242,20 @@ Description: OpenStack efficient metering counters system - alarm notifier
  overall system.
  .
  This package contains the alarm notifier daemon.
+
+Package: ceilometer-notification-agent
+Architecture: all
+Pre-Depends: dpkg (>= 1.15.6~)
+Depends: ceilometer-common (= ${binary:Version}),
+         ${misc:Depends},
+         ${ostack-lsb-base},
+         ${python:Depends}
+Description: OpenStack efficient metering counters system - alarm notifier
+ Ceilometer aims to deliver a Single Point Of Contact for billing systems,
+ providing all the counters they need to establish customer billing, accros
+ all current and future OpenStack components. The delivery of counters must be
+ traceable and auditable, the counters must be easily extensible to support new
+ projects, and agents doing data collections should be independent of the
+ overall system.
+ .
+ This package contains the notification agent daemon.