示例#1
0
 def test_deregister_instances_valid_id_list(self):
     '''
     tests that given an valid ids in the form of a list that the boto_elb
     deregister_instances all members of the given list
     '''
     conn_ec2 = boto.ec2.connect_to_region(region, **boto_conn_parameters)
     conn_elb = boto.ec2.elb.connect_to_region(region,
                                               **boto_conn_parameters)
     zones = [zone.name for zone in conn_ec2.get_all_zones()]
     elb_name = 'TestDeregisterInstancesValidIdList'
     load_balancer = conn_elb.create_load_balancer(elb_name, zones,
                                                   [(80, 80, 'http')])
     reservations = conn_ec2.run_instances('ami-08389d60', min_count=3)
     all_instance_ids = [instance.id for instance in reservations.instances]
     load_balancer.register_instances(all_instance_ids)
     # reservations.instances[:-1] refers to all instances except list
     # instance
     deregister_instances = [
         instance.id for instance in reservations.instances[:-1]
     ]
     expected_instances = [reservations.instances[-1].id]
     boto_elb.deregister_instances(elb_name, deregister_instances,
                                   **conn_parameters)
     load_balancer_refreshed = conn_elb.get_all_load_balancers(elb_name)[0]
     actual_instances = [
         instance.id for instance in load_balancer_refreshed.instances
     ]
     self.assertEqual(actual_instances, expected_instances)
示例#2
0
 def test_deregister_instances_valid_id_list(self):
     '''
     tests that given an valid ids in the form of a list that the boto_elb
     deregister_instances all members of the given list
     '''
     conn_ec2 = boto.ec2.connect_to_region(region, **boto_conn_parameters)
     conn_elb = boto.ec2.elb.connect_to_region(region,
                                               **boto_conn_parameters)
     zones = [zone.name for zone in conn_ec2.get_all_zones()]
     elb_name = 'TestDeregisterInstancesValidIdList'
     load_balancer = conn_elb.create_load_balancer(elb_name, zones,
                                                   [(80, 80, 'http')])
     reservations = conn_ec2.run_instances('ami-08389d60', min_count=3)
     all_instance_ids = [instance.id for instance in reservations.instances]
     load_balancer.register_instances(all_instance_ids)
     # reservations.instances[:-1] refers to all instances except list
     # instance
     deregister_instances = [instance.id for instance in
                             reservations.instances[:-1]]
     expected_instances = [reservations.instances[-1].id]
     boto_elb.deregister_instances(elb_name, deregister_instances,
                                   **conn_parameters)
     load_balancer_refreshed = conn_elb.get_all_load_balancers(elb_name)[0]
     actual_instances = [instance.id for instance in
                         load_balancer_refreshed.instances]
     self.assertEqual(actual_instances, expected_instances)
示例#3
0
 def test_deregister_instances_valid_id_string(self):
     """
     tests that given an valid id the boto_elb deregister_instances method
     removes exactly one of a number of ELB registered instances
     """
     conn_ec2 = boto.ec2.connect_to_region(region, **boto_conn_parameters)
     conn_elb = boto.ec2.elb.connect_to_region(region, **boto_conn_parameters)
     zones = [zone.name for zone in conn_ec2.get_all_zones()]
     elb_name = "TestDeregisterInstancesValidIdString"
     load_balancer = conn_elb.create_load_balancer(
         elb_name, zones, [(80, 80, "http")]
     )
     reservations = conn_ec2.run_instances("ami-08389d60", min_count=2)
     all_instance_ids = [instance.id for instance in reservations.instances]
     load_balancer.register_instances(all_instance_ids)
     boto_elb.deregister_instances(
         elb_name, reservations.instances[0].id, **conn_parameters
     )
     load_balancer_refreshed = conn_elb.get_all_load_balancers(elb_name)[0]
     expected_instances = deepcopy(all_instance_ids)
     expected_instances.remove(reservations.instances[0].id)
     actual_instances = [
         instance.id for instance in load_balancer_refreshed.instances
     ]
     self.assertEqual(actual_instances, expected_instances)
示例#4
0
 def test_deregister_instances_valid_id_string(self):
     '''
     tests that given an valid id the boto_elb deregister_instances method
     removes exactly one of a number of ELB registered instances
     '''
     conn_ec2 = boto.ec2.connect_to_region(region, **boto_conn_parameters)
     conn_elb = boto.ec2.elb.connect_to_region(region,
                                               **boto_conn_parameters)
     zones = [zone.name for zone in conn_ec2.get_all_zones()]
     elb_name = 'TestDeregisterInstancesValidIdString'
     load_balancer = conn_elb.create_load_balancer(elb_name, zones,
                                                   [(80, 80, 'http')])
     reservations = conn_ec2.run_instances('ami-08389d60', min_count=2)
     all_instance_ids = [instance.id for instance in reservations.instances]
     load_balancer.register_instances(all_instance_ids)
     boto_elb.deregister_instances(elb_name, reservations.instances[0].id,
                                   **conn_parameters)
     load_balancer_refreshed = conn_elb.get_all_load_balancers(elb_name)[0]
     expected_instances = deepcopy(all_instance_ids)
     expected_instances.remove(reservations.instances[0].id)
     actual_instances = [instance.id for instance in
                         load_balancer_refreshed.instances]
     self.assertEqual(actual_instances, expected_instances)
示例#5
0
 def test_deregister_instances_valid_id_result_true(self):
     '''
     tests that given an valid id the boto_elb deregister_instances method
     removes exactly one of a number of ELB registered instances
     '''
     conn_ec2 = boto.ec2.connect_to_region(region, **boto_conn_parameters)
     conn_elb = boto.ec2.elb.connect_to_region(region,
                                               **boto_conn_parameters)
     zones = [zone.name for zone in conn_ec2.get_all_zones()]
     elb_name = 'TestDeregisterInstancesValidIdResult'
     load_balancer = conn_elb.create_load_balancer(elb_name, zones,
                                                   [(80, 80, 'http')])
     reservations = conn_ec2.run_instances('ami-08389d60')
     load_balancer.register_instances(reservations.instances[0].id)
     deregister_result = boto_elb.deregister_instances(
         elb_name, reservations.instances[0].id, **conn_parameters)
     self.assertEqual(True, deregister_result)
示例#6
0
 def test_deregister_instances_valid_id_result_true(self):
     '''
     tests that given an valid id the boto_elb deregister_instances method
     removes exactly one of a number of ELB registered instances
     '''
     conn_ec2 = boto.ec2.connect_to_region(region, **boto_conn_parameters)
     conn_elb = boto.ec2.elb.connect_to_region(region,
                                               **boto_conn_parameters)
     zones = [zone.name for zone in conn_ec2.get_all_zones()]
     elb_name = 'TestDeregisterInstancesValidIdResult'
     load_balancer = conn_elb.create_load_balancer(elb_name, zones,
                                                   [(80, 80, 'http')])
     reservations = conn_ec2.run_instances('ami-08389d60')
     load_balancer.register_instances(reservations.instances[0].id)
     deregister_result = boto_elb.deregister_instances(elb_name,
                                                       reservations.instances[0].id,
                                                       **conn_parameters)
     self.assertEqual(True, deregister_result)