1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2024-09-14 20:13:21 +02:00
This commit is contained in:
Felix Fontein 2021-03-08 08:37:10 +01:00 committed by GitHub
parent 1e1a843ff3
commit a22113c3c2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 28 additions and 4 deletions

View file

@ -0,0 +1,2 @@
bugfixes:
- "docker_container - fix healthcheck disabling idempotency issue with strict comparison (https://github.com/ansible-collections/community.docker/issues/85)."

View file

@ -2293,6 +2293,12 @@ class Container(DockerBaseClass):
match = self._compare(getattr(self.parameters, key), value, compare) match = self._compare(getattr(self.parameters, key), value, compare)
if not match: if not match:
if key == 'expected_healthcheck' and config_mapping['disable_healthcheck'] and self.parameters.disable_healthcheck:
# If the healthcheck is disabled (both in parameters and for the current container), and the user
# requested strict comparison for healthcheck, the comparison will fail. That's why we ignore the
# expected_healthcheck comparison in this case.
continue
# no match. record the differences # no match. record the differences
p = getattr(self.parameters, key) p = getattr(self.parameters, key)
c = value c = value

View file

@ -1663,6 +1663,21 @@
register: healthcheck_6 register: healthcheck_6
ignore_errors: yes ignore_errors: yes
- name: healthcheck (disabled, idempotency, strict)
docker_container:
image: "{{ docker_test_image_alpine }}"
command: '/bin/sh -c "sleep 10m"'
name: "{{ cname }}"
state: started
healthcheck:
test:
- NONE
force_kill: yes
comparisons:
'*': strict
register: healthcheck_7
ignore_errors: yes
- name: healthcheck (string in healthcheck test, changed) - name: healthcheck (string in healthcheck test, changed)
docker_container: docker_container:
image: "{{ docker_test_image_alpine }}" image: "{{ docker_test_image_alpine }}"
@ -1672,7 +1687,7 @@
healthcheck: healthcheck:
test: "sleep 1" test: "sleep 1"
force_kill: yes force_kill: yes
register: healthcheck_7 register: healthcheck_8
ignore_errors: yes ignore_errors: yes
- name: healthcheck (string in healthcheck test, idempotency) - name: healthcheck (string in healthcheck test, idempotency)
@ -1684,7 +1699,7 @@
healthcheck: healthcheck:
test: "sleep 1" test: "sleep 1"
force_kill: yes force_kill: yes
register: healthcheck_8 register: healthcheck_9
ignore_errors: yes ignore_errors: yes
- name: cleanup - name: cleanup
@ -1702,8 +1717,9 @@
- healthcheck_4 is not changed - healthcheck_4 is not changed
- healthcheck_5 is changed - healthcheck_5 is changed
- healthcheck_6 is not changed - healthcheck_6 is not changed
- healthcheck_7 is changed - healthcheck_7 is not changed
- healthcheck_8 is not changed - healthcheck_8 is changed
- healthcheck_9 is not changed
when: docker_py_version is version('2.0.0', '>=') when: docker_py_version is version('2.0.0', '>=')
- assert: - assert:
that: that: