mirror of https://github.com/docker/compose.git
Merge pull request #4419 from shin-/4418-healthcheck-extends
Don't re-parse healthcheck values coming from extended services
This commit is contained in:
commit
951497c0f2
|
@ -716,9 +716,15 @@ def process_healthcheck(service_dict, service_name):
|
|||
hc['test'] = raw['test']
|
||||
|
||||
if 'interval' in raw:
|
||||
if not isinstance(raw['interval'], six.integer_types):
|
||||
hc['interval'] = parse_nanoseconds_int(raw['interval'])
|
||||
else: # Conversion has been done previously
|
||||
hc['interval'] = raw['interval']
|
||||
if 'timeout' in raw:
|
||||
if not isinstance(raw['timeout'], six.integer_types):
|
||||
hc['timeout'] = parse_nanoseconds_int(raw['timeout'])
|
||||
else: # Conversion has been done previously
|
||||
hc['timeout'] = raw['timeout']
|
||||
if 'retries' in raw:
|
||||
hc['retries'] = raw['retries']
|
||||
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
version: '2.1'
|
||||
services:
|
||||
demo:
|
||||
image: foobar:latest
|
||||
healthcheck:
|
||||
test: ["CMD", "/health.sh"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 36
|
|
@ -0,0 +1,6 @@
|
|||
version: '2.1'
|
||||
services:
|
||||
demo:
|
||||
extends:
|
||||
file: healthcheck-1.yml
|
||||
service: demo
|
|
@ -3116,6 +3116,19 @@ class ExtendsTest(unittest.TestCase):
|
|||
'other': {'condition': 'service_started'}
|
||||
}
|
||||
|
||||
def test_extends_with_healthcheck(self):
|
||||
service_dicts = load_from_filename('tests/fixtures/extends/healthcheck-2.yml')
|
||||
assert service_sort(service_dicts) == [{
|
||||
'name': 'demo',
|
||||
'image': 'foobar:latest',
|
||||
'healthcheck': {
|
||||
'test': ['CMD', '/health.sh'],
|
||||
'interval': 10000000000,
|
||||
'timeout': 5000000000,
|
||||
'retries': 36,
|
||||
}
|
||||
}]
|
||||
|
||||
|
||||
@pytest.mark.xfail(IS_WINDOWS_PLATFORM, reason='paths use slash')
|
||||
class ExpandPathTest(unittest.TestCase):
|
||||
|
|
Loading…
Reference in New Issue