From fe2c9cdf13b5e532217d558ac16fbb9a945529c2 Mon Sep 17 00:00:00 2001 From: Felix Fontein Date: Wed, 26 Sep 2018 00:31:32 +0200 Subject: [PATCH] [2.6] docker_container: don't parse/interpret options if state is 'absent' (#45768) * Don't parse/interpret options if state is 'absent'. (#45700) * Added changelog. --- .../fragments/45700-docker_container-dont-parse-absent.yml | 2 ++ lib/ansible/modules/cloud/docker/docker_container.py | 5 +++++ 2 files changed, 7 insertions(+) create mode 100644 changelogs/fragments/45700-docker_container-dont-parse-absent.yml diff --git a/changelogs/fragments/45700-docker_container-dont-parse-absent.yml b/changelogs/fragments/45700-docker_container-dont-parse-absent.yml new file mode 100644 index 00000000000..77a0af6c731 --- /dev/null +++ b/changelogs/fragments/45700-docker_container-dont-parse-absent.yml @@ -0,0 +1,2 @@ +bugfixes: +- "Don't parse parameters and options when ``state`` is ``absent`` (https://github.com/ansible/ansible/pull/45700)." diff --git a/lib/ansible/modules/cloud/docker/docker_container.py b/lib/ansible/modules/cloud/docker/docker_container.py index df9f3981180..d24a8faf737 100644 --- a/lib/ansible/modules/cloud/docker/docker_container.py +++ b/lib/ansible/modules/cloud/docker/docker_container.py @@ -730,6 +730,11 @@ class TaskParameters(DockerBaseClass): for key, value in client.module.params.items(): setattr(self, key, value) + # If state is 'absent', parameters do not have to be parsed or interpreted. + # Only the container's name is needed. + if self.state == 'absent': + return + for param_name in REQUIRES_CONVERSION_TO_BYTES: if client.module.params.get(param_name): try: