Normalize external_name

Signed-off-by: Joffrey F <joffrey@docker.com>
This commit is contained in:
Joffrey F 2016-01-13 12:07:08 -08:00
commit d601199eb5
5 changed files with 22 additions and 14 deletions

View file

@ -273,6 +273,13 @@ def load_volumes(config_files):
for config_file in config_files:
for name, volume_config in config_file.config.get('volumes', {}).items():
volumes.update({name: volume_config})
external = volume_config.get('external')
if external:
if isinstance(external, dict):
volume_config['external_name'] = external.get('name')
else:
volume_config['external_name'] = name
return volumes

View file

@ -79,7 +79,7 @@ class Project(object):
client=client, project=name, name=vol_name,
driver=data.get('driver'),
driver_opts=data.get('driver_opts'),
external=data.get('external', False)
external_name=data.get('external_name')
)
)
return project

View file

@ -6,18 +6,13 @@ from docker.errors import NotFound
class Volume(object):
def __init__(self, client, project, name, driver=None, driver_opts=None,
external=False):
external_name=None):
self.client = client
self.project = project
self.name = name
self.driver = driver
self.driver_opts = driver_opts
self.external_name = None
if external:
if isinstance(external, dict):
self.external_name = external.get('name')
else:
self.external_name = self.name
self.external_name = external_name
def create(self):
return self.client.create_volume(