コード例 #1
0
    def __init__(self,
                 project,
                 name,
                 data=dict(),
                 docker_machine_bin="docker-machine"):
        self.project = project
        self.name = name
        self.docker_machine_name = '%s.%s' % (self.project.name, self.name)
        self.docker_machine_bin = docker_machine_bin
        super(Mounting, self).__init__(setdefaultdict(data))
        for default_name, default_class in [
            ('environment', Environment),
            ('services', Services),
            ('commands', Commands),
            ('volumes', Volumes),
        ]:
            self[default_name] = default_class(self[default_name])

        if not isinstance(self['driver'], six.string_types):
            self['driver'] = Mounting.Drivers.LOCALHOST
        if not isinstance(self['hosts'], list):
            self['hosts'] = []
        if not isinstance(self['files'], list):
            self['files'] = []
        if not isinstance(self['workdir'], six.string_types):
            self['workdir'] = '/home/docker/'
コード例 #2
0
 def __init__(self, data):
     super(self.__class__, self).__init__(setdefaultdict(data))
     for key, val in self.items(): 
         if isinstance(val, list):
             self[key] = CustomCommand_list(key, val)
         else:
             self[key] = CustomCommand_str(key, val)
コード例 #3
0
 def __init__(self, data):
     super(self.__class__, self).__init__(setdefaultdict(data))
     if self:
         for key, val in self.items():
             self[key] = Machine(key, val)
     else:
         self['localhost'] = Machine('localhost')
コード例 #4
0
 def __init__(self, project, data):
     self.project = project
     super(Mountings, self).__init__(OrderedDict(setdefaultdict(data)))
     if self:
         for key, val in self.items():
             self[key] = Mounting(self.project, key, val)
     else:
         self['localhost'] = Mounting(self.project, 'localhost')
コード例 #5
0
 def __init__(self, name, data, *args):
     self.name = name
     super(self.__class__, self).__init__(setdefaultdict(data))
     for default_name, default_class in [
         ('environment', Environment),
     ]:
         self[default_name] = default_class(self[default_name])
     for arg in args:
         self < arg
コード例 #6
0
 def __init__(self, name, data=dict()):
     self.name = name
     super(Context, self).__init__(setdefaultdict(data))
     for default_name, default_class in [
         ('environment', Environment),
         ('services', Services),
         ('commands', Commands),
     ]:
         self[default_name] = default_class(self[default_name])
コード例 #7
0
    def __init__(self, root):
        self.root = root
        super(Project, self).__init__(self.get_yml_data())
        for default_name, default_class in [
            ('environment', Environment),
            ('commands', Commands),
        ]:
            self[default_name] = default_class(self[default_name])

        if not self['mounting']:
            self['mounting'] = self['targets']
        self['mounting'] = Mountings(self, self['mounting'])

        self.config = setdefaultdict(root.projects, self.name, {})
        self.config['workdir'] = os.path.abspath(self.root.root_path)
コード例 #8
0
    def __init__(self, name, data={}, bin="docker-machine"):
        self.key = name
        self.name = name
        self.bin = bin
        super(Machine, self).__init__(setdefaultdict(data))
        for default_name, default_class in [
            ('environment', Environment),
            ('services', Services),
            ('commands', Commands),
        ]:
            self[default_name] = default_class(self[default_name])

        if not isinstance(self['driver'], six.string_types):
            self['driver'] = Machine.Drivers.LOCALHOST
        if not isinstance(self['hosts'], list):
            self['hosts'] = []
        if not isinstance(self['files'], list):
            self['files'] = []
        if not isinstance(self['workdir'], six.string_types):
            self['workdir'] = '/home/docker/'
コード例 #9
0
 def __init__(self, data, *args):
     super(Services, self).__init__(setdefaultdict(data, ordered=True))
     for key, val in self.items():
         self[key] = Service(key, val)
     for arg in args:
         self < arg
コード例 #10
0
 def __init__(self, data):
     super(Contexts, self).__init__(OrderedDict(setdefaultdict(data)))
     for key, val in self.items():
         self[key] = Context(key, val)
コード例 #11
0
 def __init__(self, name, data, *args):
     self.name = name
     super(self.__class__, self).__init__(setdefaultdict(data))
     for arg in args:
         self < arg