summaryrefslogtreecommitdiff
path: root/lib/ansible/modules/cloud
diff options
context:
space:
mode:
authorAndrea Giardini <AndreaGiardini@users.noreply.github.com>2017-03-03 16:16:16 +0100
committerChris Houseknecht <chouseknecht@ansible.com>2017-03-03 10:16:16 -0500
commit04e990281ea1e559c5a0ac6c9735f19774cf47d1 (patch)
treea04d799641b905f65ac3ffa8f8f5cf0e1e014517 /lib/ansible/modules/cloud
parent7decd10c768c7bd4ac353b9298310924456c8365 (diff)
downloadansible-04e990281ea1e559c5a0ac6c9735f19774cf47d1.tar.gz
Add flag to Docker pull_image to know when the image is already latest (#21508)
* Add flag to Docker pull_image to know when the image is already latest Whenever the flag pull is set to 'yes' the resource is always defined as 'changed'. That is not true in case the image is already at the latest version. Related to ansible/ansible#19549 * Docker pull_image does not change status if the image is latest
Diffstat (limited to 'lib/ansible/modules/cloud')
-rw-r--r--lib/ansible/modules/cloud/docker/docker_container.py9
1 files changed, 6 insertions, 3 deletions
diff --git a/lib/ansible/modules/cloud/docker/docker_container.py b/lib/ansible/modules/cloud/docker/docker_container.py
index 82684890d0..7625deabb4 100644
--- a/lib/ansible/modules/cloud/docker/docker_container.py
+++ b/lib/ansible/modules/cloud/docker/docker_container.py
@@ -1748,9 +1748,12 @@ class ContainerManager(DockerBaseClass):
if not self.check_mode:
if not image or self.parameters.pull:
self.log("Pull the image.")
- image = self.client.pull_image(repository, tag)
- self.results['actions'].append(dict(pulled_image="%s:%s" % (repository, tag)))
- self.results['changed'] = True
+ image, alreadyToLatest = self.client.pull_image(repository, tag)
+ if alreadyToLatest:
+ self.results['changed'] = False
+ else:
+ self.results['changed'] = True
+ self.results['actions'].append(dict(pulled_image="%s:%s" % (repository, tag)))
self.log("image")
self.log(image, pretty_print=True)
return image