summaryrefslogtreecommitdiffstats
path: root/meta-openstack/recipes-devtools/python/python-nova
diff options
context:
space:
mode:
Diffstat (limited to 'meta-openstack/recipes-devtools/python/python-nova')
-rw-r--r--meta-openstack/recipes-devtools/python/python-nova/nova.init29
-rw-r--r--meta-openstack/recipes-devtools/python/python-nova/openrc21
2 files changed, 49 insertions, 1 deletions
diff --git a/meta-openstack/recipes-devtools/python/python-nova/nova.init b/meta-openstack/recipes-devtools/python/python-nova/nova.init
index 87e72fa..46b28d3 100644
--- a/meta-openstack/recipes-devtools/python/python-nova/nova.init
+++ b/meta-openstack/recipes-devtools/python/python-nova/nova.init
@@ -86,6 +86,30 @@ status()
86 echo "$DESC is not running" 86 echo "$DESC is not running"
87} 87}
88 88
89reset()
90{
91 . /etc/nova/openrc
92
93 # Nova comute
94 simple_delete "nova list --all-tenant" "nova delete" 1 "vm"
95
96 stop
97
98 # This is to make sure postgres is configured and running
99 if ! pidof postmaster > /dev/null; then
100 /etc/init.d/postgresql-init
101 /etc/init.d/postgresql start
102 sleep 5
103 fi
104
105 sudo -u postgres dropdb nova
106 sudo -u postgres createdb nova
107 sleep 2
108 nova-manage db sync
109
110 start
111}
112
89case "$1" in 113case "$1" in
90 start) 114 start)
91 start 115 start
@@ -100,8 +124,11 @@ case "$1" in
100 status) 124 status)
101 status 125 status
102 ;; 126 ;;
127 reset)
128 reset
129 ;;
103 *) 130 *)
104 echo "Usage: $0 {start|stop|force-reload|restart|reload|status}" 131 echo "Usage: $0 {start|stop|force-reload|restart|reload|status|reset}"
105 exit 1 132 exit 1
106 ;; 133 ;;
107esac 134esac
diff --git a/meta-openstack/recipes-devtools/python/python-nova/openrc b/meta-openstack/recipes-devtools/python/python-nova/openrc
index c28f355..35327ac 100644
--- a/meta-openstack/recipes-devtools/python/python-nova/openrc
+++ b/meta-openstack/recipes-devtools/python/python-nova/openrc
@@ -4,3 +4,24 @@ export OS_PASSWORD=%OS_PASSWORD%
4export OS_AUTH_URL="http://%CONTROLLER_HOST%:5000/v2.0/" 4export OS_AUTH_URL="http://%CONTROLLER_HOST%:5000/v2.0/"
5export SERVICE_ENDPOINT="http://%CONTROLLER_HOST%:35357/v2.0" 5export SERVICE_ENDPOINT="http://%CONTROLLER_HOST%:35357/v2.0"
6export SERVICE_TOKEN=%SERVICE_TOKEN% 6export SERVICE_TOKEN=%SERVICE_TOKEN%
7
8function get_field() {
9 while read data; do
10 if [ "$1" -lt 0 ]; then
11 field="(\$(NF$1))"
12 else
13 field="\$$(($1 + 1))"
14 fi
15 echo "$data" | awk -F'[ \t]*\\|[ \t]*' "{print $field}"
16 done
17}
18
19function simple_delete() {
20 $1 | while read line; do
21 id=`echo $line | get_field $3`
22 if [ ! -z "$id" ] ; then
23 echo ">>> Delete $4: id=$id"
24 $2 $id > /dev/null 2>&1
25 fi
26 done
27}