Пример #1
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)
Пример #2
0
    def __init__(self,
                 username,
                 api_key,
                 tenant=None,
                 auth_url=None,
                 service_type='database',
                 service_name=None,
                 service_url=None,
                 insecure=False,
                 auth_strategy='keystone',
                 region_name=None,
                 client_cls=TroveHTTPClient):

        from troveclient.compat import versions
        from troveclient.v1 import accounts
        from troveclient.v1 import backups
        from troveclient.v1 import clusters
        from troveclient.v1 import configurations
        from troveclient.v1 import databases
        from troveclient.v1 import datastores
        from troveclient.v1 import diagnostics
        from troveclient.v1 import flavors
        from troveclient.v1 import hosts
        from troveclient.v1 import instances
        from troveclient.v1 import limits
        from troveclient.v1 import management
        from troveclient.v1 import metadata
        from troveclient.v1 import modules
        from troveclient.v1 import quota
        from troveclient.v1 import root
        from troveclient.v1 import security_groups
        from troveclient.v1 import storage
        from troveclient.v1 import users

        self.client = client_cls(username,
                                 api_key,
                                 tenant,
                                 auth_url,
                                 service_type=service_type,
                                 service_name=service_name,
                                 service_url=service_url,
                                 insecure=insecure,
                                 auth_strategy=auth_strategy,
                                 region_name=region_name)
        self.versions = versions.Versions(self)
        self.databases = databases.Databases(self)
        self.flavors = flavors.Flavors(self)
        self.instances = instances.Instances(self)
        self.limits = limits.Limits(self)
        self.users = users.Users(self)
        self.root = root.Root(self)
        self.hosts = hosts.Hosts(self)
        self.quota = quota.Quotas(self)
        self.backups = backups.Backups(self)
        self.clusters = clusters.Clusters(self)
        self.security_groups = security_groups.SecurityGroups(self)
        self.security_group_rules = security_groups.SecurityGroupRules(self)
        self.datastores = datastores.Datastores(self)
        self.datastore_versions = datastores.DatastoreVersions(self)
        self.datastore_version_members = (
            datastores.DatastoreVersionMembers(self))
        self.storage = storage.StorageInfo(self)
        self.management = management.Management(self)
        self.mgmt_cluster = management.MgmtClusters(self)
        self.mgmt_flavor = management.MgmtFlavors(self)
        self.accounts = accounts.Accounts(self)
        self.diagnostics = diagnostics.DiagnosticsInterrogator(self)
        self.hwinfo = diagnostics.HwInfoInterrogator(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.mgmt_configs = management.MgmtConfigurationParameters(self)
        self.mgmt_datastore_versions = management.MgmtDatastoreVersions(self)

        class Mgmt(object):
            def __init__(self, dbaas):
                self.instances = dbaas.management
                self.hosts = dbaas.hosts
                self.accounts = dbaas.accounts
                self.storage = dbaas.storage
                self.datastore_version = dbaas.mgmt_datastore_versions

        self.mgmt = Mgmt(self)
Пример #3
0
 def setUp(self):
     super(SecGroupTest, self).setUp()
     self.orig__init = security_groups.SecurityGroup.__init__
     security_groups.SecurityGroup.__init__ = mock.Mock(return_value=None)
     self.security_group = security_groups.SecurityGroup()
     self.security_groups = security_groups.SecurityGroups(1)