当前位置: 首页>>代码示例>>Python>>正文


Python Client.do_request方法代码示例

本文整理汇总了Python中quantumclient.Client.do_request方法的典型用法代码示例。如果您正苦于以下问题:Python Client.do_request方法的具体用法?Python Client.do_request怎么用?Python Client.do_request使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在quantumclient.Client的用法示例。


在下文中一共展示了Client.do_request方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: schedule_host

# 需要导入模块: from quantumclient import Client [as 别名]
# 或者: from quantumclient.Client import do_request [as 别名]
def schedule_host(tenant_id, instance_id, user_id=None):
    """Gets the host name from the Quantum service"""
    project_id = tenant_id

    instance_data_dict = {
        'novatenant': {
            'instance_id': instance_id,
            'instance_desc': {
                'user_id': user_id,
                'project_id': project_id,
            },
        },
    }

    request_url = "/novatenants/" + project_id + "/schedule_host"
    client = Client(HOST, PORT, USE_SSL, format='json', tenant=TENANT_ID,
                    version=VERSION, uri_prefix=URI_PREFIX_CSCO)
    data = client.do_request('PUT', request_url, body=instance_data_dict)

    hostname = data["host_list"]["host_1"]
    if not hostname:
        print("Scheduler was unable to locate a host"
              " for this request. Is the appropriate"
              " service running?")

    print("Quantum service returned host: %s" % hostname)
开发者ID:LuizOz,项目名称:quantum,代码行数:28,代码来源:cli.py

示例2: _schedule

# 需要导入模块: from quantumclient import Client [as 别名]
# 或者: from quantumclient.Client import do_request [as 别名]
    def _schedule(self, context, topic, request_spec, **kwargs):
        """Gets the host name from the Quantum service"""
        LOG.debug("Cisco Quantum Port-aware Scheduler is scheduling...")
        instance_id = request_spec['instance_properties']['uuid']
        user_id = request_spec['instance_properties']['user_id']
        project_id = request_spec['instance_properties']['project_id']

        instance_data_dict = {'novatenant':
                              {'instance_id': instance_id,
                               'instance_desc':
                               {'user_id': user_id,
                                'project_id': project_id}}}

        client = Client(HOST, PORT, USE_SSL, format='json', version=VERSION,
                        uri_prefix=URI_PREFIX_CSCO, tenant=TENANT_ID,
                        logger=LOG)
        request_url = "/novatenants/" + project_id + ACTION
        data = client.do_request('PUT', request_url, body=instance_data_dict)

        hostname = data["host_list"]["host_1"]
        if not hostname:
            raise excp.NoValidHost(_("Scheduler was unable to locate a host"
                                     " for this request. Is the appropriate"
                                     " service running?"))

        LOG.debug(_("Quantum service returned host: %s") % hostname)
        return hostname
开发者ID:jkoelker,项目名称:quantum,代码行数:29,代码来源:quantum_port_aware_scheduler.py

示例3: list_extensions

# 需要导入模块: from quantumclient import Client [as 别名]
# 或者: from quantumclient.Client import do_request [as 别名]
def list_extensions(*args):
    """Invoking the action to get the supported extensions"""
    request_url = "/extensions"
    client = Client(HOST, PORT, USE_SSL, format='json',
                    version=VERSION, uri_prefix=URI_PREFIX_EXT, tenant="dummy")
    data = client.do_request('GET', request_url)
    print("Obtained supported extensions from Quantum: %s" % data)
开发者ID:LuizOz,项目名称:quantum,代码行数:9,代码来源:cli.py

示例4: create_multiport

# 需要导入模块: from quantumclient import Client [as 别名]
# 或者: from quantumclient.Client import do_request [as 别名]
def create_multiport(tenant_id, net_id_list, *args):
    """Creates ports on a single host"""
    net_list = net_id_list.split(",")
    ports_info = {"multiport": {"status": "ACTIVE", "net_id_list": net_list, "ports_desc": {"key": "value"}}}

    request_url = "/multiport"
    client = Client(HOST, PORT, USE_SSL, format="json", tenant=tenant_id, version=VERSION, uri_prefix=URI_PREFIX_CSCO)
    data = client.do_request("POST", request_url, body=ports_info)

    print ("Created ports: %s" % data)
开发者ID:hadib,项目名称:quantum,代码行数:12,代码来源:cli.py

示例5: create_multiport

# 需要导入模块: from quantumclient import Client [as 别名]
# 或者: from quantumclient.Client import do_request [as 别名]
def create_multiport(tenant_id, networks_list, *args):
    """Creates ports on a single host"""
    ports_info = {'multiport':
                  {'status': constants.PORT_STATUS_ACTIVE,
                   'net_id_list': networks_list,
                   'ports_desc': {'key': 'value'}}}
    request_url = "/multiport"
    client = Client(HOST, PORT, USE_SSL, format='json', tenant=tenant_id,
                    action_prefix=servconts.ACTION_PREFIX_CSCO)
    data = client.do_request('POST', request_url, body=ports_info)
    return data
开发者ID:Blackspan,项目名称:quantum,代码行数:13,代码来源:service_insertion.py

示例6: create_multiport

# 需要导入模块: from quantumclient import Client [as 别名]
# 或者: from quantumclient.Client import do_request [as 别名]
def create_multiport(tenant_id, networks_list, *args):
    """Creates ports on a single host"""
    ports_info = {
        "multiport": {
            "status": constants.PORT_STATUS_ACTIVE,
            "net_id_list": networks_list,
            "ports_desc": {"key": "value"},
        }
    }
    request_url = "/multiport"
    client = Client(HOST, PORT, USE_SSL, format="json", tenant=tenant_id, action_prefix=servconts.ACTION_PREFIX_CSCO)
    data = client.do_request("POST", request_url, body=ports_info)
    return data
开发者ID:kumarcv,项目名称:openstack-nf,代码行数:15,代码来源:service_insertion.py

示例7: create_multiport

# 需要导入模块: from quantumclient import Client [as 别名]
# 或者: from quantumclient.Client import do_request [as 别名]
def create_multiport(tenant_id, net_id_list, *args):
    """Creates ports on a single host"""
    net_list = net_id_list.split(",")
    ports_info = {'multiport':
                  {'status': 'ACTIVE',
                   'net_id_list': net_list,
                   'ports_desc': {'key': 'value'}}}

    request_url = "/multiport"
    client = Client(HOST, PORT, USE_SSL, format='json', tenant=tenant_id,
                    version=VERSION, uri_prefix=URI_PREFIX_CSCO)
    data = client.do_request('POST', request_url, body=ports_info)

    print("Created ports: %s" % data)
开发者ID:LuizOz,项目名称:quantum,代码行数:16,代码来源:cli.py

示例8: __init__

# 需要导入模块: from quantumclient import Client [as 别名]
# 或者: from quantumclient.Client import do_request [as 别名]
    def __init__(self):
        # We have to send a dummy tenant name here since the client
        # needs some tenant name, but the tenant name will not be used
        # since the extensions URL does not require it
        LOG.debug("Initializing Cisco Quantum Port-aware Scheduler...")
        client = Client(HOST, PORT, USE_SSL, format='json', version=VERSION,
                        uri_prefix="", tenant="dummy", logger=LOG)
        request_url = "/extensions"
        data = client.do_request('GET', request_url)
        LOG.debug("Obtained supported extensions from Quantum: %s" % data)
        for ext in data['extensions']:
            name = ext['name']
            if name == CSCO_EXT_NAME:
                LOG.debug("Quantum plugin supports required \"%s\" extension"
                          "for the scheduler." % name)
                return

        LOG.error("Quantum plugin does not support required \"%s\" extension"
                  " for the scheduler. Scheduler will quit." % CSCO_EXT_NAME)
        raise excp.ServiceUnavailable()
开发者ID:gsalgado,项目名称:quantum,代码行数:22,代码来源:quantum_port_aware_scheduler.py

示例9: _update_configurations

# 需要导入模块: from quantumclient import Client [as 别名]
# 或者: from quantumclient.Client import do_request [as 别名]
    def _update_configurations(self, instance, network, mapping, action):
        """Gets the device name and the profile name from Quantum"""
        LOG.debug("Cisco Quantum VIF driver performing: %s" % (action))
        instance_id = instance['uuid']
        user_id = instance['user_id']
        project_id = instance['project_id']
        vif_id = mapping['vif_uuid']

        instance_data_dict = \
                {'novatenant': \
                 {'instance_id': instance_id,
                  'instance_desc': \
                  {'user_id': user_id,
                   'project_id': project_id,
                   'vif_id': vif_id}}}

        client = Client(HOST, PORT, USE_SSL, format='json', version=VERSION,
                        uri_prefix=URI_PREFIX_CSCO, tenant=TENANT_ID,
                        logger=LOG)
        request_url = "/novatenants/" + project_id + action
        data = client.do_request('PUT', request_url, body=instance_data_dict)

        if action == ASSOCIATE_ACTION:
            device = data['vif_desc']['device']
            portprofile = data['vif_desc']['portprofile']
            LOG.debug(_("Quantum provided the device: %s") % device)
            LOG.debug(_("Quantum provided the portprofile: %s") % portprofile)
            mac_id = mapping['mac'].replace(':', '')

            result = {
                'id': mac_id,
                'mac_address': mapping['mac'],
                'device_name': device,
                'profile_name': portprofile,
            }

            return result
        else:
            return data
开发者ID:AsylumCorp,项目名称:quantum,代码行数:41,代码来源:vifdirect.py


注:本文中的quantumclient.Client.do_request方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。