cloud-backup/src/cloud/__init__.py
Victor Westerlund 76c006823e
Version 1.0 (#3)
* wip(22w9a): sql param fix

* wip(22w9b): add azure

* wip(22w9c): add single item backup

* wip(22w10a): add logger

* wip(22w11a): add aws support

* Update README.md
2022-03-15 07:06:54 -08:00

35 lines
903 B
Python

import os
import importlib
# This class initializes only the module for the requested service.
# It sits as an intermediate between the initiator script and client library.
class Storage:
def __init__(self):
self._service = None
self.service = os.getenv("SERVICE_NAME")
self.error = None
@property
def service(self):
return self._service
# Create a new storage client for the requested service
@service.setter
def service(self, service: str):
if not service:
service = "gcs"
module = importlib.import_module("src.cloud." + service)
self._service = module.StorageClient()
@staticmethod
def get_args(values):
values.pop(-1)
return values
def upload(self, *argv):
upload = self.service.upload(*argv)
self.error = self.service.error
return upload