docker_swarm_service: Compare image by digest (#51134)

* Compare image by digest

* Add changelog fragment

* Fix version check

* Remove unused import

* Add note about image resolving

* Don’t overwrite image

* Fix documentation error

* Add resolve_image option

* Add version_added

* Remove whitespace

* Remove unused attribute

* Remove unused attribute
This commit is contained in:
Hannes Ljungberg
2019-01-27 17:48:16 +01:00
committed by ansibot
parent 6846152c46
commit 72a44e144a
4 changed files with 100 additions and 7 deletions

View File

@@ -86,10 +86,14 @@
published_port: 60001
target_port: 60001
- name: fake image key as it is not predictable
set_fact:
ansible_docker_service_output: "{{ output.ansible_docker_service|combine({'image': 'busybox'}) }}"
- name: assert service matches expectations
assert:
that:
- output.ansible_docker_service == service_expected_output
- ansible_docker_service_output == service_expected_output
- name: delete sample service
register: output

View File

@@ -1269,6 +1269,43 @@
- reserve_memory_2 is not changed
- reserve_memory_3 is changed
###################################################################
# resolve_image ###################################################
###################################################################
- name: resolve_image (false)
docker_swarm_service:
name: "{{ service_name }}"
image: alpine:3.8
resolve_image: false
register: resolve_image_1
- name: resolve_image (false idempotency)
docker_swarm_service:
name: "{{ service_name }}"
image: alpine:3.8
resolve_image: false
register: resolve_image_2
- name: resolve_image (change)
docker_swarm_service:
name: "{{ service_name }}"
image: alpine:3.8
resolve_image: true
register: resolve_image_3
- name: cleanup
docker_swarm_service:
name: "{{ service_name }}"
state: absent
diff: no
- assert:
that:
- resolve_image_1 is changed
- resolve_image_2 is not changed
- resolve_image_3 is changed
###################################################################
# restart_policy ##################################################
###################################################################