Exemplo n.º 1
0
    def get_source_provider(source_kind, source, config):
        # VERBOSE(source_kind)
        if source_kind == "azureblob":
            from cloudmesh.storage.provider.azureblob.Provider import \
                Provider as AzureblobProvider
            source_provider = AzureblobProvider(service=source, config=config)
        elif source_kind == "awss3":
            from cloudmesh.storage.provider.awss3.Provider import \
                Provider as AwsProvider
            source_provider = AwsProvider(service=source, config=config)
        elif source_kind == "oracle":
            from cloudmesh.oracle.storage.Provider import \
                Provider as OracleStorageProvider
            source_provider = OracleStorageProvider(service=source,
                                                    config=config)
        elif source_kind == "google":
            from cloudmesh.google.storage.Provider import \
                Provider as GoogleStorageProvider
            source_provider = GoogleStorageProvider(service=source,
                                                    config=config)
        else:
            return Console.error(f"Provider for {source_kind} is not "
                                 f"yet implemented.")

        return source_provider
    def __init__(self, service=None, config="~/.cloudmesh/.cloudmesh.yaml"):

        super(Provider, self).__init__(service=service, config=config)

        self.config = Config()
        self.kind = config[f"cloudmesh.storage.{service}.cm.kind"]
        self.cloud = service
        self.service = service

        Console.msg("FOUND Kind", self.kind)

        if self.kind in ["awsS3"]:
            from cloudmesh.storage.provider.awss3 import \
                Provider as AwsStorageProvider
            self.p = AwsStorageProvider(service=service, config=config)
        elif self.kind in ["parallelawsS3"]:
            from cloudmesh.storage.provider.parallelawss3 import \
                Provider as ParallelAwsStorageProvider
            self.p = ParallelAwsStorageProvider(service=service, config=config)

        elif self.kind in ["box"]:
            from cloudmesh.storage.provider.box import \
                Provider as BoxStorageProvider
            self.p = BoxStorageProvider(service=service, config=config)
        elif self.kind in ["gcpbucket"]:
            from cloudmesh.google.storage.Provider import \
                Provider as GCPStorageProvider
            self.p = GCPStorageProvider(service=service, config=config)
        elif self.kind in ["gdrive"]:
            from cloudmesh.storage.provider.gdrive import \
                Provider as GdriveStorageProvider
            self.p = GdriveStorageProvider(service=service, config=config)
        elif self.kind in ["azureblob"]:
            from cloudmesh.storage.provider.azureblob import \
                Provider as AzureblobStorageProvider
            self.p = AzureblobStorageProvider(service=service, config=config)
        elif self.kind in ["oracle"]:
            from cloudmesh.oracle.storage.Provider import \
                Provider as OracleStorageProvider
            self.p = OracleStorageProvider(service=service, config=config)
        else:
            raise NotImplementedError
Exemplo n.º 3
0
    def __init__(self, service=None, config="~/.cloudmesh/cloudmesh.yaml"):

        super(Provider, self).__init__(service=service, config=config)
        if self.kind == "local":
            from cloudmesh.storage.provider.local.Provider import \
                Provider as LocalProvider
            self.provider = LocalProvider(service=service, config=config)
        elif self.kind == "box":
            from cloudmesh.storage.provider.box.Provider import \
                Provider as BoxProvider
            self.provider = BoxProvider(service=service, config=config)
        elif self.kind == "gdrive":
            from cloudmesh.storage.provider.gdrive.Provider import \
                Provider as GdriveProvider
            self.provider = GdriveProvider(service=service, config=config)
        elif self.kind == "azureblob":
            from cloudmesh.storage.provider.azureblob.Provider import \
                Provider as AzureblobProvider
            self.provider = AzureblobProvider(service=service, config=config)
        elif self.kind == "awss3":
            from cloudmesh.storage.provider.awss3.Provider import \
                Provider as AwsProvider
            self.provider = AwsProvider(service=service, config=config)
        elif self.kind in ['google']:
            from cloudmesh.google.storage.Provider import \
                Provider as GoogleStorageProvider
            self.provider = GoogleStorageProvider(service=service,
                                                  config=config)
        elif self.kind in ['oracle']:
            from cloudmesh.oracle.storage.Provider import \
                Provider as OracleStorageProvider
            self.provider = \
                OracleStorageProvider(service=service, config=config)
        else:
            raise ValueError(
                f"Storage provider '{self.service}' not yet supported")