Esempio n. 1
0
 def test_run_image_extrapolate_env(self):
     service = FakeService()
     service.env = {'ENV_ONE': 'http://{host}:{port:d}'}
     context.Context['host'] = 'zombo.com'
     context.Context['port'] = 80
     agent = ServiceAgent(service, DEFAULT_OPTIONS, None)
     agent.run_image()
     assert len(self.docker._services_started) == 1
     _, service, _ = self.docker._services_started[0]
     assert service.env['ENV_ONE'] == 'http://zombo.com:80'
Esempio n. 2
0
 def test_start_existing_if_differing_env_value_type_but_not_string(self):
     service = FakeService()
     service.env = {'KEY': 12345}
     agent = ServiceAgent(service, DEFAULT_OPTIONS, None)
     self.docker._existing_containers = [
         Bunch(status='exited',
               network='the-network',
               id='longass-container-id',
               image=Bunch(tags=[service.image]),
               attrs={'Config': {
                   'Env': ['KEY=12345']
               }},
               name="{}-testing-123".format(service.name))
     ]
     agent.run_image()
     assert len(self.docker._services_started) == 0
Esempio n. 3
0
 def test_start_new_container_if_differing_env_value(self):
     service = FakeService()
     service.env = {'KEY': 'some-value'}
     agent = ServiceAgent(service, DEFAULT_OPTIONS, None)
     self.docker._existing_containers = [
         Bunch(status='exited',
               network='the-network',
               id='longass-container-id',
               image=Bunch(tags=[service.image]),
               attrs={'Config': {
                   'Env': ['KEY=other-value']
               }},
               name="{}-miniboss-123".format(service.name))
     ]
     agent.run_image()
     assert len(self.docker._services_started) == 1
     prefix, service, network = self.docker._services_started[0]
     assert prefix == "service1-testing"
     assert service.name == 'service1'
     assert service.image == 'not/used'
     assert network.name == 'the-network'
     assert self.docker._containers_ran == []