aboutsummaryrefslogtreecommitdiffstats
path: root/meta-openstack/recipes-support/deploychef/files/service-shutdown
diff options
context:
space:
mode:
Diffstat (limited to 'meta-openstack/recipes-support/deploychef/files/service-shutdown')
-rw-r--r--meta-openstack/recipes-support/deploychef/files/service-shutdown54
1 files changed, 54 insertions, 0 deletions
diff --git a/meta-openstack/recipes-support/deploychef/files/service-shutdown b/meta-openstack/recipes-support/deploychef/files/service-shutdown
new file mode 100644
index 00000000..b89f9fa4
--- /dev/null
+++ b/meta-openstack/recipes-support/deploychef/files/service-shutdown
@@ -0,0 +1,54 @@
+#!/bin/bash
+# service-shutdown
+#
+# Copyright (c) 2014 Wind River Systems, Inc.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+# THE SOFTWARE.
+#
+#
+INITD_DIR=/etc/init.d/
+services=$(cat %DEPLOYCHEF_ROOT_DIR%/shutdown-list)
+for service in $services; do
+ service=$(echo $service | awk -F'K..' '{print $2}')
+ if [ -e $INITD_DIR$service ]; then
+ $INITD_DIR$service stop
+ sleep 1
+ fi
+done
+
+#Clean up swift installation and all stale files
+/etc/swift/swift_setup.sh clean
+
+#Delete all the know data base entries
+databases="ceilometer cinder glance heat keystone nova ovs_neutron \
+ postgres"
+for database in $databases; do
+ sudo -u postgres dropdb $database
+ sleep 1
+done
+
+#Now shutdown postgres and database directory
+if [ -e ${INITD_DIR}postgresql ]; then
+ ${INITD_DIR}postgresql stop
+ killall postgres
+ sleep 1
+ rm -rf /etc/postgresql
+ sleep 1
+fi
+