예제 #1
0
 def test_construct_http_client(self):
     mock_request = mock.Mock()
     mock_request.return_value = requests.Response()
     mock_request.return_value.status_code = 200
     mock_request.return_value.headers = {
         'x-server-management-url': 'blah.com',
         'x-auth-token': 'blah',
     }
     with mock.patch('requests.request', mock_request):
         self.assertIsInstance(other_client._construct_http_client(),
                               other_client.HTTPClient)
         self.assertIsInstance(
             other_client._construct_http_client(session=mock.Mock(),
                                                 auth=mock.Mock()),
             other_client.SessionClient)
예제 #2
0
 def test_construct_http_client(self):
     mock_request = mock.Mock()
     mock_request.return_value = requests.Response()
     mock_request.return_value.status_code = 200
     mock_request.return_value.headers = {
         'x-server-management-url': 'blah.com',
         'x-auth-token': 'blah',
     }
     with mock.patch('requests.request', mock_request):
         self.assertIsInstance(other_client._construct_http_client(),
                               other_client.HTTPClient)
         self.assertIsInstance(
             other_client._construct_http_client(session=mock.Mock(),
                                                 auth=mock.Mock()),
             other_client.SessionClient)
    def __init__(self,
                 username,
                 password,
                 project_id=None,
                 auth_url='',
                 insecure=False,
                 timeout=None,
                 tenant_id=None,
                 proxy_tenant_id=None,
                 proxy_token=None,
                 region_name=None,
                 endpoint_type='publicURL',
                 extensions=None,
                 service_type='database',
                 service_name=None,
                 database_service_name=None,
                 retries=None,
                 http_log_debug=False,
                 cacert=None,
                 bypass_url=None,
                 auth_system='keystone',
                 auth_plugin=None,
                 session=None,
                 auth=None,
                 **kwargs):
        # self.limits = limits.LimitsManager(self)

        # extensions
        self.flavors = flavors.Flavors(self)
        self.volume_types = volume_types.VolumeTypes(self)
        self.users = users.Users(self)
        self.databases = databases.Databases(self)
        self.backups = backups.Backups(self)
        self.clusters = clusters.Clusters(self)
        self.instances = instances.Instances(self)
        self.limits = limits.Limits(self)
        self.root = root.Root(self)
        self.security_group_rules = security_groups.SecurityGroupRules(self)
        self.security_groups = security_groups.SecurityGroups(self)
        self.datastores = datastores.Datastores(self)
        self.datastore_versions = datastores.DatastoreVersions(self)
        self.configurations = configurations.Configurations(self)
        config_parameters = configurations.ConfigurationParameters(self)
        self.configuration_parameters = config_parameters
        self.metadata = metadata.Metadata(self)
        self.modules = modules.Modules(self)

        # self.hosts = Hosts(self)
        # self.quota = Quotas(self)
        # self.storage = StorageInfo(self)
        # self.management = Management(self)
        # self.management = MgmtClusters(self)
        # self.mgmt_flavor = MgmtFlavors(self)
        # self.accounts = Accounts(self)
        # self.diagnostics = DiagnosticsInterrogator(self)
        # self.hwinfo = HwInfoInterrogator(self)
        # self.mgmt_config_params =
        #       management.MgmtConfigurationParameters(self)

        # Add in any extensions...
        if extensions:
            for extension in extensions:
                if extension.manager_class:
                    setattr(self, extension.name,
                            extension.manager_class(self))

        self.client = trove_client._construct_http_client(
            username=username,
            password=password,
            project_id=project_id,
            auth_url=auth_url,
            insecure=insecure,
            timeout=timeout,
            tenant_id=tenant_id,
            proxy_token=proxy_token,
            proxy_tenant_id=proxy_tenant_id,
            region_name=region_name,
            endpoint_type=endpoint_type,
            service_type=service_type,
            service_name=service_name,
            database_service_name=database_service_name,
            retries=retries,
            http_log_debug=http_log_debug,
            cacert=cacert,
            bypass_url=bypass_url,
            auth_system=auth_system,
            auth_plugin=auth_plugin,
            session=session,
            auth=auth,
            **kwargs)
예제 #4
0
    def __init__(self,
                 username=None,
                 password=None,
                 project_id=None,
                 auth_url='',
                 insecure=False,
                 timeout=None,
                 tenant_id=None,
                 proxy_tenant_id=None,
                 proxy_token=None,
                 region_name=None,
                 endpoint_type='publicURL',
                 extensions=None,
                 service_type='database',
                 service_name=None,
                 database_service_name=None,
                 retries=None,
                 http_log_debug=False,
                 cacert=None,
                 bypass_url=None,
                 auth_system='keystone',
                 auth_plugin=None,
                 session=None,
                 auth=None,
                 **kwargs):
        # self.limits = limits.LimitsManager(self)

        # extensions
        self.flavors = flavors.Flavors(self)
        self.volume_types = volume_types.VolumeTypes(self)
        self.users = users.Users(self)
        self.databases = databases.Databases(self)
        self.backups = backups.Backups(self)
        self.clusters = clusters.Clusters(self)
        self.instances = instances.Instances(self)
        self.limits = limits.Limits(self)
        self.root = root.Root(self)
        self.security_group_rules = security_groups.SecurityGroupRules(self)
        self.security_groups = security_groups.SecurityGroups(self)
        self.datastores = datastores.Datastores(self)
        self.datastore_versions = datastores.DatastoreVersions(self)
        self.configurations = configurations.Configurations(self)
        config_parameters = configurations.ConfigurationParameters(self)
        self.configuration_parameters = config_parameters
        self.metadata = metadata.Metadata(self)
        self.modules = modules.Modules(self)
        self.quota = quota.Quotas(self)
        self.mgmt_instances = management.Management(self)

        # self.hosts = Hosts(self)
        # self.storage = StorageInfo(self)
        # self.management = MgmtClusters(self)
        # self.mgmt_flavor = MgmtFlavors(self)
        # self.accounts = Accounts(self)
        # self.diagnostics = DiagnosticsInterrogator(self)
        # self.hwinfo = HwInfoInterrogator(self)
        # self.mgmt_config_params =
        #       management.MgmtConfigurationParameters(self)

        # Add in any extensions...
        if extensions:
            for extension in extensions:
                if extension.manager_class:
                    setattr(self, extension.name,
                            extension.manager_class(self))

        self.client = trove_client._construct_http_client(
            username=username,
            password=password,
            project_id=project_id,
            auth_url=auth_url,
            insecure=insecure,
            timeout=timeout,
            tenant_id=tenant_id,
            proxy_token=proxy_token,
            proxy_tenant_id=proxy_tenant_id,
            region_name=region_name,
            endpoint_type=endpoint_type,
            service_type=service_type,
            service_name=service_name,
            database_service_name=database_service_name,
            retries=retries,
            http_log_debug=http_log_debug,
            cacert=cacert,
            bypass_url=bypass_url,
            auth_system=auth_system,
            auth_plugin=auth_plugin,
            session=session,
            auth=auth,
            **kwargs)