Andrew Bogott has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/233714

Change subject: Wait for confirmation before deleting migrated files on the 
source host.
......................................................................

Wait for confirmation before deleting migrated files on the source host.

Change-Id: I84c2b0e82732cd16fb13748e6cc7f2e15a4a4605
---
M modules/openstack/files/icehouse/virtscripts/cold-migrate
1 file changed, 11 insertions(+), 3 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/operations/puppet 
refs/changes/14/233714/1

diff --git a/modules/openstack/files/icehouse/virtscripts/cold-migrate 
b/modules/openstack/files/icehouse/virtscripts/cold-migrate
index ca5ae10..1a29241 100755
--- a/modules/openstack/files/icehouse/virtscripts/cold-migrate
+++ b/modules/openstack/files/icehouse/virtscripts/cold-migrate
@@ -45,20 +45,23 @@
             self.instance_id,
             source,
             self.instance.status)
+        if (source == destination):
+            print "source and destination host are the same.  Nothing to do."
+            exit(0)
 
         self.instance.stop()
         self.wait_for_status('SHUTOFF')
 
         imagedir = "/var/lib/nova/instances/%s" % self.instance_id
 
-        args = ["/usr/bin/rsync", "-S", "-av", 
"%s.eqiad.wmnet::nova_instance_rsync_controller/%s" % (source, 
self.instance_id), "/tmp/novamigrate"]
+        args = ["/usr/bin/rsync", "-S", "-av", 
"%s.eqiad.wmnet::nova_instance_rsync_controller/%s" % (source, 
self.instance_id), "/srv/migratetmp"]
         print " ".join(args)
         r = subprocess.call(args)
         if r:
             print ("rsync from source to local failed.")
             return(1)
 
-        args = ["rsync", "-S", "-av", "/tmp/novamigrate/%s" % 
self.instance_id, "%s.eqiad.wmnet::nova_instance_rsync_controller/" % 
destination]
+        args = ["rsync", "-S", "-av", "/srv/migratetmp/%s" % self.instance_id, 
"%s.eqiad.wmnet::nova_instance_rsync_controller/" % destination]
         print " ".join(args)
         r = subprocess.call(args)
         if r:
@@ -83,7 +86,11 @@
         self.wait_for_status('ACTIVE')
 
         if host_moved:
-            print "Instance is active.  Cleaning up old instance files on %s" 
% source
+            print "Instance is active."
+            confirm = ""
+            while (confirm != "cleanup"):
+                confirm = raw_input("Verify that the instance is healthy, then 
type 'cleanup' to delete old instance files:  ")
+            print "Cleaning up old instance files on %s" % source
             args = ["ssh", "-i", "/root/.ssh/compute-hosts-key",
                     "nova@%s.eqiad.wmnet" % source,
                     "rm -rf", imagedir]
@@ -97,6 +104,7 @@
             self.instance_id,
             self.instance._info['OS-EXT-SRV-ATTR:host'],
             self.instance.status)
+        print "Note that you will need to manually clean up /srv/migratetmp."
 
 
 if __name__ == "__main__":

-- 
To view, visit https://gerrit.wikimedia.org/r/233714
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I84c2b0e82732cd16fb13748e6cc7f2e15a4a4605
Gerrit-PatchSet: 1
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Andrew Bogott <abog...@wikimedia.org>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to