prototypes: bifrost: Check we are running the destroy-env.sh as root 51/21051/2
authorMarkos Chandras <mchandras@suse.de>
Tue, 13 Sep 2016 19:28:28 +0000 (20:28 +0100)
committerMarkos Chandras <mchandras@suse.de>
Wed, 14 Sep 2016 08:21:32 +0000 (09:21 +0100)
Nearly all operations in the destroy-env.sh script need to be executed
as root so make sure that's the case before we try to do anything.
This also fixes the dnsmasq.leases path and we check that the file
exists before we try to wipe it. The dnsmasq is also restarted to take
the empty leases file into consideration. Finally, we improve the
documentation to run the necessary commands using sudo.

Change-Id: I56df821ca8a93307117a94a11abd0867b27d8443
Signed-off-by: Markos Chandras <mchandras@suse.de>
prototypes/bifrost/README.md
prototypes/bifrost/scripts/destroy-env.sh

index 4bba0db..7f12793 100644 (file)
@@ -7,26 +7,26 @@ Please follow that steps:
 
 1. Clone bifrost::
 
-    git clone https://git.openstack.org/openstack/bifrost /opt/bifrost
+    sudo git clone https://git.openstack.org/openstack/bifrost /opt/bifrost
 
 2. Clone releng::
 
-    git clone https://gerrit.opnfv.org/gerrit/releng /opt/releng
+    sudo git clone https://gerrit.opnfv.org/gerrit/releng /opt/releng
 
 3. Clone infracloud::
 
-    git clone https://git.openstack.org/openstack-infra/puppet-infracloud /opt/puppet-infracloud
+    sudo git clone https://git.openstack.org/openstack-infra/puppet-infracloud /opt/puppet-infracloud
 
 4. Combine releng scripts and playbooks with bifrost::
 
-    cp -R /opt/releng/prototypes/bifrost/* /opt/bifrost/
+    sudo cp -R /opt/releng/prototypes/bifrost/* /opt/bifrost/
 
 5. If you are on a RHEL/CentOS box, ensure that selinux is disabled
 
 6. Run destroy script if you need to cleanup previous environment::
 
     cd /opt/bifrost
-    ./scripts/destroy-env.sh
+    sudo ./scripts/destroy-env.sh
 
 7. Run deployment script to spin up 3 vms with bifrost: jumphost, controller and compute::
 
index f092a65..86d7bc4 100755 (executable)
@@ -7,6 +7,13 @@
 # which accompanies this distribution, and is available at
 # http://www.apache.org/licenses/LICENSE-2.0
 ##############################################################################
+
+# We need to execute everything as root
+if [[ $(whoami) != "root" ]]; then
+    echo "Error: This script must be run as root!"
+    exit 1
+fi
+
 virsh destroy jumphost.opnfvlocal || true
 virsh destroy controller00.opnfvlocal || true
 virsh destroy compute00.opnfvlocal || true
@@ -22,7 +29,7 @@ mysql -u root ironic --execute "delete from node_tags;"
 mysql -u root ironic --execute "delete from nodes;"
 mysql -u root ironic --execute "delete from conductors;"
 echo "removing leases"
-> /var/lib/dnsmasq/dnsmasq.leases
+[[ -e /var/lib/misc/dnsmasq/dnsmasq.leases ]] && > /var/lib/misc/dnsmasq/dnsmasq.leases
 echo "removing logs"
 rm -rf /var/log/libvirt/baremetal_logs/*.log
 
@@ -38,6 +45,7 @@ fi
 rm -rf /var/lib/libvirt/images/*.qcow2
 
 echo "restarting services"
+service dnsmasq restart
 service libvirtd restart
 service ironic-api restart
 service ironic-conductor start