Ejemplo n.º 1
0
 def _process_container_config(self, container_config):
     port_bindings = undelimit_mapping(container_config.get('port', []))
     volume_bindings = undelimit_mapping(container_config.get('mount', []))
     volume_bindings = {
         self._normalise_path(k): v for k, v in volume_bindings.items()}
     environment = undelimit_mapping(container_config.get('env', []), '=')
     return port_bindings, volume_bindings, environment
Ejemplo n.º 2
0
 def test_undelimit_mapping(self):
     self.assertEqual(
         undelimit_mapping(['a:b', 'c:d']),
         {'a': 'b', 'c': 'd'})
     self.assertEqual(
         undelimit_mapping(['a=b', 'c=d'], delimiter='='),
         {'a': 'b', 'c': 'd'})
Ejemplo n.º 3
0
 def _make_container(self, name, container_config, existing_containers):
     image = self.images[container_config['image']]
     links = undelimit_mapping(container_config.get('dependencies', []))
     dependencies = {
         existing_containers[name]: alias for name, alias in links.items()}
     port_bindings, volume_bindings, environment = (
         self._process_container_config(container_config))
     return Container(
         self.client, name, image, dependencies=dependencies,
         port_bindings=port_bindings, environment=environment,
         net=container_config.get('net'),
         privileged=container_config.get('privileged'),
         volume_bindings=volume_bindings)
Ejemplo n.º 4
0
 def _get_container_config_dependencies(config_data):
     return undelimit_mapping(config_data.get('dependencies', []))