diff --git a/changelogs/fragments/1302-docker-image.yml b/changelogs/fragments/1302-docker-image.yml new file mode 100644 index 00000000..b5aff023 --- /dev/null +++ b/changelogs/fragments/1302-docker-image.yml @@ -0,0 +1,4 @@ +bugfixes: + - "docker_image, docker_image_pull, docker_container - also handle errors if only ``errorDetail`` is set, but not ``error``. + The ``error`` field has been `deprecated in Moby apparently a very long time ago `__ + (https://github.com/ansible-collections/community.docker/pull/1302)." diff --git a/plugins/module_utils/_common_api.py b/plugins/module_utils/_common_api.py index 077ad757..48f0cc99 100644 --- a/plugins/module_utils/_common_api.py +++ b/plugins/module_utils/_common_api.py @@ -564,7 +564,7 @@ class AnsibleDockerClientBase(Client): self._raise_for_status(response) for line in self._stream_helper(response, decode=True): self.log(line, pretty_print=True) - if line.get("error"): + if line.get("error") or line.get("errorDetail"): if line.get("errorDetail"): error_detail = line.get("errorDetail") self.fail( diff --git a/plugins/modules/docker_image.py b/plugins/modules/docker_image.py index 827c6f99..b1797423 100644 --- a/plugins/modules/docker_image.py +++ b/plugins/modules/docker_image.py @@ -995,7 +995,7 @@ class ImageManager(DockerBaseClass): self.log(line, pretty_print=True) self._extract_output_line(line, build_output) - if line.get("error"): + if line.get("error") or line.get("errorDetail"): if line.get("errorDetail"): error_detail = line.get("errorDetail") self.fail(