]> review.fuel-infra Code Review - openstack-build/cinder-build.git/commitdiff
Add cinder-volume-vmware init files 09/4509/2
authorIgor Gajsin <igajsin@mirantis.com>
Wed, 11 Mar 2015 12:48:53 +0000 (15:48 +0300)
committerIgor Gajsin <igajsin@mirantis.com>
Wed, 11 Mar 2015 13:03:01 +0000 (16:03 +0300)
Add 2 cinder-volume init-files special for vmware-related
environments. They will be locaited in /usr/share/cinder and will be
copied by puppet to /etc/init or /etc/init.d  when it will be needed.

Change-Id: Id794b193d4976ca55bf5c3fd55c284162112ac55

debian/cinder-volume-vmware.conf [new file with mode: 0644]
debian/cinder-volume.dirs
debian/cinder-volume.install
rpm/SOURCES/openstack-cinder-volume-vmware.init [new file with mode: 0644]
rpm/SPECS/openstack-cinder.spec

diff --git a/debian/cinder-volume-vmware.conf b/debian/cinder-volume-vmware.conf
new file mode 100644 (file)
index 0000000..2e531c6
--- /dev/null
@@ -0,0 +1,21 @@
+# vim: set ft=upstart et ts=2:
+description "Cinder volume service for vmware"
+author "Igor Gajsin igajsin@mirantis.com"
+
+start on runlevel [2345]
+stop on runlevel [!2345]
+
+chdir /var/run
+
+pre-start script
+    mkdir -p /var/run/cinder
+    chown cinder:cinder /var/run/cinder
+
+    mkdir -p /var/lock/cinder
+    chown cinder:root /var/lock/cinder
+end script
+
+script
+  [ -r /etc/default/$UPSTART_JOB ] &&. /etc/default/$UPSTART_JOB
+  start-stop-daemon --start --chuid cinder --exec /usr/bin/cinder-volume -- $CINDER_VOLUME_OPTS
+end script
index 76991390610ff8bbe5c4a9eb72c4db40920ee144..2923f025cc9cd3663cab5d3242b79f022e040873 100644 (file)
@@ -1 +1,2 @@
 var/lib/cinder/volumes
+usr/share/cinder
\ No newline at end of file
index bbaf426b33a3d21842f07d5119ccf71190d7e715..cbe16b457b5cde7af23407f533344d81d2f5e597 100644 (file)
@@ -1,4 +1,5 @@
 debian/cinder_tgt.conf etc/tgt/conf.d
+debian/cinder-volume-vmware.conf usr/share/cinder
 etc/cinder/rootwrap.d/volume.filters /etc/cinder/rootwrap.d
 usr/bin/cinder-volume
 usr/bin/cinder-volume-usage-audit
diff --git a/rpm/SOURCES/openstack-cinder-volume-vmware.init b/rpm/SOURCES/openstack-cinder-volume-vmware.init
new file mode 100644 (file)
index 0000000..063ace5
--- /dev/null
@@ -0,0 +1,114 @@
+#!/bin/sh
+#
+# openstack-cinder-volume  OpenStack Cinder Volume Services
+#
+# chkconfig:   - 98 02
+# description:  Volume Workers interact with iSCSI storage to manage    \
+#               LVM-based instance volumes. Specific functions include: \
+#               * Create Volumes                                        \
+#               * Establish Compute volumes
+## BEGIN INIT INFO
+# Provides:
+# Required-Start: $remote_fs $network $syslog
+# Required-Stop: $remote_fs $syslog
+# Default-Stop: 0 1 6
+# Short-Description: OpenStack cinder Volume Worker
+# Description:  Volume Workers interact with iSCSI storage to manage
+#               LVM-based instance volumes. Specific functions include:
+#               * Create Volumes
+#               * Delete Volumes
+#               * Establish Compute volumes
+### END INIT INFO
+
+. /etc/rc.d/init.d/functions
+
+suffix=volume
+cluster=${0##*-} # s/cluster/index/
+prog=openstack-cinder-$suffix-vmware-$cluster
+exec="/usr/bin/cinder-$suffix"
+config="/etc/cinder/cinder.conf"
+pidfile="/var/run/cinder/cinder-$suffix.$cluster.pid"
+logfile="/var/log/cinder/$suffix-$cluster.log"
+
+[ -r /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog
+
+lockfile=/var/lock/subsys/$prog
+
+start() {
+    [ -x $exec ] || exit 5
+    [ -f $config ] || exit 6
+    echo -n $"Starting $prog: "
+    daemon --user cinder --pidfile $pidfile "$exec --logfile $logfile ${OPTIONS} &>/dev/null & echo \$! > $pidfile"
+    retval=$?
+    echo
+    [ $retval -eq 0 ] && touch $lockfile
+    return $retval
+}
+
+stop() {
+    echo -n $"Stopping $prog: "
+    killproc -p $pidfile ${prog%%.*}
+    if pgrep -f "cinder-$suffix.*$cluster\.conf" &>/dev/null ; then
+        sleep 2
+        pgrep -f "cinder-$suffix.*$cluster\.conf" &>/dev/null && \
+        pkill -f "$cluster.conf"
+    fi
+    retval=$?
+    echo
+    [ $retval -eq 0 ] && rm -f $lockfile
+    return $retval
+}
+
+restart() {
+    stop
+    start
+}
+
+reload() {
+    restart
+}
+
+force_reload() {
+    restart
+}
+
+rh_status() {
+    status -p $pidfile $prog
+}
+
+rh_status_q() {
+    rh_status >/dev/null 2>&1
+}
+
+
+case "$1" in
+    start)
+        rh_status_q && exit 0
+        $1
+        ;;
+    stop)
+        rh_status_q || exit 0
+        $1
+        ;;
+    restart)
+        $1
+        ;;
+    reload)
+        rh_status_q || exit 7
+        $1
+        ;;
+    force-reload)
+        force_reload
+        ;;
+    status)
+        rh_status
+        ;;
+    condrestart|try-restart)
+        rh_status_q || exit 0
+        restart
+        ;;
+    *)
+        echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
+        exit 2
+esac
+exit $?
index 6c9e4754e1096758c77976dafaa66da86764f21f..714577924411466257150008a06c2b84ab2a0b98 100644 (file)
@@ -17,7 +17,7 @@ Source10:         openstack-cinder-api.init
 Source11:         openstack-cinder-scheduler.init
 Source12:         openstack-cinder-volume.init
 Source13:         openstack-cinder-backup.init
-
+Source14:         openstack-cinder-volume-vmware.init
 Source20:         cinder-sudoers
 
 #
@@ -201,6 +201,7 @@ install -d -m 755 %{buildroot}%{_localstatedir}/log/cinder
 # Install config files
 install -d -m 755 %{buildroot}%{_sysconfdir}/cinder
 install -p -D -m 640 %{SOURCE1} %{buildroot}%{_datadir}/cinder/cinder-dist.conf
+install -p -D -m 755 %{SOURCE14} %{buildroot}%{_datadir}/cinder/openstack-cinder-volume-vmware
 install -p -D -m 640 etc/cinder/cinder.conf.sample %{buildroot}%{_sysconfdir}/cinder/cinder.conf
 install -d -m 755 %{buildroot}%{_sysconfdir}/cinder/volumes
 install -p -D -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/tgt/conf.d/cinder.conf