diff options
author | Andrea Giardini <AndreaGiardini@users.noreply.github.com> | 2017-03-03 16:16:16 +0100 |
---|---|---|
committer | Chris Houseknecht <chouseknecht@ansible.com> | 2017-03-03 10:16:16 -0500 |
commit | 04e990281ea1e559c5a0ac6c9735f19774cf47d1 (patch) | |
tree | a04d799641b905f65ac3ffa8f8f5cf0e1e014517 /lib/ansible/modules/cloud | |
parent | 7decd10c768c7bd4ac353b9298310924456c8365 (diff) | |
download | ansible-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.py | 9 |
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 |