mirror of
https://github.com/ansible-collections/community.docker.git
synced 2025-12-16 03:52:05 +00:00
* Do not crash when plugin doesn't exist. * Improve style. Co-authored-by: Brian Scholer <1260690+briantist@users.noreply.github.com> Co-authored-by: Brian Scholer <1260690+briantist@users.noreply.github.com> (cherry picked from commitc7cbec0163) (cherry picked from commit0ffa3cc1d2) Co-authored-by: Felix Fontein <felix@fontein.de>
This commit is contained in:
parent
935b02fad9
commit
8d19ad9f86
2
changelogs/fragments/553-docker_plugin-check-mode.yml
Normal file
2
changelogs/fragments/553-docker_plugin-check-mode.yml
Normal file
@ -0,0 +1,2 @@
|
||||
bugfixes:
|
||||
- "docker_plugin - do not crash if plugin is installed in check mode (https://github.com/ansible-collections/community.docker/issues/552, https://github.com/ansible-collections/community.docker/pull/553)."
|
||||
@ -331,11 +331,18 @@ class DockerPluginManager(object):
|
||||
|
||||
@property
|
||||
def result(self):
|
||||
plugin_data = {}
|
||||
if self.parameters.state != 'absent':
|
||||
try:
|
||||
plugin_data = self.client.inspect_plugin(self.preferred_name)
|
||||
except NotFound:
|
||||
# This can happen in check mode
|
||||
pass
|
||||
result = {
|
||||
'actions': self.actions,
|
||||
'changed': self.changed,
|
||||
'diff': self.diff,
|
||||
'plugin': self.client.inspect_plugin(self.preferred_name) if self.parameters.state != 'absent' else {}
|
||||
'plugin': plugin_data,
|
||||
}
|
||||
return dict((k, v) for k, v in result.items() if v is not None)
|
||||
|
||||
|
||||
@ -10,48 +10,104 @@
|
||||
############ basic test ############
|
||||
####################################
|
||||
|
||||
- name: Create a plugin (check mode)
|
||||
docker_plugin:
|
||||
plugin_name: "{{ plugin_name }}"
|
||||
state: present
|
||||
register: create_1_check
|
||||
check_mode: true
|
||||
|
||||
- name: Create a plugin
|
||||
docker_plugin:
|
||||
plugin_name: "{{ plugin_name }}"
|
||||
state: present
|
||||
register: create_1
|
||||
|
||||
- name: Create a plugin (Idempotent, check mode)
|
||||
docker_plugin:
|
||||
plugin_name: "{{ plugin_name }}"
|
||||
state: present
|
||||
register: create_2_check
|
||||
check_mode: true
|
||||
|
||||
- name: Create a plugin (Idempotent)
|
||||
docker_plugin:
|
||||
plugin_name: "{{ plugin_name }}"
|
||||
state: present
|
||||
register: create_2
|
||||
|
||||
- name: Enable a plugin (check mode)
|
||||
docker_plugin:
|
||||
plugin_name: "{{ plugin_name }}"
|
||||
state: enable
|
||||
register: create_3_check
|
||||
check_mode: true
|
||||
|
||||
- name: Enable a plugin
|
||||
docker_plugin:
|
||||
plugin_name: "{{ plugin_name }}"
|
||||
state: enable
|
||||
register: create_3
|
||||
|
||||
- name: Enable a plugin (Idempotent, check mode)
|
||||
docker_plugin:
|
||||
plugin_name: "{{ plugin_name }}"
|
||||
state: enable
|
||||
register: create_4_check
|
||||
check_mode: true
|
||||
|
||||
- name: Enable a plugin (Idempotent)
|
||||
docker_plugin:
|
||||
plugin_name: "{{ plugin_name }}"
|
||||
state: enable
|
||||
register: create_4
|
||||
|
||||
- name: Disable a plugin (check mode)
|
||||
docker_plugin:
|
||||
plugin_name: "{{ plugin_name }}"
|
||||
state: disable
|
||||
register: absent_1_check
|
||||
check_mode: true
|
||||
|
||||
- name: Disable a plugin
|
||||
docker_plugin:
|
||||
plugin_name: "{{ plugin_name }}"
|
||||
state: disable
|
||||
register: absent_1
|
||||
|
||||
- name: Disable a plugin (Idempotent, check mode)
|
||||
docker_plugin:
|
||||
plugin_name: "{{ plugin_name }}"
|
||||
state: disable
|
||||
register: absent_2_check
|
||||
check_mode: true
|
||||
|
||||
- name: Disable a plugin (Idempotent)
|
||||
docker_plugin:
|
||||
plugin_name: "{{ plugin_name }}"
|
||||
state: disable
|
||||
register: absent_2
|
||||
|
||||
- name: Remove a plugin (check mode)
|
||||
docker_plugin:
|
||||
plugin_name: "{{ plugin_name }}"
|
||||
state: absent
|
||||
register: absent_3_check
|
||||
check_mode: true
|
||||
|
||||
- name: Remove a plugin
|
||||
docker_plugin:
|
||||
plugin_name: "{{ plugin_name }}"
|
||||
state: absent
|
||||
register: absent_3
|
||||
|
||||
- name: Remove a plugin (Idempotent, check mode)
|
||||
docker_plugin:
|
||||
plugin_name: "{{ plugin_name }}"
|
||||
state: absent
|
||||
register: absent_4_check
|
||||
check_mode: true
|
||||
|
||||
- name: Remove a plugin (Idempotent)
|
||||
docker_plugin:
|
||||
plugin_name: "{{ plugin_name }}"
|
||||
@ -60,13 +116,21 @@
|
||||
|
||||
- assert:
|
||||
that:
|
||||
- create_1_check is changed
|
||||
- create_1 is changed
|
||||
- create_2_check is not changed
|
||||
- create_2 is not changed
|
||||
- create_3_check is changed
|
||||
- create_3 is changed
|
||||
- create_4_check is not changed
|
||||
- create_4 is not changed
|
||||
- absent_1_check is changed
|
||||
- absent_1 is changed
|
||||
- absent_2_check is not changed
|
||||
- absent_2 is not changed
|
||||
- absent_3_check is changed
|
||||
- absent_3 is changed
|
||||
- absent_4_check is not changed
|
||||
- absent_4 is not changed
|
||||
|
||||
############ Plugin_Options ############
|
||||
|
||||
Loading…
Reference in New Issue
Block a user