Set the API version when checking differences in containers and use

this to determine the location of the Memory value depending on the version used.

In v1.18 and earlier it was ['Config']['Memory'], but in v1.19 it
changed to ['HostConfig']['Memory'].
reviewable/pr18780/r1
Micheal Waltz 9 years ago
parent b0b1566b89
commit 77d1c896fe

@ -942,6 +942,9 @@ class DockerManager(object):
running = self.get_running_containers()
current = self.get_inspect_containers(running)
#Get API version
api_version = self.client.version()['ApiVersion']
image = self.get_inspect_image()
if image is None:
# The image isn't present. Assume that we're about to pull a new
@ -1010,6 +1013,10 @@ class DockerManager(object):
actual_mem = container['HostConfig']['Memory']
#Use v1.18 API and earlier Memory element location
if docker_api_version <= 1.18:
actual_mem = container['Config']['Memory']
if expected_mem and actual_mem != expected_mem:
self.reload_reasons.append('memory ({0} => {1})'.format(actual_mem, expected_mem))
differing.append(container)

Loading…
Cancel
Save