| Index: tools/telemetry/third_party/gsutilz/third_party/boto/tests/integration/rds/test_promote_modify.py
|
| diff --git a/tools/telemetry/third_party/gsutilz/third_party/boto/tests/integration/rds/test_promote_modify.py b/tools/telemetry/third_party/gsutilz/third_party/boto/tests/integration/rds/test_promote_modify.py
|
| deleted file mode 100644
|
| index 20963ed2739e3ecafa9c4766a4d40528cec33bc1..0000000000000000000000000000000000000000
|
| --- a/tools/telemetry/third_party/gsutilz/third_party/boto/tests/integration/rds/test_promote_modify.py
|
| +++ /dev/null
|
| @@ -1,138 +0,0 @@
|
| -# Author: Bruce Pennypacker
|
| -#
|
| -# Create a temporary RDS database instance, then create a read-replica of the
|
| -# instance. Once the replica is available, promote it and verify that the
|
| -# promotion succeeds, then rename it. Delete the databases upon completion i
|
| -# of the tests.
|
| -#
|
| -# For each step (creating the databases, promoting, etc) we loop for up
|
| -# to 15 minutes to wait for the instance to become available. It should
|
| -# never take that long for any of the steps to complete.
|
| -
|
| -"""
|
| -Check that promotion of read replicas and renaming instances works as expected
|
| -"""
|
| -
|
| -import unittest
|
| -import time
|
| -from boto.rds import RDSConnection
|
| -
|
| -class PromoteReadReplicaTest(unittest.TestCase):
|
| - rds = True
|
| -
|
| - def setUp(self):
|
| - self.conn = RDSConnection()
|
| - self.masterDB_name = "boto-db-%s" % str(int(time.time()))
|
| - self.replicaDB_name = "replica-%s" % self.masterDB_name
|
| - self.renamedDB_name = "renamed-replica-%s" % self.masterDB_name
|
| -
|
| -
|
| - def tearDown(self):
|
| - instances = self.conn.get_all_dbinstances()
|
| - for db in [self.masterDB_name, self.replicaDB_name, self.renamedDB_name]:
|
| - for i in instances:
|
| - if i.id == db:
|
| - self.conn.delete_dbinstance(db, skip_final_snapshot=True)
|
| -
|
| - def test_promote(self):
|
| - print '--- running RDS promotion & renaming tests ---'
|
| - self.masterDB = self.conn.create_dbinstance(self.masterDB_name, 5, 'db.t1.micro', 'root', 'bototestpw')
|
| -
|
| - # Wait up to 15 minutes for the masterDB to become available
|
| - print '--- waiting for "%s" to become available ---' % self.masterDB_name
|
| - wait_timeout = time.time() + (15 * 60)
|
| - time.sleep(60)
|
| -
|
| - instances = self.conn.get_all_dbinstances(self.masterDB_name)
|
| - inst = instances[0]
|
| -
|
| - while wait_timeout > time.time() and inst.status != 'available':
|
| - time.sleep(15)
|
| - instances = self.conn.get_all_dbinstances(self.masterDB_name)
|
| - inst = instances[0]
|
| -
|
| - self.assertTrue(inst.status == 'available')
|
| -
|
| - self.replicaDB = self.conn.create_dbinstance_read_replica(self.replicaDB_name, self.masterDB_name)
|
| -
|
| - # Wait up to 15 minutes for the replicaDB to become available
|
| - print '--- waiting for "%s" to become available ---' % self.replicaDB_name
|
| - wait_timeout = time.time() + (15 * 60)
|
| - time.sleep(60)
|
| -
|
| - instances = self.conn.get_all_dbinstances(self.replicaDB_name)
|
| - inst = instances[0]
|
| -
|
| - while wait_timeout > time.time() and inst.status != 'available':
|
| - time.sleep(15)
|
| - instances = self.conn.get_all_dbinstances(self.replicaDB_name)
|
| - inst = instances[0]
|
| -
|
| - self.assertTrue(inst.status == 'available')
|
| -
|
| - # Promote the replicaDB and wait for it to become available
|
| - self.replicaDB = self.conn.promote_read_replica(self.replicaDB_name)
|
| -
|
| - # Wait up to 15 minutes for the replicaDB to become available
|
| - print '--- waiting for "%s" to be promoted and available ---' % self.replicaDB_name
|
| - wait_timeout = time.time() + (15 * 60)
|
| - time.sleep(60)
|
| -
|
| - instances = self.conn.get_all_dbinstances(self.replicaDB_name)
|
| - inst = instances[0]
|
| -
|
| - while wait_timeout > time.time() and inst.status != 'available':
|
| - time.sleep(15)
|
| - instances = self.conn.get_all_dbinstances(self.replicaDB_name)
|
| - inst = instances[0]
|
| -
|
| - # Verify that the replica is now a standalone instance and no longer
|
| - # functioning as a read replica
|
| - self.assertTrue(inst)
|
| - self.assertTrue(inst.status == 'available')
|
| - self.assertFalse(inst.status_infos)
|
| -
|
| - # Verify that the master no longer has any read replicas
|
| - instances = self.conn.get_all_dbinstances(self.masterDB_name)
|
| - inst = instances[0]
|
| - self.assertFalse(inst.read_replica_dbinstance_identifiers)
|
| -
|
| - print '--- renaming "%s" to "%s" ---' % ( self.replicaDB_name, self.renamedDB_name )
|
| -
|
| - self.renamedDB = self.conn.modify_dbinstance(self.replicaDB_name, new_instance_id=self.renamedDB_name, apply_immediately=True)
|
| -
|
| - # Wait up to 15 minutes for the masterDB to become available
|
| - print '--- waiting for "%s" to exist ---' % self.renamedDB_name
|
| -
|
| - wait_timeout = time.time() + (15 * 60)
|
| - time.sleep(60)
|
| -
|
| - # Wait up to 15 minutes until the new name shows up in the instance table
|
| - found = False
|
| - while found == False and wait_timeout > time.time():
|
| - instances = self.conn.get_all_dbinstances()
|
| - for i in instances:
|
| - if i.id == self.renamedDB_name:
|
| - found = True
|
| - if found == False:
|
| - time.sleep(15)
|
| -
|
| - self.assertTrue(found)
|
| -
|
| - print '--- waiting for "%s" to become available ---' % self.renamedDB_name
|
| -
|
| - instances = self.conn.get_all_dbinstances(self.renamedDB_name)
|
| - inst = instances[0]
|
| -
|
| - # Now wait for the renamed instance to become available
|
| - while wait_timeout > time.time() and inst.status != 'available':
|
| - time.sleep(15)
|
| - instances = self.conn.get_all_dbinstances(self.renamedDB_name)
|
| - inst = instances[0]
|
| -
|
| - self.assertTrue(inst.status == 'available')
|
| -
|
| - # Since the replica DB was renamed...
|
| - self.replicaDB = None
|
| -
|
| - print '--- tests completed ---'
|
|
|