示例#1
0
    def transform(cls, clients, resource_config):
        """Transform the resource config to EC2 id.

        If OpenStack resource id is given, this function gets resource name
        from the id and then gets EC2 resource id from the name.

        :param clients: openstack admin client handles
        :param resource_config: scenario config with `id`, `name` or `regex`

        :returns: EC2 id matching resource
        """
        if "name" not in resource_config and "regex" not in resource_config:
            # NOTE(wtakase): gets resource name from OpenStack id
            glanceclient = clients.glance()
            resource_name = types._name_from_id(
                resource_config=resource_config,
                resources=list(glanceclient.images.list()),
                typename="image")
            resource_config["name"] = resource_name

        # NOTE(wtakase): gets EC2 resource id from name or regex
        ec2client = clients.ec2()
        resource_ec2_id = types._id_from_name(resource_config=resource_config,
                                              resources=list(
                                                  ec2client.get_all_images()),
                                              typename="ec2_image")
        return resource_ec2_id
示例#2
0
    def transform(cls, clients, resource_config):
        """Transform the resource config to EC2 id.

        If OpenStack resource id is given, this function gets resource name
        from the id and then gets EC2 resource id from the name.

        :param clients: openstack admin client handles
        :param resource_config: scenario config with `id`, `name` or `regex`

        :returns: EC2 id matching resource
        """
        if "name" not in resource_config and "regex" not in resource_config:
            # NOTE(wtakase): gets resource name from OpenStack id
            glanceclient = clients.glance()
            resource_name = types._name_from_id(
                resource_config=resource_config,
                resources=list(glanceclient.images.list()),
                typename="image")
            resource_config["name"] = resource_name

        # NOTE(wtakase): gets EC2 resource id from name or regex
        ec2client = clients.ec2()
        resource_ec2_id = types._id_from_name(
            resource_config=resource_config,
            resources=list(ec2client.get_all_images()),
            typename="ec2_image")
        return resource_ec2_id
示例#3
0
 def pre_process(self, resource_spec, config):
     resource_name = resource_spec.get("name")
     if not resource_name:
         # NOTE(wtakase): gets resource name from OpenStack id
         novaclient = self._clients.nova()
         resource_name = types._name_from_id(
             resource_config=resource_spec,
             resources=novaclient.flavors.list(),
             typename="flavor")
     return resource_name
示例#4
0
 def pre_process(self, resource_spec, config):
     resource_name = resource_spec.get("name")
     if not resource_name:
         # NOTE(wtakase): gets resource name from OpenStack id
         novaclient = self._clients.nova()
         resource_name = types._name_from_id(
             resource_config=resource_spec,
             resources=novaclient.flavors.list(),
             typename="flavor")
     return resource_name
示例#5
0
    def pre_process(self, resource_spec, config):
        if "name" not in resource_spec and "regex" not in resource_spec:
            # NOTE(wtakase): gets resource name from OpenStack id
            glanceclient = self._clients.glance()
            resource_name = types._name_from_id(
                resource_config=resource_spec,
                resources=list(glanceclient.images.list()),
                typename="image")
            resource_spec["name"] = resource_name

        # NOTE(wtakase): gets EC2 resource id from name or regex
        ec2client = self._clients.ec2()
        resource_ec2_id = types._id_from_name(resource_config=resource_spec,
                                              resources=list(
                                                  ec2client.get_all_images()),
                                              typename="ec2_image")
        return resource_ec2_id
示例#6
0
    def pre_process(self, resource_spec, config):
        if "name" not in resource_spec and "regex" not in resource_spec:
            # NOTE(wtakase): gets resource name from OpenStack id
            glanceclient = self._clients.glance()
            resource_name = types._name_from_id(
                resource_config=resource_spec,
                resources=list(glanceclient.images.list()),
                typename="image")
            resource_spec["name"] = resource_name

        # NOTE(wtakase): gets EC2 resource id from name or regex
        ec2client = self._clients.ec2()
        resource_ec2_id = types._id_from_name(
            resource_config=resource_spec,
            resources=list(ec2client.get_all_images()),
            typename="ec2_image")
        return resource_ec2_id
示例#7
0
    def transform(cls, clients, resource_config):
        """Transform the resource config to name.

        In the case of using EC2 API, flavor name is used for launching
        servers.

        :param clients: openstack admin client handles
        :param resource_config: scenario config with `id`, `name` or `regex`

        :returns: name matching resource
        """
        resource_name = resource_config.get("name")
        if not resource_name:
            # NOTE(wtakase): gets resource name from OpenStack id
            novaclient = clients.nova()
            resource_name = types._name_from_id(
                resource_config=resource_config,
                resources=novaclient.flavors.list(),
                typename="flavor")
        return resource_name
示例#8
0
    def transform(cls, clients, resource_config):
        """Transform the resource config to name.

        In the case of using EC2 API, flavor name is used for launching
        servers.

        :param clients: openstack admin client handles
        :param resource_config: scenario config with `id`, `name` or `regex`

        :returns: name matching resource
        """
        resource_name = resource_config.get("name")
        if not resource_name:
            # NOTE(wtakase): gets resource name from OpenStack id
            novaclient = clients.nova()
            resource_name = types._name_from_id(
                resource_config=resource_config,
                resources=novaclient.flavors.list(),
                typename="flavor")
        return resource_name