def setup(self):
        disk_format = self.config["disk_format"]
        container_format = self.config["container_format"]
        images_per_tenant = self.config["images_per_tenant"]

        for user, tenant_id in rutils.iterate_per_tenants(
                self.context["users"]):
            glance = osclients.Clients(user["credential"]).glance().images
            current_images = []
            for i in range(images_per_tenant):
                kw = {
                    "name": "image-" + tenant_id[0:8] + "-" + str(i),
                    "container_format": container_format,
                    "disk_format": disk_format,
                    "size": 1000000,
                }
                image = glance.create(**kw)
                current_images.append(image.id)

            self.context["tenants"][tenant_id]["images"] = current_images

            # NOTE(andrey-mp): call ec2 api to initialize it
            args = user['ec2args']
            client = botocoreclient.get_ec2_client(
                args['url'], args['region'], args['access'], args['secret'])
            data = client.describe_images()
    def setup(self):
        image = self.config["image"]
        image_id = None

        for user, tenant_id in rutils.iterate_per_tenants(
                self.context["users"]):
            LOG.info("Booting servers for user tenant %s " %
                     (user["tenant_id"]))

            args = user['ec2args']
            client = botocoreclient.get_ec2_client(args['url'], args['region'],
                                                   args['access'],
                                                   args['secret'])

            if image_id is None:
                data = client.describe_images(Filters=[{
                    'Name': 'name',
                    'Values': [image]
                }, {
                    'Name': 'image-type',
                    'Values': ['machine']
                }])
                image_id = data['Images'][0]['ImageId']

            self.context["tenants"][tenant_id]["servers"] = list()
            self.context["tenants"][tenant_id]["networks"] = list()
            self.run_instances(tenant_id, client, image_id)
            self.wait_for_instances(tenant_id, client)
            self.assign_floating_ips(tenant_id, client)
    def setup(self):
        disk_format = self.config["disk_format"]
        container_format = self.config["container_format"]
        images_per_tenant = self.config["images_per_tenant"]

        for user, tenant_id in rutils.iterate_per_tenants(
                self.context["users"]):
            glance = osclients.Clients(user["credential"]).glance().images
            current_images = []
            for i in range(images_per_tenant):
                kw = {
                    "name": "image-" + tenant_id[0:8] + "-" + str(i),
                    "container_format": container_format,
                    "disk_format": disk_format,
                }
                image = glance.create(**kw)
                glance.upload(image.id, '', image_size=1000000)
                current_images.append(image.id)

            self.context["tenants"][tenant_id]["images"] = current_images

            # NOTE(andrey-mp): call ec2 api to initialize it
            args = user['ec2args']
            client = botocoreclient.get_ec2_client(args['url'], args['region'],
                                                   args['access'],
                                                   args['secret'])
            data = client.describe_images()
 def cleanup(self):
     for user, tenant_id in rutils.iterate_per_tenants(
             self.context["users"]):
         args = user['ec2args']
         client = botocoreclient.get_ec2_client(
             args['url'], args['region'], args['access'], args['secret'])
         self.cleanup_networks(tenant_id, client)
Esempio n. 5
0
 def setUpClass(cls):
     super(EC2TestCase, cls).setUpClass()
     cls.client = botocoreclient.get_ec2_client(
         CONF.aws.ec2_url, CONF.aws.aws_region,
         CONF.aws.aws_access, CONF.aws.aws_secret,
         CONF.aws.ca_bundle)
     cls.s3_client = botocoreclient.get_s3_client(
         CONF.aws.s3_url, CONF.aws.aws_region,
         CONF.aws.aws_access, CONF.aws.aws_secret,
         CONF.aws.ca_bundle)
     TesterStateHolder().ec2_client = cls.client
Esempio n. 6
0
 def setUpClass(cls):
     super(EC2TestCase, cls).setUpClass()
     cls.client = botocoreclient.get_ec2_client(
         CONF.aws.ec2_url, CONF.aws.aws_region,
         CONF.aws.aws_access, CONF.aws.aws_secret,
         CONF.aws.ca_bundle)
     cls.s3_client = botocoreclient.get_s3_client(
         CONF.aws.s3_url, CONF.aws.aws_region,
         CONF.aws.aws_access, CONF.aws.aws_secret,
         CONF.aws.ca_bundle)
     TesterStateHolder().ec2_client = cls.client
Esempio n. 7
0
    def setUpClass(cls):
        super(EC2TestCase, cls).setUpClass()
        if not CONF.service_available.ec2api:
            raise cls.skipException("ec2api is disabled")

        cls.client = botocoreclient.get_ec2_client(
            CONF.aws.ec2_url, CONF.aws.aws_region,
            CONF.aws.aws_access, CONF.aws.aws_secret,
            CONF.aws.ca_bundle)
        cls.s3_client = botocoreclient.get_s3_client(
            CONF.aws.s3_url, CONF.aws.aws_region,
            CONF.aws.aws_access, CONF.aws.aws_secret,
            CONF.aws.ca_bundle)
        TesterStateHolder().ec2_client = cls.client
    def setup(self):
        for user, tenant_id in rutils.iterate_per_tenants(
                self.context["users"]):
            LOG.info("Creating networks for user tenant %s "
                     % (user["tenant_id"]))

            args = user['ec2args']
            client = botocoreclient.get_ec2_client(
                args['url'], args['region'], args['access'], args['secret'])

            self.context["tenants"][tenant_id]["networks"] = list()
            subnets_count = self.config["subnets_per_tenant"]
            nis_count = self.config["nis_per_subnet"]
            for dummy in xrange(0, subnets_count):
                self.prepare_network(tenant_id, client, nis_count)
    def setup(self):
        image = self.config["image"]
        image_id = None

        for user, tenant_id in rutils.iterate_per_tenants(
                self.context["users"]):
            LOG.info("Booting servers for user tenant %s "
                     % (user["tenant_id"]))

            args = user['ec2args']
            client = botocoreclient.get_ec2_client(
                args['url'], args['region'], args['access'], args['secret'])

            if image_id is None:
                data = client.describe_images(
                    Filters=[{'Name': 'name', 'Values': [image]},
                             {'Name': 'image-type', 'Values': ['machine']}])
                image_id = data['Images'][0]['ImageId']

            self.context["tenants"][tenant_id]["servers"] = list()
            self.context["tenants"][tenant_id]["networks"] = list()
            self.run_instances(tenant_id, client, image_id)
            self.wait_for_instances(tenant_id, client)
            self.assign_floating_ips(tenant_id, client)
Esempio n. 10
0
 def get_ec2_client(self):
     args = self.context['user']['ec2args']
     client = botocoreclient.get_ec2_client(
         args['url'], args['region'], args['access'], args['secret'])
     return client
Esempio n. 11
0
 def get_ec2_client(self):
     args = self.context['user']['ec2args']
     client = botocoreclient.get_ec2_client(args['url'], args['region'],
                                            args['access'], args['secret'])
     return client
Esempio n. 12
0
 def _get_client(self, is_nova):
     args = self.context['user']['ec2args']
     url = args['nova_url'] if is_nova else args['url']
     client = botocoreclient.get_ec2_client(url, args['region'],
                                            args['access'], args['secret'])
     return client