123456789101112131415161718192021222324 |
- from loguru import logger
- from abc import ABC, abstractmethod
- from pathlib import Path
- class Storage(ABC):
- TMP_FOLDER = "tmp/"
- @abstractmethod
- def __init__(self, config): pass
- @abstractmethod
- def get_cdn_url(self, key): pass
- @abstractmethod
- def exists(self, key): pass
- @abstractmethod
- def uploadf(self, file, key, **kwargs): pass
- def upload(self, filename: str, key: str, **kwargs):
- logger.debug(f'[{self.__class__.__name__}] uploading file {filename} with key {key}')
- with open(filename, 'rb') as f:
- self.uploadf(f, key, **kwargs)
|