Add delete preview-env / auto-deploy a staging

This commit is contained in:
Antoine Legrand 2017-07-20 00:34:08 +02:00
parent 1d0313229e
commit a55693f967
10 changed files with 136 additions and 91 deletions

View file

@ -109,7 +109,7 @@ class BaseProvider(object):
indicating that this container requires a restart.
"""
raise NotImplementedError
def get_volume_path(self, directory, filename):
""" Helper for constructing file paths, which may differ between providers. For example,
kubernetes can't have subfolders in configmaps """

View file

@ -54,20 +54,20 @@ class KubernetesConfigProvider(FileConfigProvider):
self._update_secret_file(filename, contents)
except IOError as ioe:
raise CannotWriteConfigException(str(ioe))
def volume_file_exists(self, filename):
secret = self._lookup_secret()
if not secret or not secret.get('data'):
return False
return filename in secret['data']
def list_volume_directory(self, path):
secret = self._lookup_secret()
if not secret:
return []
paths = []
for filename in secret.get('data', {}):
if filename.startswith(path):
@ -150,4 +150,4 @@ class KubernetesConfigProvider(FileConfigProvider):
return session.send(request.prepare(), verify=False, timeout=2)
def get_volume_path(self, directory, filename):
return "_".join([directory.rstrip('/'), filename])
return "_".join([directory.rstrip('/'), filename])