Skip to content

Commit

Permalink
Split out compose.config.errors
Browse files Browse the repository at this point in the history
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
  • Loading branch information
aanand committed Jul 30, 2015
1 parent b270a0a commit 8fd7d31
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 30 deletions.
36 changes: 6 additions & 30 deletions compose/config/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,12 @@

from compose.cli.utils import find_candidates_in_parent_dirs

from .errors import (
ConfigurationError,
CircularReference,
ComposeFileNotFound,
)


DOCKER_CONFIG_KEYS = [
'cap_add',
Expand Down Expand Up @@ -535,33 +541,3 @@ def load_yaml(filename):
return yaml.safe_load(fh)
except IOError as e:
raise ConfigurationError(six.text_type(e))


class ConfigurationError(Exception):
def __init__(self, msg):
self.msg = msg

def __str__(self):
return self.msg


class CircularReference(ConfigurationError):
def __init__(self, trail):
self.trail = trail

@property
def msg(self):
lines = [
"{} in {}".format(service_name, filename)
for (filename, service_name) in self.trail
]
return "Circular reference:\n {}".format("\n extends ".join(lines))


class ComposeFileNotFound(ConfigurationError):
def __init__(self, supported_filenames):
super(ComposeFileNotFound, self).__init__("""
Can't find a suitable configuration file in this directory or any parent. Are you in the right directory?
Supported filenames: %s
""" % ", ".join(supported_filenames))
28 changes: 28 additions & 0 deletions compose/config/errors.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
class ConfigurationError(Exception):
def __init__(self, msg):
self.msg = msg

def __str__(self):
return self.msg


class CircularReference(ConfigurationError):
def __init__(self, trail):
self.trail = trail

@property
def msg(self):
lines = [
"{} in {}".format(service_name, filename)
for (filename, service_name) in self.trail
]
return "Circular reference:\n {}".format("\n extends ".join(lines))


class ComposeFileNotFound(ConfigurationError):
def __init__(self, supported_filenames):
super(ComposeFileNotFound, self).__init__("""
Can't find a suitable configuration file in this directory or any parent. Are you in the right directory?
Supported filenames: %s
""" % ", ".join(supported_filenames))

0 comments on commit 8fd7d31

Please sign in to comment.