2021-11-23 06:09:18 +00:00
|
|
|
# vim: ts=4 et:
|
|
|
|
|
|
|
|
class CloudAdapterInterface:
|
|
|
|
|
|
|
|
def __init__(self, cloud, cred_provider=None):
|
|
|
|
self._sdk = None
|
|
|
|
self._sessions = {}
|
|
|
|
self.cloud = cloud
|
|
|
|
self.cred_provider = cred_provider
|
|
|
|
self._default_region = None
|
|
|
|
|
|
|
|
@property
|
|
|
|
def sdk(self):
|
|
|
|
raise NotImplementedError
|
|
|
|
|
2021-11-28 23:04:28 +00:00
|
|
|
@property
|
2021-11-23 06:09:18 +00:00
|
|
|
def regions(self):
|
|
|
|
raise NotImplementedError
|
|
|
|
|
2021-11-28 23:04:28 +00:00
|
|
|
@property
|
2021-11-23 06:09:18 +00:00
|
|
|
def default_region(self):
|
|
|
|
raise NotImplementedError
|
|
|
|
|
|
|
|
def credentials(self, region=None):
|
|
|
|
raise NotImplementedError
|
|
|
|
|
|
|
|
def session(self, region=None):
|
|
|
|
raise NotImplementedError
|
|
|
|
|
2021-11-28 23:04:28 +00:00
|
|
|
def latest_build_image(self, project, image_key):
|
2021-11-23 06:09:18 +00:00
|
|
|
raise NotImplementedError
|
|
|
|
|
|
|
|
def import_image(self, config):
|
|
|
|
raise NotImplementedError
|
|
|
|
|
|
|
|
def remove_image(self, config, image_id):
|
|
|
|
raise NotImplementedError
|
|
|
|
|
|
|
|
def publish_image(self, config):
|
|
|
|
raise NotImplementedError
|