diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-18 05:52:22 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-18 05:52:22 +0000 |
commit | 38b7c80217c4e72b1d8988eb1e60bb6e77334114 (patch) | |
tree | 356e9fd3762877d07cde52d21e77070aeff7e789 /ansible_collections/community/docker/tests | |
parent | Adding upstream version 7.7.0+dfsg. (diff) | |
download | ansible-38b7c80217c4e72b1d8988eb1e60bb6e77334114.tar.xz ansible-38b7c80217c4e72b1d8988eb1e60bb6e77334114.zip |
Adding upstream version 9.4.0+dfsg.upstream/9.4.0+dfsg
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'ansible_collections/community/docker/tests')
230 files changed, 15187 insertions, 571 deletions
diff --git a/ansible_collections/community/docker/tests/galaxy-importer.cfg b/ansible_collections/community/docker/tests/galaxy-importer.cfg new file mode 100644 index 000000000..5ab20d06a --- /dev/null +++ b/ansible_collections/community/docker/tests/galaxy-importer.cfg @@ -0,0 +1,8 @@ +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +[galaxy-importer] +# This is only needed to make Zuul's third-party-check happy. +# It is not needed by anything else. +run_ansible_doc=false diff --git a/ansible_collections/community/docker/tests/integration/requirements.yml b/ansible_collections/community/docker/tests/integration/requirements.yml index 7b3e38d98..b4c045f43 100644 --- a/ansible_collections/community/docker/tests/integration/requirements.yml +++ b/ansible_collections/community/docker/tests/integration/requirements.yml @@ -5,6 +5,7 @@ collections: - ansible.posix -- community.internal_test_tools - community.crypto - community.general +- community.internal_test_tools +- community.library_inventory_filtering_v1 diff --git a/ansible_collections/community/docker/tests/integration/targets/connection_docker_api/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/connection_docker_api/meta/main.yml index 5769ff1cb..471ddd412 100644 --- a/ansible_collections/community/docker/tests/integration/targets/connection_docker_api/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/connection_docker_api/meta/main.yml @@ -5,3 +5,4 @@ dependencies: - setup_docker + - setup_docker_python_deps diff --git a/ansible_collections/community/docker/tests/integration/targets/connection_docker_api/setup.yml b/ansible_collections/community/docker/tests/integration/targets/connection_docker_api/setup.yml index e522a51f0..0b0738843 100644 --- a/ansible_collections/community/docker/tests/integration/targets/connection_docker_api/setup.yml +++ b/ansible_collections/community/docker/tests/integration/targets/connection_docker_api/setup.yml @@ -12,3 +12,7 @@ - name: Setup docker import_role: name: setup_docker + + - name: Setup docker Python deps + import_role: + name: setup_docker_python_deps diff --git a/ansible_collections/community/docker/tests/integration/targets/connection_nsenter/runme.sh b/ansible_collections/community/docker/tests/integration/targets/connection_nsenter/runme.sh index eebbb6a39..5a2a84c30 100755 --- a/ansible_collections/community/docker/tests/integration/targets/connection_nsenter/runme.sh +++ b/ansible_collections/community/docker/tests/integration/targets/connection_nsenter/runme.sh @@ -8,6 +8,7 @@ set -euo pipefail [[ -n "${DEBUG:-}" || -n "${ANSIBLE_DEBUG:-}" ]] && set -x readonly IMAGE="quay.io/ansible/ansible-runner:devel" +# shellcheck disable=SC2155 readonly PYTHON="$(command -v python3 python | head -n1)" # Determine collection root @@ -18,6 +19,7 @@ while true; do fi COLLECTION_ROOT="${COLLECTION_ROOT}../" done +# shellcheck disable=SC2155 readonly COLLECTION_ROOT="$(cd ${COLLECTION_ROOT} ; pwd)" # Setup phase diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_compose/aliases b/ansible_collections/community/docker/tests/integration/targets/docker_compose/aliases index 2e1acc0ad..d8f457d53 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_compose/aliases +++ b/ansible_collections/community/docker/tests/integration/targets/docker_compose/aliases @@ -2,5 +2,5 @@ # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later -azp/4 +azp/6 destructive diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_compose/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_compose/meta/main.yml index 7f44c871d..6b4232214 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_compose/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_compose/meta/main.yml @@ -4,5 +4,5 @@ # SPDX-License-Identifier: GPL-3.0-or-later dependencies: - - setup_docker_compose + - setup_docker_compose_v1 - setup_remote_tmp_dir diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_compose/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_compose/tasks/main.yml index d3c7eae51..8ea59f865 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_compose/tasks/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_compose/tasks/main.yml @@ -20,26 +20,28 @@ # Run the tests - block: - - include_tasks: run-test.yml - with_fileglob: - - "tests/*.yml" + - include_tasks: run-test.yml + with_fileglob: + - "tests/*.yml" + loop_control: + loop_var: test_name always: - - name: "Make sure all containers are removed" - docker_container: - name: "{{ item }}" - state: absent - force_kill: true - with_items: "{{ cnames }}" - diff: false - - name: "Make sure all networks are removed" - docker_network: - name: "{{ item }}" - state: absent - force: true - with_items: "{{ dnetworks }}" - when: docker_py_version is version('1.10.0', '>=') - diff: false + - name: "Make sure all containers are removed" + docker_container: + name: "{{ item }}" + state: absent + force_kill: true + with_items: "{{ cnames }}" + diff: false + - name: "Make sure all networks are removed" + docker_network: + name: "{{ item }}" + state: absent + force: true + with_items: "{{ dnetworks }}" + when: docker_py_version is version('1.10.0', '>=') + diff: false when: has_docker_compose and docker_py_version is version('1.8.0', '>=') and docker_api_version is version('1.25', '>=') diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_compose/tasks/run-test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_compose/tasks/run-test.yml index 65853ddd8..72a58962d 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_compose/tasks/run-test.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_compose/tasks/run-test.yml @@ -3,5 +3,5 @@ # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later -- name: "Loading tasks from {{ item }}" - include_tasks: "{{ item }}" +- name: "Loading tasks from {{ test_name }}" + include_tasks: "{{ test_name }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2/aliases b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2/aliases new file mode 100644 index 000000000..2e1acc0ad --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2/aliases @@ -0,0 +1,6 @@ +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +azp/4 +destructive diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2/meta/main.yml new file mode 100644 index 000000000..aefcf50f2 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2/meta/main.yml @@ -0,0 +1,10 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +dependencies: + - setup_docker_cli_compose + # The Python dependencies are needed for the other modules + - setup_docker_python_deps + - setup_remote_tmp_dir diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2/tasks/main.yml new file mode 100644 index 000000000..8813f0e71 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2/tasks/main.yml @@ -0,0 +1,48 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +# Create random name prefix (for services, ...) +- name: Create random container name prefix + set_fact: + name_prefix: "{{ 'ansible-docker-test-%0x' % ((2**32) | random) }}" + cnames: [] + dnetworks: [] + +- debug: + msg: "Using name prefix {{ name_prefix }}" + +# Run the tests +- block: + - command: docker compose --help + + - include_tasks: run-test.yml + with_fileglob: + - "tests/*.yml" + loop_control: + loop_var: test_name + + always: + - name: "Make sure all containers are removed" + docker_container: + name: "{{ item }}" + state: absent + force_kill: true + with_items: "{{ cnames }}" + diff: false + + - name: "Make sure all networks are removed" + docker_network: + name: "{{ item }}" + state: absent + force: true + with_items: "{{ dnetworks }}" + diff: false + + when: docker_has_compose and docker_compose_version is version('2.18.0', '>=') diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2/tasks/run-test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2/tasks/run-test.yml new file mode 100644 index 000000000..72a58962d --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2/tasks/run-test.yml @@ -0,0 +1,7 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: "Loading tasks from {{ test_name }}" + include_tasks: "{{ test_name }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2/tasks/tests/pull.yml b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2/tasks/tests/pull.yml new file mode 100644 index 000000000..47647a9bc --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2/tasks/tests/pull.yml @@ -0,0 +1,211 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- vars: + pname: "{{ name_prefix }}-pull" + cname: "{{ name_prefix }}-cont" + non_existing_image: does-not-exist:latest + project_src: "{{ remote_tmp_dir }}/{{ pname }}" + test_service_non_existing: | + version: '3' + services: + {{ cname }}: + image: {{ non_existing_image }} + test_service_alpine: | + version: '3' + services: + {{ cname }}: + image: {{ docker_test_image_alpine }} + command: /bin/sh -c 'sleep 10m' + stop_grace_period: 1s + + block: + - name: Registering container name + set_fact: + cnames: "{{ cnames + [pname ~ '-' ~ cname ~ '-1'] }}" + dnetworks: "{{ dnetworks + [pname ~ '_default'] }}" + + - name: Create project directory + file: + path: '{{ project_src }}' + state: directory + + - name: Make sure images are not around + docker_image_remove: + name: '{{ item }}' + loop: + - '{{ non_existing_image }}' + - '{{ docker_test_image_alpine }}' + +#################################################################### +## Missing image ################################################### +#################################################################### + + - name: Template project file with non-existing image + copy: + dest: '{{ project_src }}/docker-compose.yml' + content: '{{ test_service_non_existing }}' + + - name: Present with pull=never (check) + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + pull: never + check_mode: true + register: present_1_check + ignore_errors: true + + - name: Present with pull=never + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + pull: never + register: present_1 + ignore_errors: true + + - name: Present without explicit pull (check) + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + check_mode: true + register: present_2_check + ignore_errors: true + + - name: Present without explicit pull + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + register: present_2 + ignore_errors: true + + - assert: + that: + - present_1_check is failed or present_1_check is changed + - present_1_check is changed or present_1_check.msg.startswith('General error:') + - present_1 is failed + - present_1.msg.startswith('General error:') + - present_2_check is failed + - present_2_check.msg.startswith('Error when processing ' ~ cname ~ ':') + - present_2 is failed + - present_2.msg.startswith('Error when processing ' ~ cname ~ ':') + +#################################################################### +## Regular image ################################################### +#################################################################### + + - name: Template project file with Alpine image + copy: + dest: '{{ project_src }}/docker-compose.yml' + content: '{{ test_service_alpine }}' + + - name: Present with pull=missing (check) + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + pull: missing + check_mode: true + register: present_1_check + + - name: Present with pull=missing + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + pull: missing + register: present_1 + + - name: Present with pull=missing (idempotent, check) + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + pull: missing + check_mode: true + register: present_2_check + + - name: Present with pull=missing (idempotent) + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + pull: missing + register: present_2 + + - name: Present with pull=always (check) + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + pull: always + check_mode: true + register: present_3_check + + - name: Present with pull=always + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + pull: always + register: present_3 + + - name: Stopping service + docker_compose_v2: + project_src: '{{ project_src }}' + state: absent + + - name: Present with pull=never (check) + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + pull: missing + check_mode: true + register: present_4_check + + - name: Present with pull=never + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + pull: missing + register: present_4 + + - name: Present with pull=never (idempotent, check) + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + pull: missing + check_mode: true + register: present_5_check + + - name: Present with pull=never (idempotent) + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + pull: missing + register: present_5 + + - name: Cleanup + docker_compose_v2: + project_src: '{{ project_src }}' + state: absent + + - assert: + that: + - present_1_check is changed + - present_1_check.actions | selectattr('status', 'eq', 'Pulling') | first + - present_1_check.actions | selectattr('status', 'eq', 'Creating') | first + - present_1 is changed + - present_1.actions | selectattr('status', 'eq', 'Pulling') | first + - present_1.actions | selectattr('status', 'eq', 'Creating') | first + - present_2_check is not changed + - present_2 is not changed + - present_3_check is changed + - present_3_check.actions | selectattr('status', 'eq', 'Pulling') | first + - present_3_check.actions | selectattr('status', 'eq', 'Creating') | length == 0 + - present_3_check.actions | selectattr('status', 'eq', 'Recreating') | length == 0 + - present_3 is not changed + - present_3.actions | selectattr('status', 'eq', 'Pulling') | first + - present_3.actions | selectattr('status', 'eq', 'Creating') | length == 0 + - present_3.actions | selectattr('status', 'eq', 'Recreating') | length == 0 + - present_4_check is changed + - present_4_check.actions | selectattr('status', 'eq', 'Pulling') | length == 0 + - present_4 is changed + - present_4.actions | selectattr('status', 'eq', 'Pulling') | length == 0 + - present_5_check is not changed + - present_5 is not changed diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2/tasks/tests/start-stop.yml b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2/tasks/tests/start-stop.yml new file mode 100644 index 000000000..22dd5e026 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2/tasks/tests/start-stop.yml @@ -0,0 +1,262 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- vars: + pname: "{{ name_prefix }}-start-stop" + cname: "{{ name_prefix }}-container" + project_src: "{{ remote_tmp_dir }}/{{ pname }}" + test_service: | + version: '3' + services: + {{ cname }}: + image: "{{ docker_test_image_alpine }}" + command: '/bin/sh -c "sleep 10m"' + stop_grace_period: 1s + test_service_mod: | + version: '3' + services: + {{ cname }}: + image: "{{ docker_test_image_alpine }}" + command: '/bin/sh -c "sleep 15m"' + stop_grace_period: 1s + + block: + - name: Registering container name + set_fact: + cnames: "{{ cnames + [pname ~ '-' ~ cname ~ '-1'] }}" + dnetworks: "{{ dnetworks + [pname ~ '_default'] }}" + + - name: Create project directory + file: + path: '{{ project_src }}' + state: directory + +#################################################################### +## Present ######################################################### +#################################################################### + + - name: Template default project file + copy: + dest: '{{ project_src }}/docker-compose.yml' + content: '{{ test_service }}' + + - name: Present (check) + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + check_mode: true + register: present_1_check + + - name: Present + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + register: present_1 + + - name: Present (idempotent check) + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + check_mode: true + register: present_2_check + + - name: Present (idempotent) + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + register: present_2 + + - name: Template modified project file + copy: + dest: '{{ project_src }}/docker-compose.yml' + content: '{{ test_service_mod }}' + + - name: Present (changed check) + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + check_mode: true + register: present_3_check + + - name: Present (changed) + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + register: present_3 + + - assert: + that: + - present_1_check is changed + - present_1 is changed + - present_1.containers | length == 1 + - present_1.containers[0].Name == pname ~ '-' ~ cname ~ '-1' + - present_1.containers[0].Image == docker_test_image_alpine + - present_1.images | length == 1 + - present_1.images[0].ContainerName == pname ~ '-' ~ cname ~ '-1' + - present_1.images[0].Repository == (docker_test_image_alpine | split(':') | first) + - present_1.images[0].Tag == (docker_test_image_alpine | split(':') | last) + - present_2_check is not changed + - present_2 is not changed + - present_3_check is changed + - present_3 is changed + +#################################################################### +## Absent ########################################################## +#################################################################### + + - name: Absent (check) + docker_compose_v2: + project_src: '{{ project_src }}' + state: absent + check_mode: true + register: absent_1_check + + - name: Absent + docker_compose_v2: + project_src: '{{ project_src }}' + state: absent + register: absent_1 + + - name: Absent (idempotent check) + docker_compose_v2: + project_src: '{{ project_src }}' + state: absent + check_mode: true + register: absent_2_check + + - name: Absent (idempotent) + docker_compose_v2: + project_src: '{{ project_src }}' + state: absent + register: absent_2 + + - assert: + that: + - absent_1_check is changed + - absent_1 is changed + - absent_2_check is not changed + - absent_2 is not changed + +#################################################################### +## Stopping and starting ########################################### +#################################################################### + + - name: Template default project file + copy: + dest: '{{ project_src }}/docker-compose.yml' + content: '{{ test_service }}' + + - name: Present stopped (check) + docker_compose_v2: + project_src: '{{ project_src }}' + state: stopped + check_mode: true + register: present_1_check + + - name: Present stopped + docker_compose_v2: + project_src: '{{ project_src }}' + state: stopped + register: present_1 + + - name: Present stopped (idempotent check) + docker_compose_v2: + project_src: '{{ project_src }}' + state: stopped + check_mode: true + register: present_2_check + + - name: Present stopped (idempotent) + docker_compose_v2: + project_src: '{{ project_src }}' + state: stopped + register: present_2 + + - name: Started (check) + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + check_mode: true + register: present_3_check + + - name: Started + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + register: present_3 + + - name: Started (idempotent check) + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + check_mode: true + register: present_4_check + + - name: Started (idempotent) + docker_compose_v2: + project_src: '{{ project_src }}' + state: present + register: present_4 + + - name: Restarted (check) + docker_compose_v2: + project_src: '{{ project_src }}' + state: restarted + check_mode: true + register: present_5_check + + - name: Restarted + docker_compose_v2: + project_src: '{{ project_src }}' + state: restarted + register: present_5 + + - name: Stopped (check) + docker_compose_v2: + project_src: '{{ project_src }}' + state: stopped + check_mode: true + register: present_6_check + + - name: Stopped + docker_compose_v2: + project_src: '{{ project_src }}' + state: stopped + register: present_6 + + - name: Restarted (check) + docker_compose_v2: + project_src: '{{ project_src }}' + state: restarted + check_mode: true + register: present_7_check + + - name: Restarted + docker_compose_v2: + project_src: '{{ project_src }}' + state: restarted + register: present_7 + + - name: Cleanup + docker_compose_v2: + project_src: '{{ project_src }}' + state: absent + + - assert: + that: + - present_1_check is changed + - present_1 is changed + - present_2_check is not changed + - present_2 is not changed + - present_3_check is changed + - present_3 is changed + - present_4_check is not changed + - present_4 is not changed + - present_5_check is changed + - present_5 is changed + - present_6_check is changed + - present_6 is changed + - present_7_check is changed + - present_7 is changed diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2_pull/aliases b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2_pull/aliases new file mode 100644 index 000000000..2e1acc0ad --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2_pull/aliases @@ -0,0 +1,6 @@ +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +azp/4 +destructive diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2_pull/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2_pull/meta/main.yml new file mode 100644 index 000000000..aefcf50f2 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2_pull/meta/main.yml @@ -0,0 +1,10 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +dependencies: + - setup_docker_cli_compose + # The Python dependencies are needed for the other modules + - setup_docker_python_deps + - setup_remote_tmp_dir diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2_pull/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2_pull/tasks/main.yml new file mode 100644 index 000000000..8813f0e71 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2_pull/tasks/main.yml @@ -0,0 +1,48 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +# Create random name prefix (for services, ...) +- name: Create random container name prefix + set_fact: + name_prefix: "{{ 'ansible-docker-test-%0x' % ((2**32) | random) }}" + cnames: [] + dnetworks: [] + +- debug: + msg: "Using name prefix {{ name_prefix }}" + +# Run the tests +- block: + - command: docker compose --help + + - include_tasks: run-test.yml + with_fileglob: + - "tests/*.yml" + loop_control: + loop_var: test_name + + always: + - name: "Make sure all containers are removed" + docker_container: + name: "{{ item }}" + state: absent + force_kill: true + with_items: "{{ cnames }}" + diff: false + + - name: "Make sure all networks are removed" + docker_network: + name: "{{ item }}" + state: absent + force: true + with_items: "{{ dnetworks }}" + diff: false + + when: docker_has_compose and docker_compose_version is version('2.18.0', '>=') diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2_pull/tasks/run-test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2_pull/tasks/run-test.yml new file mode 100644 index 000000000..72a58962d --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2_pull/tasks/run-test.yml @@ -0,0 +1,7 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: "Loading tasks from {{ test_name }}" + include_tasks: "{{ test_name }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2_pull/tasks/tests/pull.yml b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2_pull/tasks/tests/pull.yml new file mode 100644 index 000000000..27f2637b7 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_compose_v2_pull/tasks/tests/pull.yml @@ -0,0 +1,192 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- vars: + pname: "{{ name_prefix }}-pull" + cname: "{{ name_prefix }}-cont" + non_existing_image: does-not-exist:latest + project_src: "{{ remote_tmp_dir }}/{{ pname }}" + test_service_non_existing: | + version: '3' + services: + {{ cname }}: + image: {{ non_existing_image }} + test_service_alpine: | + version: '3' + services: + {{ cname }}: + image: {{ docker_test_image_alpine }} + command: /bin/sh -c 'sleep 10m' + stop_grace_period: 1s + + block: + - name: Registering container name + set_fact: + cnames: "{{ cnames + [pname ~ '-' ~ cname ~ '-1'] }}" + dnetworks: "{{ dnetworks + [pname ~ '_default'] }}" + + - name: Create project directory + file: + path: '{{ project_src }}' + state: directory + + - name: Make sure images are not around + docker_image_remove: + name: '{{ item }}' + loop: + - '{{ non_existing_image }}' + - '{{ docker_test_image_alpine }}' + +#################################################################### +## Missing image ################################################### +#################################################################### + + - name: Template project file with non-existing image + copy: + dest: '{{ project_src }}/docker-compose.yml' + content: '{{ test_service_non_existing }}' + + - name: Pull (check) + docker_compose_v2_pull: + project_src: '{{ project_src }}' + check_mode: true + register: pull_1_check + ignore_errors: true + + - name: Pull + docker_compose_v2_pull: + project_src: '{{ project_src }}' + register: pull_1 + ignore_errors: true + + - assert: + that: + - pull_1_check is failed or pull_1_check is changed + - pull_1_check is changed or pull_1_check.msg.startswith('Error when processing ') + - pull_1 is failed + - pull_1.msg.startswith('Error when processing ') + +#################################################################### +## Regular image ################################################### +#################################################################### + + - name: Template project file with Alpine image + copy: + dest: '{{ project_src }}/docker-compose.yml' + content: '{{ test_service_alpine }}' + + - when: docker_compose_version is version('2.22.0', '>=') + block: + - name: Pull with policy=missing (check) + docker_compose_v2_pull: + project_src: '{{ project_src }}' + policy: missing + check_mode: true + register: pull_1_check + + - name: Pull with policy=missing + docker_compose_v2_pull: + project_src: '{{ project_src }}' + policy: missing + register: pull_1 + + - name: Pull with policy=missing (idempotent, check) + docker_compose_v2_pull: + project_src: '{{ project_src }}' + policy: missing + check_mode: true + register: pull_2_check + + - name: Pull with policy=missing (idempotent) + docker_compose_v2_pull: + project_src: '{{ project_src }}' + policy: missing + register: pull_2 + + - name: Make sure image is not around + docker_image_remove: + name: '{{ docker_test_image_alpine }}' + + - name: Pull with policy=always (check) + docker_compose_v2_pull: + project_src: '{{ project_src }}' + policy: always + check_mode: true + register: pull_3_check + + - name: Pull with policy=always + docker_compose_v2_pull: + project_src: '{{ project_src }}' + policy: always + register: pull_3 + + - name: Pull with policy=always (check, idempotent) + docker_compose_v2_pull: + project_src: '{{ project_src }}' + policy: always + check_mode: true + register: pull_4_check + + - name: Pull with policy=always (idempotent) + docker_compose_v2_pull: + project_src: '{{ project_src }}' + policy: always + register: pull_4 + + - assert: + that: + - pull_1_check is changed + - pull_1_check.actions | selectattr('status', 'eq', 'Pulling') | first + - pull_1 is changed + - pull_1.actions | selectattr('status', 'eq', 'Pulling') | first + - pull_2_check is not changed + - pull_2 is not changed + - pull_3_check is changed + - pull_3_check.actions | selectattr('status', 'eq', 'Pulling') | first + - pull_3 is changed + - pull_3.actions | selectattr('status', 'eq', 'Pulling') | first + - pull_4_check is changed + - pull_4_check.actions | selectattr('status', 'eq', 'Pulling') | first + - pull_4 is not changed + - pull_4.actions | selectattr('status', 'eq', 'Pulling') | first + + - when: docker_compose_version is version('2.22.0', '<') + block: + - name: Pull with policy=always (check) + docker_compose_v2_pull: + project_src: '{{ project_src }}' + policy: always + check_mode: true + register: pull_1_check + + - name: Pull with policy=always + docker_compose_v2_pull: + project_src: '{{ project_src }}' + policy: always + register: pull_1 + + - name: Pull with policy=always (again, check) + docker_compose_v2_pull: + project_src: '{{ project_src }}' + policy: always + check_mode: true + register: pull_2_check + + - name: Pull with policy=always (again) + docker_compose_v2_pull: + project_src: '{{ project_src }}' + policy: always + register: pull_2 + + - assert: + that: + - pull_1_check is changed + - pull_1_check.actions | selectattr('status', 'eq', 'Pulling') | first + - pull_1 is changed + - pull_1.actions | selectattr('status', 'eq', 'Pulling') | first + - pull_2_check is changed + - pull_2_check.actions | selectattr('status', 'eq', 'Pulling') | first + - pull_2 is not changed + - pull_2.actions | selectattr('status', 'eq', 'Pulling') | first diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_config/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_config/meta/main.yml index 2650229d8..9eeb6626b 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_config/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_config/meta/main.yml @@ -5,4 +5,5 @@ dependencies: - setup_docker + - setup_docker_sdk_for_python - setup_remote_tmp_dir diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_container/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_container/meta/main.yml index 5769ff1cb..471ddd412 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_container/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_container/meta/main.yml @@ -5,3 +5,4 @@ dependencies: - setup_docker + - setup_docker_python_deps diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_container/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_container/tasks/main.yml index 9911452f9..2236bc803 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_container/tasks/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_container/tasks/main.yml @@ -34,30 +34,31 @@ # Run the tests - block: - - include_tasks: run-test.yml - with_fileglob: - - "tests/*.yml" + - include_tasks: run-test.yml + with_fileglob: + - "tests/*.yml" + loop_control: + loop_var: test_name always: - - name: "Make sure all containers are removed" - docker_container: - name: "{{ item }}" - state: absent - force_kill: true - with_items: "{{ cnames }}" - diff: false - - name: "Make sure all images are removed" - docker_image: - name: "{{ item }}" - state: absent - with_items: "{{ inames }}" - - name: "Make sure all networks are removed" - docker_network: - name: "{{ item }}" - state: absent - force: true - with_items: "{{ dnetworks }}" - diff: false + - name: "Make sure all containers are removed" + docker_container: + name: "{{ item }}" + state: absent + force_kill: true + with_items: "{{ cnames }}" + diff: false + - name: "Make sure all images are removed" + docker_image_remove: + name: "{{ item }}" + with_items: "{{ inames }}" + - name: "Make sure all networks are removed" + docker_network: + name: "{{ item }}" + state: absent + force: true + with_items: "{{ dnetworks }}" + diff: false when: docker_api_version is version('1.25', '>=') diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_container/tasks/run-test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_container/tasks/run-test.yml index 65853ddd8..72a58962d 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_container/tasks/run-test.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_container/tasks/run-test.yml @@ -3,5 +3,5 @@ # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later -- name: "Loading tasks from {{ item }}" - include_tasks: "{{ item }}" +- name: "Loading tasks from {{ test_name }}" + include_tasks: "{{ test_name }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_container/tasks/tests/comparisons.yml b/ansible_collections/community/docker/tests/integration/targets/docker_container/tasks/tests/comparisons.yml index 54f0d4a62..c37a0c4df 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_container/tasks/tests/comparisons.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_container/tasks/tests/comparisons.yml @@ -384,9 +384,8 @@ - name: Pull {{ docker_test_image_hello_world }} image to make sure wildcard_2 test succeeds # If the image isn't there, it will pull it and return 'changed'. - docker_image: + docker_image_pull: name: "{{ docker_test_image_hello_world }}" - source: pull - name: wildcard docker_container: diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_container/tasks/tests/image-ids.yml b/ansible_collections/community/docker/tests/integration/targets/docker_container/tasks/tests/image-ids.yml index 76270c68a..4dfdb02a6 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_container/tasks/tests/image-ids.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_container/tasks/tests/image-ids.yml @@ -11,9 +11,8 @@ cnames: "{{ cnames + [cname] }}" - name: Pull images - docker_image: + docker_image_pull: name: "{{ image }}" - source: pull loop: - "{{ docker_test_image_hello_world }}" - "{{ docker_test_image_alpine }}" @@ -69,10 +68,9 @@ - name: Untag image # Image will not be deleted since the container still uses it - docker_image: + docker_image_remove: name: "{{ docker_test_image_alpine }}" - force_absent: true - state: absent + force: true - name: Create container with {{ docker_test_image_alpine }} image via name (check mode, will pull, same image) docker_container: diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_container/tasks/tests/options.yml b/ansible_collections/community/docker/tests/integration/targets/docker_container/tasks/tests/options.yml index 1254fb52d..845c7897a 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_container/tasks/tests/options.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_container/tasks/tests/options.yml @@ -2235,9 +2235,8 @@ - name: Pull images to make sure ignore_image test succeeds # If the image isn't there, it will pull it and return 'changed'. - docker_image: + docker_image_pull: name: "{{ item }}" - source: pull loop: - "{{ docker_test_image_hello_world }}" - "{{ docker_test_image_registry_nginx }}" @@ -2456,9 +2455,8 @@ diff: false - name: cleanup image - docker_image: + docker_image_remove: name: "{{ iname_labels }}" - state: absent diff: false - assert: @@ -2486,9 +2484,8 @@ - name: Pull images to make sure ignore_image test succeeds # If the image isn't there, it will pull it and return 'changed'. - docker_image: + docker_image_pull: name: "{{ item }}" - source: pull loop: - "{{ docker_test_image_hello_world }}" - "{{ docker_test_image_registry_nginx }}" @@ -2577,9 +2574,8 @@ inames: "{{ inames + [iname_name_mismatch] }}" - name: Tag hello world image (pulled earlier) with new name - docker_image: + docker_image_tag: name: "{{ docker_test_image_registry_nginx }}" - source: local repository: "{{ iname_name_mismatch }}:latest" - name: image_name_mismatch @@ -2617,9 +2613,8 @@ diff: false - name: Cleanup image - docker_image: + docker_image_remove: name: "{{ iname_name_mismatch }}" - state: absent diff: false - assert: @@ -3015,46 +3010,48 @@ avoid such warnings, please quote the value.' in (log_options_2.warnings | defau ## mac_address ##################################################### #################################################################### -- name: mac_address - docker_container: - image: "{{ docker_test_image_alpine }}" - command: '/bin/sh -c "sleep 10m"' - name: "{{ cname }}" - mac_address: 92:d0:c6:0a:29:33 - state: started - register: mac_address_1 - -- name: mac_address (idempotency) - docker_container: - image: "{{ docker_test_image_alpine }}" - command: '/bin/sh -c "sleep 10m"' - name: "{{ cname }}" - mac_address: 92:d0:c6:0a:29:33 - state: started - register: mac_address_2 - -- name: mac_address (change) - docker_container: - image: "{{ docker_test_image_alpine }}" - command: '/bin/sh -c "sleep 10m"' - name: "{{ cname }}" - mac_address: 92:d0:c6:0a:29:44 - state: started - force_kill: true - register: mac_address_3 - -- name: cleanup - docker_container: - name: "{{ cname }}" - state: absent - force_kill: true - diff: false - -- assert: - that: - - mac_address_1 is changed - - mac_address_2 is not changed - - mac_address_3 is changed +- when: docker_api_version is version('1.44', '<') + block: + - name: mac_address + docker_container: + image: "{{ docker_test_image_alpine }}" + command: '/bin/sh -c "sleep 10m"' + name: "{{ cname }}" + mac_address: 92:d0:c6:0a:29:33 + state: started + register: mac_address_1 + + - name: mac_address (idempotency) + docker_container: + image: "{{ docker_test_image_alpine }}" + command: '/bin/sh -c "sleep 10m"' + name: "{{ cname }}" + mac_address: 92:d0:c6:0a:29:33 + state: started + register: mac_address_2 + + - name: mac_address (change) + docker_container: + image: "{{ docker_test_image_alpine }}" + command: '/bin/sh -c "sleep 10m"' + name: "{{ cname }}" + mac_address: 92:d0:c6:0a:29:44 + state: started + force_kill: true + register: mac_address_3 + + - name: cleanup + docker_container: + name: "{{ cname }}" + state: absent + force_kill: true + diff: false + + - assert: + that: + - mac_address_1 is changed + - mac_address_2 is not changed + - mac_address_3 is changed #################################################################### ## memory ########################################################## @@ -3549,9 +3546,8 @@ avoid such warnings, please quote the value.' in (log_options_2.warnings | defau #################################################################### - name: Remove hello-world image - docker_image: + docker_image_remove: name: hello-world:latest - state: absent - name: platform docker_container: @@ -3564,17 +3560,38 @@ avoid such warnings, please quote the value.' in (log_options_2.warnings | defau register: platform_1 ignore_errors: true -- name: platform (idempotency) +- name: platform (idempotency with full name) + # Docker daemon only returns 'linux' as the platform for the container, + # so this has to be handled correctly by our additional code docker_container: image: hello-world:latest name: "{{ cname }}" state: present - # The container always reports 'linux' as platform instead of 'linux/amd64'... - platform: linux + platform: linux/amd64 debug: true register: platform_2 ignore_errors: true +- name: platform (idempotency with shorter name) + docker_container: + image: hello-world:latest + name: "{{ cname }}" + state: present + platform: linux + debug: true + register: platform_3 + ignore_errors: true + +- name: platform (idempotency with shorter name) + docker_container: + image: hello-world:latest + name: "{{ cname }}" + state: present + platform: amd64 + debug: true + register: platform_4 + ignore_errors: true + - name: platform (changed) docker_container: image: hello-world:latest @@ -3587,7 +3604,19 @@ avoid such warnings, please quote the value.' in (log_options_2.warnings | defau comparisons: # Do not restart because of the changed image ID image: ignore - register: platform_3 + register: platform_5 + ignore_errors: true + +- name: platform (idempotency) + docker_container: + image: hello-world:latest + name: "{{ cname }}" + state: present + pull: true + platform: 386 + force_kill: true + debug: true + register: platform_6 ignore_errors: true - name: cleanup @@ -3601,7 +3630,10 @@ avoid such warnings, please quote the value.' in (log_options_2.warnings | defau that: - platform_1 is changed - platform_2 is not changed and platform_2 is not failed - - platform_3 is changed + - platform_3 is not changed and platform_3 is not failed + - platform_4 is not changed and platform_4 is not failed + - platform_5 is changed + - platform_6 is not changed and platform_6 is not failed when: docker_api_version is version('1.41', '>=') - assert: that: @@ -3611,6 +3643,149 @@ avoid such warnings, please quote the value.' in (log_options_2.warnings | defau when: docker_api_version is version('1.41', '<') #################################################################### +## pull / pull_check_mode_behavior ################################# +#################################################################### + +- name: Remove hello-world image + docker_image_remove: + name: "{{ docker_test_image_hello_world }}" + +- name: pull (pull=never) + docker_container: + image: "{{ docker_test_image_hello_world }}" + name: "{{ cname }}" + state: present + pull: never + debug: true + register: pull_1 + ignore_errors: true + +- name: pull (pull=missing, check mode) + docker_container: + image: "{{ docker_test_image_hello_world }}" + name: "{{ cname }}" + state: present + pull: missing + debug: true + register: pull_2 + check_mode: true + ignore_errors: true + +- name: pull (pull=missing) + docker_container: + image: "{{ docker_test_image_hello_world }}" + name: "{{ cname }}" + state: present + pull: missing + debug: true + register: pull_3 + ignore_errors: true + +- name: pull (pull=missing, idempotent, check mode) + docker_container: + image: "{{ docker_test_image_hello_world }}" + name: "{{ cname }}" + state: present + pull: missing + debug: true + register: pull_4 + check_mode: true + ignore_errors: true + +- name: pull (pull=missing, idempotent) + docker_container: + image: "{{ docker_test_image_hello_world }}" + name: "{{ cname }}" + state: present + pull: missing + debug: true + register: pull_5 + ignore_errors: true + +- name: pull (pull=always, check mode, pull_check_mode_behavior=image_not_present) + docker_container: + image: "{{ docker_test_image_hello_world }}" + name: "{{ cname }}" + state: present + pull: always + pull_check_mode_behavior: image_not_present + debug: true + register: pull_6 + check_mode: true + ignore_errors: true + +- name: pull (pull=always, check mode, pull_check_mode_behavior=always) + docker_container: + image: "{{ docker_test_image_hello_world }}" + name: "{{ cname }}" + state: present + pull: always + pull_check_mode_behavior: always + debug: true + register: pull_7 + check_mode: true + ignore_errors: true + +- name: pull (pull=always) + docker_container: + image: "{{ docker_test_image_hello_world }}" + name: "{{ cname }}" + state: present + pull: always + debug: true + register: pull_8 + ignore_errors: true + +- name: cleanup + docker_container: + name: "{{ cname }}" + state: absent + force_kill: true + diff: false + +- assert: + that: + - pull_1 is failed + - pull_1.msg == ("Cannot find image with name " ~ docker_test_image_hello_world ~ ", and pull=never") + - pull_2 is changed + - pulled_image_action not in pull_2.actions + - pulled_image_action_changed in pull_2.actions + - pulled_image_action_unchanged not in pull_2.actions + - pull_3 is changed + - pulled_image_action not in pull_3.actions + - pulled_image_action_changed in pull_3.actions + - pulled_image_action_unchanged not in pull_3.actions + - pull_4 is not changed + - pulled_image_action not in pull_4.actions + - pulled_image_action_changed not in pull_4.actions + - pulled_image_action_unchanged not in pull_4.actions + - pull_5 is not changed + - pulled_image_action not in pull_5.actions + - pulled_image_action_changed not in pull_5.actions + - pulled_image_action_unchanged not in pull_5.actions + - pull_6 is not changed + - pulled_image_action not in pull_6.actions + - pulled_image_action_changed not in pull_6.actions + - pulled_image_action_unchanged not in pull_6.actions + - pull_7 is changed + - pulled_image_action in pull_7.actions + - pulled_image_action_changed not in pull_7.actions + - pulled_image_action_unchanged not in pull_7.actions + - pull_8 is not changed + - pulled_image_action not in pull_8.actions + - pulled_image_action_changed not in pull_8.actions + - pulled_image_action_unchanged in pull_8.actions + vars: + pulled_image_action: + pulled_image: "{{ docker_test_image_hello_world }}" + pulled_image_action_changed: + pulled_image: "{{ docker_test_image_hello_world }}" + changed: true + pulled_image_action_unchanged: + pulled_image: "{{ docker_test_image_hello_world }}" + changed: false + +#################################################################### ## privileged ###################################################### #################################################################### diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_container_copy_into/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_container_copy_into/meta/main.yml index 2650229d8..f5b897895 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_container_copy_into/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_container_copy_into/meta/main.yml @@ -5,4 +5,5 @@ dependencies: - setup_docker + - setup_docker_python_deps - setup_remote_tmp_dir diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_container_copy_into/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_container_copy_into/tasks/main.yml index 20f9a2681..7eb1b86a3 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_container_copy_into/tasks/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_container_copy_into/tasks/main.yml @@ -26,18 +26,20 @@ # Run the tests - block: - - include_tasks: run-test.yml - with_fileglob: - - "tests/*.yml" + - include_tasks: run-test.yml + with_fileglob: + - "tests/*.yml" + loop_control: + loop_var: test_name always: - - name: "Make sure all containers are removed" - docker_container: - name: "{{ item }}" - state: absent - force_kill: true - with_items: "{{ cnames }}" - diff: false + - name: "Make sure all containers are removed" + docker_container: + name: "{{ item }}" + state: absent + force_kill: true + with_items: "{{ cnames }}" + diff: false when: docker_api_version is version('1.25', '>=') diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_container_copy_into/tasks/run-test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_container_copy_into/tasks/run-test.yml index 65853ddd8..72a58962d 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_container_copy_into/tasks/run-test.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_container_copy_into/tasks/run-test.yml @@ -3,5 +3,5 @@ # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later -- name: "Loading tasks from {{ item }}" - include_tasks: "{{ item }}" +- name: "Loading tasks from {{ test_name }}" + include_tasks: "{{ test_name }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_container_exec/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_container_exec/meta/main.yml index 5769ff1cb..471ddd412 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_container_exec/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_container_exec/meta/main.yml @@ -5,3 +5,4 @@ dependencies: - setup_docker + - setup_docker_python_deps diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_container_info/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_container_info/meta/main.yml index 5769ff1cb..471ddd412 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_container_info/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_container_info/meta/main.yml @@ -5,3 +5,4 @@ dependencies: - setup_docker + - setup_docker_python_deps diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_host_info/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_host_info/meta/main.yml index 5769ff1cb..471ddd412 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_host_info/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_host_info/meta/main.yml @@ -5,3 +5,4 @@ dependencies: - setup_docker + - setup_docker_python_deps diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_host_info/tasks/test_host_info.yml b/ansible_collections/community/docker/tests/integration/targets/docker_host_info/tasks/test_host_info.yml index 0d090db97..b4871d3e3 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_host_info/tasks/test_host_info.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_host_info/tasks/test_host_info.yml @@ -91,7 +91,7 @@ - name: assert container is returned when filters are matched (single label) assert: - that: "{{ output.containers | length }} == 1" + that: "output.containers | length == 1" - name: Get info on Docker host and list containers matching filters (multiple labels) docker_host_info: @@ -104,7 +104,7 @@ - name: assert container is returned when filters are matched (multiple labels) assert: - that: "{{ output.containers | length }} == 1" + that: "output.containers | length == 1" - name: Get info on Docker host and do not list containers which do not match filters docker_host_info: @@ -118,7 +118,7 @@ - name: assert no container is returned when filters are not matched assert: - that: "{{ output.containers | length }} == 0" + that: "output.containers | length == 0" - name: Get info on Docker host and list containers matching filters (single label, not all containers) docker_host_info: @@ -139,8 +139,8 @@ - name: assert one resp. two container is returned assert: that: - - "{{ output.containers | length }} == 1" - - "{{ output_all.containers | length }} == 2" + - "output.containers | length == 1" + - "output_all.containers | length == 2" - name: Get info on Docker host and list containers with verbose output docker_host_info: diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image/meta/main.yml index f7ba9ab1b..511f9e419 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_image/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image/meta/main.yml @@ -5,4 +5,5 @@ dependencies: - setup_docker_registry + - setup_docker_python_deps - setup_remote_tmp_dir diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image/tasks/run-test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image/tasks/run-test.yml index 65853ddd8..72a58962d 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_image/tasks/run-test.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image/tasks/run-test.yml @@ -3,5 +3,5 @@ # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later -- name: "Loading tasks from {{ item }}" - include_tasks: "{{ item }}" +- name: "Loading tasks from {{ test_name }}" + include_tasks: "{{ test_name }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image/tasks/test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image/tasks/test.yml index 50bb84ffc..ea3b47dd3 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_image/tasks/test.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image/tasks/test.yml @@ -31,22 +31,24 @@ - StagedDockerfile - block: - - include_tasks: run-test.yml - with_fileglob: - - "tests/*.yml" + - include_tasks: run-test.yml + with_fileglob: + - "tests/*.yml" + loop_control: + loop_var: test_name always: - - name: "Make sure all images are removed" - docker_image: - name: "{{ item }}" - state: absent - with_items: "{{ inames }}" - - name: "Make sure all containers are removed" - docker_container: - name: "{{ item }}" - state: absent - force_kill: true - with_items: "{{ cnames }}" + - name: "Make sure all images are removed" + docker_image: + name: "{{ item }}" + state: absent + with_items: "{{ inames }}" + - name: "Make sure all containers are removed" + docker_container: + name: "{{ item }}" + state: absent + force_kill: true + with_items: "{{ cnames }}" when: docker_api_version is version('1.25', '>=') diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image/tasks/tests/basic.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image/tasks/tests/basic.yml index 78b4f7738..068e92f4e 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_image/tasks/tests/basic.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image/tasks/tests/basic.yml @@ -117,7 +117,7 @@ register: fail_3 ignore_errors: true -- name: buildargs +- name: Build image ID (must fail) docker_image: source: build name: "{{ present_1.image.Id }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image/tasks/tests/docker_image.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image/tasks/tests/docker_image.yml index a13eb691f..ffd427fd2 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_image/tasks/tests/docker_image.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image/tasks/tests/docker_image.yml @@ -9,8 +9,8 @@ - name: Determining pushed image names set_fact: - hello_world_image_base: "{{ registry_address }}/test/hello-world" - test_image_base: "{{ registry_address }}/test/{{ iname }}" + hello_world_image_base: "{{ registry_address | default('localhost') }}/test/hello-world" + test_image_base: "{{ registry_address | default('localhost') }}/test/{{ iname }}" - name: Registering image name set_fact: @@ -20,179 +20,182 @@ ## interact with test registry ##################################### #################################################################### -- name: Make sure image is not there - docker_image: - name: "{{ hello_world_image_base }}:latest" - state: absent - force_absent: true - -- name: Make sure we have {{ docker_test_image_hello_world }} - docker_image: - name: "{{ docker_test_image_hello_world }}" - source: pull - -- name: Push image to test registry - docker_image: - name: "{{ docker_test_image_hello_world }}" - repository: "{{ hello_world_image_base }}:latest" - push: true - source: local - register: push_1 - -- name: Push image to test registry (idempotent) - docker_image: - name: "{{ docker_test_image_hello_world }}" - repository: "{{ hello_world_image_base }}:latest" - push: true - source: local - register: push_2 - -- name: Push image to test registry (force, still idempotent) - docker_image: - name: "{{ docker_test_image_hello_world }}" - repository: "{{ hello_world_image_base }}:latest" - push: true - source: local - force_tag: true - register: push_3 - -- assert: - that: - - push_1 is changed - - push_2 is not changed - - push_3 is not changed - -- name: Get facts of local image - docker_image_info: - name: "{{ hello_world_image_base }}:latest" - register: facts_1 - -- name: Make sure image is not there - docker_image: - name: "{{ hello_world_image_base }}:latest" - state: absent - force_absent: true - -- name: Get facts of local image (absent) - docker_image_info: - name: "{{ hello_world_image_base }}:latest" - register: facts_2 - -- name: Pull image from test registry - docker_image: - name: "{{ hello_world_image_base }}:latest" - state: present - source: pull - register: pull_1 - -- name: Pull image from test registry (idempotency) - docker_image: - name: "{{ hello_world_image_base }}:latest" - state: present - source: pull - register: pull_2 - -- name: Get facts of local image (present) - docker_image_info: - name: "{{ hello_world_image_base }}:latest" - register: facts_3 - -- assert: - that: - - pull_1 is changed - - pull_2 is not changed - - facts_1.images | length == 1 - - facts_2.images | length == 0 - - facts_3.images | length == 1 - -- name: Pull image from test registry (with digest) - docker_image: - name: "{{ facts_3.images[0].RepoDigests[0] }}" - state: present - source: pull - force_source: true - register: pull_digest - -- name: Make sure that changed is still false - assert: - that: - - pull_digest is not changed - -- name: Tag different image with new tag - docker_image: - name: "{{ docker_test_image_alpine_different }}" - repository: "{{ hello_world_image_base }}:newtag" - push: false - source: pull - -- name: Push different image with new tag - docker_image: - name: "{{ hello_world_image_base }}" - repository: "{{ hello_world_image_base }}" - tag: newtag - push: true - source: local - register: push_1_different - -- name: Push different image with new tag (idempotent) - docker_image: - name: "{{ hello_world_image_base }}" - repository: "{{ hello_world_image_base }}" - tag: newtag - push: true - source: local - register: push_2_different - -- assert: - that: - - push_1_different is changed - - push_2_different is not changed - -- name: Tag same image with new tag - docker_image: - name: "{{ docker_test_image_alpine_different }}" - repository: "{{ hello_world_image_base }}:newtag2" - push: false - source: pull - -- name: Push same image with new tag - docker_image: - name: "{{ hello_world_image_base }}" - repository: "{{ hello_world_image_base }}" - tag: newtag2 - push: true - source: local - register: push_1_same - -- name: Push same image with new tag (idempotent) - docker_image: - name: "{{ hello_world_image_base }}" - repository: "{{ hello_world_image_base }}" - tag: newtag2 - push: true - source: local - register: push_2_same - -- assert: - that: - # NOTE: This should be: - # - push_1_same is changed - # Unfortunately docker does *NOT* report whether the tag already existed or not. - # Here are the logs returned by client.push() for both tasks (which are exactly the same): - # push_1_same: - # {"status": "The push refers to repository [localhost:32796/test/hello-world]"}, - # {"id": "3fc64803ca2d", "progressDetail": {}, "status": "Preparing"}, - # {"id": "3fc64803ca2d", "progressDetail": {}, "status": "Layer already exists"}, - # {"status": "newtag2: digest: sha256:92251458088c638061cda8fd8b403b76d661a4dc6b7ee71b6affcf1872557b2b size: 528"}, - # {"aux": {"Digest": "sha256:92251458088c638061cda8fd8b403b76d661a4dc6b7ee71b6affcf1872557b2b", "Size": 528, "Tag": "newtag2"}, "progressDetail": {}} - # push_2_same: - # {"status": "The push refers to repository [localhost:32796/test/hello-world]"}, - # {"id": "3fc64803ca2d", "progressDetail": {}, "status": "Preparing"}, - # {"id": "3fc64803ca2d", "progressDetail": {}, "status": "Layer already exists"}, - # {"status": "newtag2: digest: sha256:92251458088c638061cda8fd8b403b76d661a4dc6b7ee71b6affcf1872557b2b size: 528"}, - # {"aux": {"Digest": "sha256:92251458088c638061cda8fd8b403b76d661a4dc6b7ee71b6affcf1872557b2b", "Size": 528, "Tag": "newtag2"}, "progressDetail": {}} - - push_1_same is not changed - - push_2_same is not changed +- name: Run registry tests only when registry is present + when: registry_address is defined + block: + - name: Make sure image is not there + docker_image: + name: "{{ hello_world_image_base }}:latest" + state: absent + force_absent: true + + - name: Make sure we have {{ docker_test_image_hello_world }} + docker_image: + name: "{{ docker_test_image_hello_world }}" + source: pull + + - name: Push image to test registry + docker_image: + name: "{{ docker_test_image_hello_world }}" + repository: "{{ hello_world_image_base }}:latest" + push: true + source: local + register: push_1 + + - name: Push image to test registry (idempotent) + docker_image: + name: "{{ docker_test_image_hello_world }}" + repository: "{{ hello_world_image_base }}:latest" + push: true + source: local + register: push_2 + + - name: Push image to test registry (force, still idempotent) + docker_image: + name: "{{ docker_test_image_hello_world }}" + repository: "{{ hello_world_image_base }}:latest" + push: true + source: local + force_tag: true + register: push_3 + + - assert: + that: + - push_1 is changed + - push_2 is not changed + - push_3 is not changed + + - name: Get facts of local image + docker_image_info: + name: "{{ hello_world_image_base }}:latest" + register: facts_1 + + - name: Make sure image is not there + docker_image: + name: "{{ hello_world_image_base }}:latest" + state: absent + force_absent: true + + - name: Get facts of local image (absent) + docker_image_info: + name: "{{ hello_world_image_base }}:latest" + register: facts_2 + + - name: Pull image from test registry + docker_image: + name: "{{ hello_world_image_base }}:latest" + state: present + source: pull + register: pull_1 + + - name: Pull image from test registry (idempotency) + docker_image: + name: "{{ hello_world_image_base }}:latest" + state: present + source: pull + register: pull_2 + + - name: Get facts of local image (present) + docker_image_info: + name: "{{ hello_world_image_base }}:latest" + register: facts_3 + + - assert: + that: + - pull_1 is changed + - pull_2 is not changed + - facts_1.images | length == 1 + - facts_2.images | length == 0 + - facts_3.images | length == 1 + + - name: Pull image from test registry (with digest) + docker_image: + name: "{{ hello_world_image_base }}@{{ facts_3.images[0].RepoDigests[0] | regex_replace('.*@', '') }}" + state: present + source: pull + force_source: true + register: pull_digest + + - name: Make sure that changed is still false + assert: + that: + - pull_digest is not changed + + - name: Tag different image with new tag + docker_image: + name: "{{ docker_test_image_alpine_different }}" + repository: "{{ hello_world_image_base }}:newtag" + push: false + source: pull + + - name: Push different image with new tag + docker_image: + name: "{{ hello_world_image_base }}" + repository: "{{ hello_world_image_base }}" + tag: newtag + push: true + source: local + register: push_1_different + + - name: Push different image with new tag (idempotent) + docker_image: + name: "{{ hello_world_image_base }}" + repository: "{{ hello_world_image_base }}" + tag: newtag + push: true + source: local + register: push_2_different + + - assert: + that: + - push_1_different is changed + - push_2_different is not changed + + - name: Tag same image with new tag + docker_image: + name: "{{ docker_test_image_alpine_different }}" + repository: "{{ hello_world_image_base }}:newtag2" + push: false + source: pull + + - name: Push same image with new tag + docker_image: + name: "{{ hello_world_image_base }}" + repository: "{{ hello_world_image_base }}" + tag: newtag2 + push: true + source: local + register: push_1_same + + - name: Push same image with new tag (idempotent) + docker_image: + name: "{{ hello_world_image_base }}" + repository: "{{ hello_world_image_base }}" + tag: newtag2 + push: true + source: local + register: push_2_same + + - assert: + that: + # NOTE: This should be: + # - push_1_same is changed + # Unfortunately docker does *NOT* report whether the tag already existed or not. + # Here are the logs returned by client.push() for both tasks (which are exactly the same): + # push_1_same: + # {"status": "The push refers to repository [localhost:32796/test/hello-world]"}, + # {"id": "3fc64803ca2d", "progressDetail": {}, "status": "Preparing"}, + # {"id": "3fc64803ca2d", "progressDetail": {}, "status": "Layer already exists"}, + # {"status": "newtag2: digest: sha256:92251458088c638061cda8fd8b403b76d661a4dc6b7ee71b6affcf1872557b2b size: 528"}, + # {"aux": {"Digest": "sha256:92251458088c638061cda8fd8b403b76d661a4dc6b7ee71b6affcf1872557b2b", "Size": 528, "Tag": "newtag2"}, "progressDetail": {}} + # push_2_same: + # {"status": "The push refers to repository [localhost:32796/test/hello-world]"}, + # {"id": "3fc64803ca2d", "progressDetail": {}, "status": "Preparing"}, + # {"id": "3fc64803ca2d", "progressDetail": {}, "status": "Layer already exists"}, + # {"status": "newtag2: digest: sha256:92251458088c638061cda8fd8b403b76d661a4dc6b7ee71b6affcf1872557b2b size: 528"}, + # {"aux": {"Digest": "sha256:92251458088c638061cda8fd8b403b76d661a4dc6b7ee71b6affcf1872557b2b", "Size": 528, "Tag": "newtag2"}, "progressDetail": {}} + - push_1_same is not changed + - push_2_same is not changed #################################################################### ## repository ###################################################### diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image/tasks/tests/options.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image/tasks/tests/options.yml index 0670f1332..b8f6c7002 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_image/tasks/tests/options.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image/tasks/tests/options.yml @@ -76,7 +76,7 @@ build: path: "{{ remote_tmp_dir }}/files" container_limits: - memory: 4000 + memory: 4KB pull: false source: build ignore_errors: true @@ -88,8 +88,8 @@ build: path: "{{ remote_tmp_dir }}/files" container_limits: - memory: 7000000 - memswap: 8000000 + memory: 7MB + memswap: 8MB pull: false source: build register: container_limits_2 @@ -444,3 +444,61 @@ - assert: that: - path_1 is changed + +#################################################################### +## build.shm_size ################################################## +#################################################################### + +- name: Build image with custom shm_size + docker_image: + name: "{{ iname }}" + build: + path: "{{ remote_tmp_dir }}/files" + dockerfile: "MyDockerfile" + pull: false + shm_size: 128MB + source: build + register: path_1 + +- name: cleanup + docker_image: + name: "{{ iname }}" + state: absent + force_absent: true + +- assert: + that: + - path_1 is changed + +#################################################################### +## build.labels #################################################### +#################################################################### + +- name: Build image with labels + docker_image: + name: "{{ iname }}" + build: + path: "{{ remote_tmp_dir }}/files" + dockerfile: "MyDockerfile" + pull: false + labels: + FOO: BAR + this is a label: this is the label's value + source: build + register: labels_1 + +- name: cleanup + docker_image: + name: "{{ iname }}" + state: absent + force_absent: true + +- name: Show image information + debug: + var: labels_1.image + +- assert: + that: + - labels_1 is changed + - labels_1.image.Config.Labels.FOO == 'BAR' + - labels_1.image.Config.Labels["this is a label"] == "this is the label's value" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_build/aliases b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/aliases new file mode 100644 index 000000000..2e1acc0ad --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/aliases @@ -0,0 +1,6 @@ +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +azp/4 +destructive diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_build/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/meta/main.yml new file mode 100644 index 000000000..71ac98d4f --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/meta/main.yml @@ -0,0 +1,10 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +dependencies: + - setup_docker_cli_buildx + # The Python dependencies are needed for the other modules + - setup_docker_python_deps + - setup_remote_tmp_dir diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_build/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/tasks/main.yml new file mode 100644 index 000000000..88b23cfe7 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/tasks/main.yml @@ -0,0 +1,13 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +- when: ansible_facts.distribution ~ ansible_facts.distribution_major_version not in ['CentOS6', 'RedHat6'] + include_tasks: + file: test.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_build/tasks/run-test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/tasks/run-test.yml new file mode 100644 index 000000000..72a58962d --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/tasks/run-test.yml @@ -0,0 +1,7 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: "Loading tasks from {{ test_name }}" + include_tasks: "{{ test_name }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_build/tasks/test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/tasks/test.yml new file mode 100644 index 000000000..af6e75b22 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/tasks/test.yml @@ -0,0 +1,59 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: Create random name prefix + set_fact: + name_prefix: "{{ 'ansible-docker-test-%0x' % ((2**32) | random) }}" +- name: Create image and container list + set_fact: + inames: [] + cnames: [] + +- debug: + msg: "Using name prefix {{ name_prefix }}" + +- name: Create files directory + file: + path: '{{ remote_tmp_dir }}/files' + state: directory + +- name: Template files + template: + src: '{{ item }}' + dest: '{{ remote_tmp_dir }}/files/{{ item }}' + loop: + - ArgsDockerfile + - Dockerfile + - EtcHostsDockerfile + - MyDockerfile + - StagedDockerfile + +- debug: + msg: "Has buildx plugin: {{ docker_has_buildx }}" + +- block: + - include_tasks: run-test.yml + with_fileglob: + - "tests/*.yml" + loop_control: + loop_var: test_name + + always: + - name: "Make sure all images are removed" + docker_image: + name: "{{ item }}" + state: absent + with_items: "{{ inames }}" + - name: "Make sure all containers are removed" + docker_container: + name: "{{ item }}" + state: absent + force_kill: true + with_items: "{{ cnames }}" + + when: docker_api_version is version('1.25', '>=') and docker_cli_version is version('19.03', '>=') and docker_has_buildx + +- fail: msg="Too old docker / docker-py version to run docker_image tests!" + when: not(docker_api_version is version('1.25', '>=') and docker_cli_version is version('19.03', '>=')) and (ansible_distribution != 'CentOS' or ansible_distribution_major_version|int > 6) and docker_has_buildx diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_build/tasks/tests/options.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/tasks/tests/options.yml new file mode 100644 index 000000000..990035788 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/tasks/tests/options.yml @@ -0,0 +1,204 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: Registering image name + set_fact: + iname: "{{ name_prefix ~ '-options' }}" + +- name: Registering image name + set_fact: + inames: "{{ inames + [iname] }}" + +#################################################################### +## args ############################################################ +#################################################################### + +- name: cleanup + docker_image_remove: + name: "{{ iname }}" + +- name: buildargs + docker_image_build: + name: "{{ iname }}" + path: "{{ remote_tmp_dir }}/files" + dockerfile: "ArgsDockerfile" + args: + IMAGE: "{{ docker_test_image_busybox }}" + TEST1: val1 + TEST2: val2 + TEST3: "True" + pull: false + register: buildargs_1 + +- name: buildargs (idempotency) + docker_image_build: + name: "{{ iname }}" + path: "{{ remote_tmp_dir }}/files" + dockerfile: "ArgsDockerfile" + args: + IMAGE: "{{ docker_test_image_busybox }}" + TEST1: val1 + TEST2: val2 + TEST3: "True" + pull: false + register: buildargs_2 + +- name: cleanup + docker_image_remove: + name: "{{ iname }}" + +- assert: + that: + - buildargs_1 is changed + - buildargs_2 is not changed + +#################################################################### +## dockerfile ###################################################### +#################################################################### + +- name: dockerfile + docker_image_build: + name: "{{ iname }}" + path: "{{ remote_tmp_dir }}/files" + dockerfile: "MyDockerfile" + pull: false + register: dockerfile_1 + +- name: cleanup + docker_image_remove: + name: "{{ iname }}" + +- assert: + that: + - dockerfile_1 is changed + - "('FROM ' ~ docker_test_image_alpine) in dockerfile_1.stderr" + - dockerfile_1['image']['Config']['WorkingDir'] == '/newdata' + +#################################################################### +## platform ######################################################## +#################################################################### + +- name: cleanup + docker_image_remove: + name: "{{ iname }}" + +- name: platform + docker_image_build: + name: "{{ iname }}" + path: "{{ remote_tmp_dir }}/files" + platform: linux + pull: false + register: platform_1 + +- name: platform (idempotency) + docker_image_build: + name: "{{ iname }}" + path: "{{ remote_tmp_dir }}/files" + platform: linux + pull: false + register: platform_2 + +- name: cleanup + docker_image_remove: + name: "{{ iname }}" + +- assert: + that: + - platform_1 is changed + - platform_2 is not changed + +#################################################################### +## target ########################################################## +#################################################################### + +- name: Build multi-stage image + docker_image_build: + name: "{{ iname }}" + path: "{{ remote_tmp_dir }}/files" + dockerfile: "StagedDockerfile" + target: first + pull: false + register: dockerfile_2 + +- name: cleanup + docker_image_remove: + name: "{{ iname }}" + +- assert: + that: + - dockerfile_2 is changed + - dockerfile_2.image.Config.WorkingDir == '/first' + +#################################################################### +## etc_hosts ####################################################### +#################################################################### + +- name: Build image with custom etc_hosts + docker_image_build: + name: "{{ iname }}" + path: "{{ remote_tmp_dir }}/files" + dockerfile: "EtcHostsDockerfile" + pull: false + etc_hosts: + some-custom-host: "127.0.0.1" + register: path_1 + +- name: cleanup + docker_image_remove: + name: "{{ iname }}" + +- assert: + that: + - path_1 is changed + +#################################################################### +## shm_size ######################################################## +#################################################################### + +- name: Build image with custom shm_size + docker_image_build: + name: "{{ iname }}" + path: "{{ remote_tmp_dir }}/files" + dockerfile: "MyDockerfile" + pull: false + shm_size: 128MB + register: path_1 + +- name: cleanup + docker_image_remove: + name: "{{ iname }}" + +- assert: + that: + - path_1 is changed + +#################################################################### +## labels ########################################################## +#################################################################### + +- name: Build image with labels + docker_image_build: + name: "{{ iname }}" + path: "{{ remote_tmp_dir }}/files" + dockerfile: "MyDockerfile" + pull: false + labels: + FOO: BAR + this is a label: this is the label's value + register: labels_1 + +- name: cleanup + docker_image_remove: + name: "{{ iname }}" + +- name: Show image information + debug: + var: labels_1.image + +- assert: + that: + - labels_1 is changed + - labels_1.image.Config.Labels.FOO == 'BAR' + - labels_1.image.Config.Labels["this is a label"] == "this is the label's value" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_build/templates/ArgsDockerfile b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/templates/ArgsDockerfile new file mode 100644 index 000000000..dedd88a8f --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/templates/ArgsDockerfile @@ -0,0 +1,13 @@ +# Copyright (c) 2022, Felix Fontein +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +ARG IMAGE +ARG TEST1 +ARG TEST2 +ARG TEST3 + +FROM ${IMAGE} +ENV foo /bar +WORKDIR ${foo} +RUN echo "${TEST1} - ${TEST2} - ${TEST3}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_build/templates/Dockerfile b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/templates/Dockerfile new file mode 100644 index 000000000..286094b9e --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/templates/Dockerfile @@ -0,0 +1,7 @@ +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +FROM {{ docker_test_image_busybox }} +ENV foo /bar +WORKDIR ${foo} diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_build/templates/EtcHostsDockerfile b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/templates/EtcHostsDockerfile new file mode 100644 index 000000000..bc21b966b --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/templates/EtcHostsDockerfile @@ -0,0 +1,7 @@ +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +FROM {{ docker_test_image_busybox }} +# This should fail building if docker cannot resolve some-custom-host +RUN ping -c1 some-custom-host diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_build/templates/MyDockerfile b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/templates/MyDockerfile new file mode 100644 index 000000000..24b1c926f --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/templates/MyDockerfile @@ -0,0 +1,9 @@ +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +FROM {{ docker_test_image_alpine }} +ENV INSTALL_PATH /newdata +RUN mkdir -p $INSTALL_PATH + +WORKDIR $INSTALL_PATH diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_build/templates/StagedDockerfile b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/templates/StagedDockerfile new file mode 100644 index 000000000..da2253425 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_build/templates/StagedDockerfile @@ -0,0 +1,11 @@ +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +FROM {{ docker_test_image_busybox }} AS first +ENV dir /first +WORKDIR ${dir} + +FROM {{ docker_test_image_busybox }} AS second +ENV dir /second +WORKDIR ${dir} diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_export/aliases b/ansible_collections/community/docker/tests/integration/targets/docker_image_export/aliases new file mode 100644 index 000000000..2e1acc0ad --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_export/aliases @@ -0,0 +1,6 @@ +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +azp/4 +destructive diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_export/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_export/meta/main.yml new file mode 100644 index 000000000..f5b897895 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_export/meta/main.yml @@ -0,0 +1,9 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +dependencies: + - setup_docker + - setup_docker_python_deps + - setup_remote_tmp_dir diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_export/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_export/tasks/main.yml new file mode 100644 index 000000000..88b23cfe7 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_export/tasks/main.yml @@ -0,0 +1,13 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +- when: ansible_facts.distribution ~ ansible_facts.distribution_major_version not in ['CentOS6', 'RedHat6'] + include_tasks: + file: test.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_export/tasks/run-test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_export/tasks/run-test.yml new file mode 100644 index 000000000..72a58962d --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_export/tasks/run-test.yml @@ -0,0 +1,7 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: "Loading tasks from {{ test_name }}" + include_tasks: "{{ test_name }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_export/tasks/test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_export/tasks/test.yml new file mode 100644 index 000000000..e6ffe722d --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_export/tasks/test.yml @@ -0,0 +1,39 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: Create random name prefix + set_fact: + name_prefix: "{{ 'ansible-docker-test-%0x' % ((2**32) | random) }}" +- name: Create image and container list + set_fact: + inames: [] + cnames: [] + +- debug: + msg: "Using name prefix {{ name_prefix }}" + +- block: + - include_tasks: run-test.yml + with_fileglob: + - "tests/*.yml" + loop_control: + loop_var: test_name + + always: + - name: "Make sure all images are removed" + docker_image_remove: + name: "{{ item }}" + with_items: "{{ inames }}" + - name: "Make sure all containers are removed" + docker_container: + name: "{{ item }}" + state: absent + force_kill: true + with_items: "{{ cnames }}" + + when: docker_api_version is version('1.25', '>=') + +- fail: msg="Too old docker / docker-py version to run docker_image tests!" + when: not(docker_api_version is version('1.25', '>=')) and (ansible_distribution != 'CentOS' or ansible_distribution_major_version|int > 6) diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_export/tasks/tests/basic.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_export/tasks/tests/basic.yml new file mode 100644 index 000000000..b5f7e6534 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_export/tasks/tests/basic.yml @@ -0,0 +1,69 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- set_fact: + image_names: + - "{{ docker_test_image_hello_world }}" + - "{{ docker_test_image_alpine_different }}" + - "{{ docker_test_image_alpine }}" + +- name: Make sure images are there + docker_image_pull: + name: "{{ item }}" + register: images + loop: "{{ image_names }}" + +- vars: + image_ids: "{{ images.results | map(attribute='image') | map(attribute='Id') | list }}" + all_images: "{{ image_names + (images.results | map(attribute='image') | map(attribute='Id') | list) }}" + image_tasks: + - file: archive-1.tar + images: "{{ image_names }}" + - file: archive-2.tar + images: "{{ image_ids }}" + - file: archive-3.tar + images: + - "{{ image_names[0] }}" + - "{{ image_ids[1] }}" + - file: archive-4.tar + images: + - "{{ image_ids[0] }}" + - "{{ image_names[0] }}" + - file: archive-5.tar + images: + - "{{ image_ids[0] }}" + + block: + - name: Create archives + docker_image_export: + names: "{{ item.images }}" + path: "{{ remote_tmp_dir }}/{{ item.file }}" + loop: "{{ image_tasks }}" + loop_control: + label: "{{ item.file }}" + register: result + + - name: Extract manifest.json files + command: tar xvf "{{ remote_tmp_dir }}/{{ item.file }}" manifest.json --to-stdout + loop: "{{ image_tasks }}" + loop_control: + label: "{{ item.file }}" + register: manifests + + - name: Do basic tests + assert: + that: + - item.0.images | length == item.1 | length + - item.1 | unique | length == item.2 | length + - manifest_json_images == export_image_ids + loop: "{{ image_tasks | zip(export_images, manifests_json) }}" + loop_control: + label: "{{ item.0.file }}" + vars: + filenames: "{{ image_tasks | map(attribute='file') }}" + export_images: "{{ result.results | map(attribute='images') | map('map', attribute='Id') }}" + manifests_json: "{{ manifests.results | map(attribute='stdout') | map('from_json') }}" + manifest_json_images: "{{ item.2 | map(attribute='Config') | map('regex_replace', '.json$', '') | map('regex_replace', '^blobs/sha256/', '') | sort }}" + export_image_ids: "{{ item.1 | map('regex_replace', '^sha256:', '') | unique | sort }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_info/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_info/meta/main.yml index 5769ff1cb..471ddd412 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_image_info/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_info/meta/main.yml @@ -5,3 +5,4 @@ dependencies: - setup_docker + - setup_docker_python_deps diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_info/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_info/tasks/main.yml index 5bd053ac4..289a9cf1f 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_image_info/tasks/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_info/tasks/main.yml @@ -10,9 +10,8 @@ - block: - name: Make sure image is not there - docker_image: + docker_image_remove: name: "{{ docker_test_image_alpine_different }}" - state: absent - name: Inspect a non-available image docker_image_info: @@ -24,10 +23,8 @@ - "result.images|length == 0" - name: Make sure images are there - docker_image: + docker_image_pull: name: "{{ item }}" - source: pull - state: present loop: - "{{ docker_test_image_hello_world }}" - "{{ docker_test_image_alpine }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_load/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_load/meta/main.yml index 2650229d8..f5b897895 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_image_load/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_load/meta/main.yml @@ -5,4 +5,5 @@ dependencies: - setup_docker + - setup_docker_python_deps - setup_remote_tmp_dir diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_load/tasks/run-test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_load/tasks/run-test.yml index 65853ddd8..72a58962d 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_image_load/tasks/run-test.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_load/tasks/run-test.yml @@ -3,5 +3,5 @@ # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later -- name: "Loading tasks from {{ item }}" - include_tasks: "{{ item }}" +- name: "Loading tasks from {{ test_name }}" + include_tasks: "{{ test_name }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_load/tasks/test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_load/tasks/test.yml index a56c95301..e6ffe722d 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_image_load/tasks/test.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_load/tasks/test.yml @@ -15,22 +15,23 @@ msg: "Using name prefix {{ name_prefix }}" - block: - - include_tasks: run-test.yml - with_fileglob: - - "tests/*.yml" + - include_tasks: run-test.yml + with_fileglob: + - "tests/*.yml" + loop_control: + loop_var: test_name always: - - name: "Make sure all images are removed" - docker_image: - name: "{{ item }}" - state: absent - with_items: "{{ inames }}" - - name: "Make sure all containers are removed" - docker_container: - name: "{{ item }}" - state: absent - force_kill: true - with_items: "{{ cnames }}" + - name: "Make sure all images are removed" + docker_image_remove: + name: "{{ item }}" + with_items: "{{ inames }}" + - name: "Make sure all containers are removed" + docker_container: + name: "{{ item }}" + state: absent + force_kill: true + with_items: "{{ cnames }}" when: docker_api_version is version('1.25', '>=') diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_load/tasks/tests/basic.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_load/tasks/tests/basic.yml index 8d9de9948..70dc8df01 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_image_load/tasks/tests/basic.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_load/tasks/tests/basic.yml @@ -10,9 +10,8 @@ - "{{ docker_test_image_alpine }}" - name: Make sure images are there - docker_image: + docker_image_pull: name: "{{ item }}" - source: pull register: images loop: "{{ image_names }}" @@ -22,7 +21,9 @@ all_images: "{{ image_names + (images.results | map(attribute='image') | map(attribute='Id') | list) }}" - name: Create archives - command: docker save {{ item.images | join(' ') }} -o {{ remote_tmp_dir }}/{{ item.file }} + docker_image_export: + names: "{{ item.images }}" + path: "{{ remote_tmp_dir }}/{{ item.file }}" loop: - file: archive-1.tar images: "{{ image_names }}" @@ -43,10 +44,9 @@ # All images by IDs - name: Remove all images - docker_image: + docker_image_remove: name: "{{ item }}" - state: absent - force_absent: true + force: true loop: "{{ all_images }}" ignore_errors: true register: remove_all_images @@ -67,10 +67,9 @@ when: remove_all_images is failed - name: Remove all images (after pruning) - docker_image: + docker_image_remove: name: "{{ item }}" - state: absent - force_absent: true + force: true loop: "{{ all_images }}" when: remove_all_images is failed @@ -107,9 +106,8 @@ # Mixed images and IDs - name: Remove all images - docker_image: + docker_image_remove: name: "{{ item }}" - state: absent loop: "{{ all_images }}" - name: Load all images (mixed images and IDs) @@ -137,9 +135,8 @@ # Same image twice - name: Remove all images - docker_image: + docker_image_remove: name: "{{ item }}" - state: absent loop: "{{ all_images }}" - name: Load all images (same image twice) @@ -162,9 +159,8 @@ # Single image by ID - name: Remove all images - docker_image: + docker_image_remove: name: "{{ item }}" - state: absent loop: "{{ all_images }}" - name: Load all images (single image by ID) @@ -197,9 +193,8 @@ # All images by names - name: Remove all images - docker_image: + docker_image_remove: name: "{{ item }}" - state: absent loop: "{{ all_images }}" - name: Load all images (names) diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/aliases b/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/aliases new file mode 100644 index 000000000..2e1acc0ad --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/aliases @@ -0,0 +1,6 @@ +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +azp/4 +destructive diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/meta/main.yml new file mode 100644 index 000000000..ff316450e --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/meta/main.yml @@ -0,0 +1,8 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +dependencies: + - setup_docker_registry + - setup_docker_python_deps diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/tasks/main.yml new file mode 100644 index 000000000..88b23cfe7 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/tasks/main.yml @@ -0,0 +1,13 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +- when: ansible_facts.distribution ~ ansible_facts.distribution_major_version not in ['CentOS6', 'RedHat6'] + include_tasks: + file: test.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/tasks/run-test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/tasks/run-test.yml new file mode 100644 index 000000000..72a58962d --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/tasks/run-test.yml @@ -0,0 +1,7 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: "Loading tasks from {{ test_name }}" + include_tasks: "{{ test_name }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/tasks/test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/tasks/test.yml new file mode 100644 index 000000000..e6ffe722d --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/tasks/test.yml @@ -0,0 +1,39 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: Create random name prefix + set_fact: + name_prefix: "{{ 'ansible-docker-test-%0x' % ((2**32) | random) }}" +- name: Create image and container list + set_fact: + inames: [] + cnames: [] + +- debug: + msg: "Using name prefix {{ name_prefix }}" + +- block: + - include_tasks: run-test.yml + with_fileglob: + - "tests/*.yml" + loop_control: + loop_var: test_name + + always: + - name: "Make sure all images are removed" + docker_image_remove: + name: "{{ item }}" + with_items: "{{ inames }}" + - name: "Make sure all containers are removed" + docker_container: + name: "{{ item }}" + state: absent + force_kill: true + with_items: "{{ cnames }}" + + when: docker_api_version is version('1.25', '>=') + +- fail: msg="Too old docker / docker-py version to run docker_image tests!" + when: not(docker_api_version is version('1.25', '>=')) and (ansible_distribution != 'CentOS' or ansible_distribution_major_version|int > 6) diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/tasks/tests/basic.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/tasks/tests/basic.yml new file mode 100644 index 000000000..23e1f0929 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/tasks/tests/basic.yml @@ -0,0 +1,196 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: Basic pull tests + vars: + image_name: "{{ docker_test_image_hello_world_platform }}" + block: + - name: Make sure image is not there + docker_image_remove: + name: "{{ image_name }}" + force: true + + - name: Pull image (check mode) + docker_image_pull: + name: "{{ image_name }}" + platform: amd64 + register: present_1_check + check_mode: true + + - debug: + var: present_1_check.diff + + - name: Pull image + docker_image_pull: + name: "{{ image_name }}" + platform: amd64 + register: present_1 + + - debug: + var: present_1.diff + + - name: Pull image (idempotent 1, check mode) + docker_image_pull: + name: "{{ image_name }}" + platform: amd64 + pull: always + register: present_2_check + check_mode: true + + - debug: + var: present_2_check.diff + + - name: Pull image (idempotent 1) + docker_image_pull: + name: "{{ image_name }}" + platform: amd64 + pull: always + register: present_2 + + - debug: + var: present_2.diff + + - name: Pull image (change, check mode) + docker_image_pull: + name: "{{ image_name }}" + platform: arm64 + pull: always + register: present_3_check + check_mode: true + + - debug: + var: present_3_check.diff + + - name: Pull image (change) + docker_image_pull: + name: "{{ image_name }}" + platform: arm64 + pull: always + register: present_3 + + - debug: + var: present_3.diff + + - name: Pull image (idempotent 2, check mode) + docker_image_pull: + name: "{{ image_name }}" + platform: arm64 + pull: not_present + register: present_4_check + check_mode: true + + - debug: + var: present_4_check.diff + + - name: Pull image (idempotent 2) + docker_image_pull: + name: "{{ image_name }}" + platform: arm64 + pull: not_present + register: present_4 + + - debug: + var: present_4.diff + + - name: Pull image (change, check mode) + docker_image_pull: + name: "{{ image_name }}" + platform: amd64 + pull: not_present + register: present_5_check + check_mode: true + + - debug: + var: present_5_check.diff + + - name: Pull image (change) + docker_image_pull: + name: "{{ image_name }}" + platform: amd64 + pull: not_present + register: present_5 + + - debug: + var: present_5.diff + + - assert: + that: + - present_1_check is changed + - present_1_check.actions | length == 1 + - present_1_check.actions[0] == 'Pulled image ' ~ image_name + - present_1_check.diff.before.exists is false + - present_1_check.diff.after.id == 'unknown' + - present_1 is changed + - present_1.actions | length == 1 + - present_1.actions[0] == 'Pulled image ' ~ image_name + - present_1.diff.before.exists is false + - present_1.diff.after.id is string + - present_2_check is changed + - present_2_check.actions | length == 1 + - present_2_check.actions[0] == 'Pulled image ' ~ image_name + - present_2_check.diff.before.id == present_1.diff.after.id + - present_2_check.diff.after.id == 'unknown' + - present_2 is not changed + - present_2.actions | length == 1 + - present_2.actions[0] == 'Pulled image ' ~ image_name + - present_2.diff.before.id == present_1.diff.after.id + - present_2.diff.after.id == present_1.diff.after.id + - present_3_check is changed + - present_3_check.actions | length == 1 + - present_3_check.actions[0] == 'Pulled image ' ~ image_name + - present_3_check.diff.before.id == present_1.diff.after.id + - present_3_check.diff.after.id == 'unknown' + - present_3 is changed + - present_3.actions | length == 1 + - present_3.actions[0] == 'Pulled image ' ~ image_name + - present_3.diff.before.id == present_1.diff.after.id + - present_3.diff.after.id != present_1.diff.after.id + - present_3.diff.after.id is string + - present_4_check is not changed + - present_4_check.actions | length == 0 + - present_4_check.diff.before.id == present_3.diff.after.id + - present_4_check.diff.after.id == present_3.diff.after.id + - present_4 is not changed + - present_4.actions | length == 0 + - present_4.diff.before.id == present_3.diff.after.id + - present_4.diff.after.id == present_3.diff.after.id + - present_5_check is changed + - present_5_check.actions | length == 1 + - present_5_check.actions[0] == 'Pulled image ' ~ image_name + - present_5_check.diff.before.id == present_3.diff.after.id + - present_5_check.diff.after.id == 'unknown' + - present_5 is changed + - present_5.actions | length == 1 + - present_5.actions[0] == 'Pulled image ' ~ image_name + - present_5.diff.before.id == present_3.diff.after.id + - present_5.diff.after.id == present_1.diff.after.id + + always: + - name: cleanup + docker_image_remove: + name: "{{ image_name }}" + force: true + +- name: Pull image ID (must fail) + docker_image_pull: + name: "{{ present_1.image.Id }}" + register: fail_1 + ignore_errors: true + +- name: Pull invalid tag (must fail) + docker_image_pull: + name: "{{ docker_test_image_hello_world }}" + tag: foo/bar + register: fail_2 + ignore_errors: true + +- assert: + that: + - fail_1 is failed + - >- + 'Cannot pull an image by ID' == fail_1.msg + - fail_2 is failed + - >- + '"foo/bar" is not a valid docker tag!' == fail_2.msg diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/tasks/tests/image-ids.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/tasks/tests/image-ids.yml new file mode 100644 index 000000000..dd092a8b8 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/tasks/tests/image-ids.yml @@ -0,0 +1,89 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: Image ID pull tests + block: + - name: Make sure images are not there + docker_image_remove: + name: "{{ item }}" + force: true + loop: + - "sha256:{{ docker_test_image_digest_v1_image_id }}" + - "sha256:{{ docker_test_image_digest_v2_image_id }}" + + - name: Pull image 1 + docker_image_pull: + name: "{{ docker_test_image_digest_base }}@sha256:{{ docker_test_image_digest_v1 }}" + register: present_1 + diff: true + + - name: Pull image 1 (idempotent, do pull) + docker_image_pull: + name: "{{ docker_test_image_digest_base }}@sha256:{{ docker_test_image_digest_v1 }}" + pull: always + register: present_2 + diff: true + + - name: Pull image 1 (idempotent, do not pull) + docker_image_pull: + name: "{{ docker_test_image_digest_base }}@sha256:{{ docker_test_image_digest_v1 }}" + pull: not_present + register: present_3 + diff: true + + - assert: + that: + - present_1 is changed + - present_1.actions | length == 1 + - present_1.actions[0] == 'Pulled image ' ~ docker_test_image_digest_base ~ ':sha256:' ~ docker_test_image_digest_v1 + - present_1.diff.before.exists is false + - present_1.diff.after.id is string + - present_2 is not changed + - present_2.actions | length == 1 + - present_2.actions[0] == 'Pulled image ' ~ docker_test_image_digest_base ~ ':sha256:' ~ docker_test_image_digest_v1 + - present_2.diff.before.id == present_1.diff.after.id + - present_2.diff.after.id == present_1.diff.after.id + - present_3 is not changed + - present_3.actions | length == 0 + - present_3.diff.before.id == present_1.diff.after.id + - present_3.diff.after.id == present_1.diff.after.id + + - name: Pull image 2 (check mode) + docker_image_pull: + name: "{{ docker_test_image_digest_base }}@sha256:{{ docker_test_image_digest_v2 }}" + pull: always + register: present_4 + diff: true + check_mode: true + + - name: Pull image 2 + docker_image_pull: + name: "{{ docker_test_image_digest_base }}@sha256:{{ docker_test_image_digest_v2 }}" + pull: always + register: present_5 + diff: true + + - assert: + that: + - present_4 is changed + - present_4.actions | length == 1 + - present_4.actions[0] == 'Pulled image ' ~ docker_test_image_digest_base ~ ':sha256:' ~ docker_test_image_digest_v2 + - present_4.diff.before.exists is false + - present_4.diff.after.id == 'unknown' + - present_5 is changed + - present_5.actions | length == 1 + - present_5.actions[0] == 'Pulled image ' ~ docker_test_image_digest_base ~ ':sha256:' ~ docker_test_image_digest_v2 + - present_5.diff.before.exists is false + - present_5.diff.after.id != present_1.diff.after.id + - present_5.diff.after.id is string + + always: + - name: cleanup + docker_image_remove: + name: "{{ item }}" + force: true + loop: + - "sha256:{{ docker_test_image_digest_v1_image_id }}" + - "sha256:{{ docker_test_image_digest_v2_image_id }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/tasks/tests/registry.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/tasks/tests/registry.yml new file mode 100644 index 000000000..2edc3b62d --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_pull/tasks/tests/registry.yml @@ -0,0 +1,126 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: Run registry tests only when registry is present + when: registry_address is defined + block: + - name: Registering image name + set_fact: + iname: "{{ name_prefix ~ '-options' }}" + + - name: Determining pushed image names + set_fact: + hello_world_image_base: "{{ registry_address }}/test/hello-world" + + - name: Registering image name + set_fact: + inames: "{{ inames + [iname, hello_world_image_base ~ ':latest'] }}" + + - name: Make sure image is not there + docker_image_remove: + name: "{{ hello_world_image_base }}:latest" + force: true + + - name: Make sure we have {{ docker_test_image_hello_world }} + docker_image_pull: + name: "{{ docker_test_image_hello_world }}" + diff: true + + - name: Tag image + docker_image_tag: + name: "{{ docker_test_image_hello_world }}" + repository: + - "{{ hello_world_image_base }}:latest" + + - name: Push image to test registry + docker_image_push: + name: "{{ hello_world_image_base }}:latest" + + - name: Get facts of local image + docker_image_info: + name: "{{ hello_world_image_base }}:latest" + register: facts_1 + + - name: Make sure image is not there + docker_image_remove: + name: "{{ hello_world_image_base }}:latest" + force: true + + - name: Get facts of local image (not there) + docker_image_info: + name: "{{ hello_world_image_base }}:latest" + register: facts_2 + + - name: Pull image from test registry (check mode) + docker_image_pull: + name: "{{ hello_world_image_base }}:latest" + register: pull_1_check + diff: true + check_mode: true + + - name: Pull image from test registry + docker_image_pull: + name: "{{ hello_world_image_base }}:latest" + register: pull_1 + diff: true + + - name: Pull image from test registry (idempotency, not pulling, check mode) + docker_image_pull: + name: "{{ hello_world_image_base }}:latest" + pull: not_present + register: pull_2_check + diff: true + check_mode: true + + - name: Pull image from test registry (idempotency, not pulling) + docker_image_pull: + name: "{{ hello_world_image_base }}:latest" + pull: not_present + register: pull_2 + diff: true + + - name: Pull image from test registry (idempotency, pulling, check mode) + docker_image_pull: + name: "{{ hello_world_image_base }}:latest" + pull: always + register: pull_3_check + diff: true + check_mode: true + + - name: Pull image from test registry (idempotency, pulling) + docker_image_pull: + name: "{{ hello_world_image_base }}:latest" + pull: always + register: pull_3 + diff: true + + - name: Get facts of local image (present) + docker_image_info: + name: "{{ hello_world_image_base }}:latest" + register: facts_3 + + - assert: + that: + - pull_1_check is changed + - pull_1_check.diff.before.exists is false + - pull_1_check.diff.after.id == 'unknown' + - pull_1 is changed + - pull_1.diff.before.exists is false + - pull_1.diff.after.id == facts_1.images[0].Id + - pull_2_check is not changed + - pull_2_check.diff.before.id == facts_1.images[0].Id + - pull_2_check.diff.before == pull_2.diff.after + - pull_2 is not changed + - pull_2.diff.before.id == facts_1.images[0].Id + - pull_2.diff.before == pull_2.diff.after + - pull_3_check is changed + - pull_3_check.diff.before.id == facts_1.images[0].Id + - pull_3_check.diff.after.id == 'unknown' + - pull_3 is not changed + - pull_3.diff.before.id == facts_1.images[0].Id + - pull_3.diff.before == pull_2.diff.after + - facts_1.images | length == 1 + - facts_2.images | length == 0 + - facts_3.images | length == 1 diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_push/aliases b/ansible_collections/community/docker/tests/integration/targets/docker_image_push/aliases new file mode 100644 index 000000000..2e1acc0ad --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_push/aliases @@ -0,0 +1,6 @@ +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +azp/4 +destructive diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_push/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_push/meta/main.yml new file mode 100644 index 000000000..ff316450e --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_push/meta/main.yml @@ -0,0 +1,8 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +dependencies: + - setup_docker_registry + - setup_docker_python_deps diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_push/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_push/tasks/main.yml new file mode 100644 index 000000000..88b23cfe7 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_push/tasks/main.yml @@ -0,0 +1,13 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +- when: ansible_facts.distribution ~ ansible_facts.distribution_major_version not in ['CentOS6', 'RedHat6'] + include_tasks: + file: test.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_push/tasks/run-test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_push/tasks/run-test.yml new file mode 100644 index 000000000..72a58962d --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_push/tasks/run-test.yml @@ -0,0 +1,7 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: "Loading tasks from {{ test_name }}" + include_tasks: "{{ test_name }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_push/tasks/test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_push/tasks/test.yml new file mode 100644 index 000000000..e6ffe722d --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_push/tasks/test.yml @@ -0,0 +1,39 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: Create random name prefix + set_fact: + name_prefix: "{{ 'ansible-docker-test-%0x' % ((2**32) | random) }}" +- name: Create image and container list + set_fact: + inames: [] + cnames: [] + +- debug: + msg: "Using name prefix {{ name_prefix }}" + +- block: + - include_tasks: run-test.yml + with_fileglob: + - "tests/*.yml" + loop_control: + loop_var: test_name + + always: + - name: "Make sure all images are removed" + docker_image_remove: + name: "{{ item }}" + with_items: "{{ inames }}" + - name: "Make sure all containers are removed" + docker_container: + name: "{{ item }}" + state: absent + force_kill: true + with_items: "{{ cnames }}" + + when: docker_api_version is version('1.25', '>=') + +- fail: msg="Too old docker / docker-py version to run docker_image tests!" + when: not(docker_api_version is version('1.25', '>=')) and (ansible_distribution != 'CentOS' or ansible_distribution_major_version|int > 6) diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_push/tasks/tests/basic.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_push/tasks/tests/basic.yml new file mode 100644 index 000000000..15ed8744f --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_push/tasks/tests/basic.yml @@ -0,0 +1,60 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- vars: + image_name: registry.example.com:5000/foo/bar:baz + block: + - name: Make sure image is not present + docker_image_remove: + name: "{{ image_name }}" + + - name: Push non-existing image (must fail) + docker_image_push: + name: "{{ image_name }}" + register: fail_1 + ignore_errors: true + + - name: Push image ID (must fail) + docker_image_push: + name: "sha256:{{ docker_test_image_digest_v1_image_id }}" + register: fail_2 + ignore_errors: true + + - name: Push image with digest (must fail) + docker_image_push: + name: "{{ docker_test_image_digest_base }}@sha256:{{ docker_test_image_digest_v1 }}" + register: fail_3 + ignore_errors: true + + - name: Push invalid tag (must fail) + docker_image_push: + name: "{{ docker_test_image_hello_world }}" + tag: foo/bar + register: fail_4 + ignore_errors: true + + - name: Push invalid tag 2 (must fail) + docker_image_push: + name: "{{ docker_test_image_digest_base }}:foo bar" + register: fail_5 + ignore_errors: true + + - assert: + that: + - fail_1 is failed + - >- + 'Cannot find image registry.example.com:5000/foo/bar:baz' == fail_1.msg + - fail_2 is failed + - >- + 'Cannot push an image by ID' == fail_2.msg + - fail_3 is failed + - >- + 'Cannot push an image by digest' == fail_3.msg + - fail_4 is failed + - >- + '"foo/bar" is not a valid docker tag!' == fail_4.msg + - fail_5 is failed + - >- + '"foo bar" is not a valid docker tag!' == fail_5.msg diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_push/tasks/tests/registry.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_push/tasks/tests/registry.yml new file mode 100644 index 000000000..ca18d196b --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_push/tasks/tests/registry.yml @@ -0,0 +1,82 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: Run registry tests only when registry is present + when: registry_address is defined + block: + - name: Pull images + docker_image_pull: + name: "{{ item }}" + loop: + - "{{ docker_test_image_hello_world }}" + - "{{ docker_test_image_alpine }}" + register: pulled_images + + - name: Determining pushed image names + set_fact: + image_name_base: "{{ registry_address }}/test/{{ name_prefix }}" + image_name_base2: "{{ registry_frontend2_address }}/test/{{ name_prefix }}" + image_tag: latest + + - name: Registering image name + set_fact: + inames: "{{ inames + [image_name_base ~ ':' ~ image_tag, image_name_base2 ~ ':' ~ image_tag] }}" + + - name: Tag first image + docker_image_tag: + name: "{{ docker_test_image_hello_world }}" + repository: + - "{{ image_name_base }}:{{ image_tag }}" + - "{{ image_name_base2 }}:{{ image_tag }}" + + - name: Push first image + docker_image_push: + name: "{{ image_name_base }}:{{ image_tag }}" + register: push_1 + + - name: Push first image (idempotent) + docker_image_push: + name: "{{ image_name_base }}:{{ image_tag }}" + register: push_2 + + - name: Tag second image + docker_image_tag: + name: "{{ docker_test_image_alpine }}" + repository: + - "{{ image_name_base }}:{{ image_tag }}" + + - name: Push second image with same name + docker_image_push: + name: "{{ image_name_base }}:{{ image_tag }}" + register: push_3 + + - assert: + that: + - push_1 is changed + - push_1.image.Id == pulled_images.results[0].image.Id + - push_2 is not changed + - push_2.image.Id == pulled_images.results[0].image.Id + - push_3 is changed + - push_3.image.Id == pulled_images.results[1].image.Id + + - when: registry_frontend2_address != 'n/a' + block: + - name: Make sure we are logged out from registry + docker_login: + registry_url: "{{ registry_frontend2_address }}" + username: testuser + password: hunter2 + state: absent + + - name: Push image (unauthenticated) + docker_image_push: + name: "{{ image_name_base2 }}:{{ image_tag }}" + register: push_4 + ignore_errors: true + + - assert: + that: + - push_4 is failed + - push_4.msg == 'Error pushing image ' ~ image_name_base2 ~ ':' ~ image_tag ~ ': no basic auth credentials' diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_remove/aliases b/ansible_collections/community/docker/tests/integration/targets/docker_image_remove/aliases new file mode 100644 index 000000000..2e1acc0ad --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_remove/aliases @@ -0,0 +1,6 @@ +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +azp/4 +destructive diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_remove/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_remove/meta/main.yml new file mode 100644 index 000000000..471ddd412 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_remove/meta/main.yml @@ -0,0 +1,8 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +dependencies: + - setup_docker + - setup_docker_python_deps diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_remove/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_remove/tasks/main.yml new file mode 100644 index 000000000..afa72da82 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_remove/tasks/main.yml @@ -0,0 +1,296 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +- block: + - name: Pick image prefix + set_fact: + iname_prefix: "{{ 'ansible-docker-test-%0x' % ((2**32) | random) }}" + + - name: Define image names + set_fact: + image: "{{ docker_test_image_hello_world }}" + image_id: "{{ docker_test_image_hello_world_image_id }}" + image_names: + - "{{ iname_prefix }}-tagged-1:latest" + - "{{ iname_prefix }}-tagged-1:foo" + - "{{ iname_prefix }}-tagged-1:bar" + + - name: Remove image complete + docker_image_remove: + name: "{{ image_id }}" + force: true + + - name: Remove tagged images + docker_image_remove: + name: "{{ item }}" + loop: "{{ image_names }}" + + - name: Make sure image we work with is there + docker_image_pull: + name: "{{ image }}" + register: pulled_image + diff: true + + - name: Remove tagged image (not there, check mode) + docker_image_remove: + name: "{{ iname_prefix }}-tagged-1:latest" + register: remove_1_check + check_mode: true + diff: true + + - name: Remove tagged image (not there) + docker_image_remove: + name: "{{ iname_prefix }}-tagged-1:latest" + register: remove_1 + diff: true + + - name: Inspect image + docker_image_info: + name: "{{ iname_prefix }}-tagged-1:latest" + register: info_1 + + - assert: + that: + - remove_1_check is not changed + - remove_1_check.diff == remove_1.diff + - remove_1 is not changed + - remove_1.diff.before.exists is false + - remove_1.diff.after.exists is false + - remove_1.deleted | length == 0 + - remove_1.untagged | length == 0 + - remove_1_check.deleted == remove_1.deleted + - remove_1_check.untagged == remove_1.untagged + - info_1.images | length == 0 + + - name: Tag image 1 + docker_image_tag: + name: "{{ image }}" + repository: + - "{{ iname_prefix }}-tagged-1:latest" + - "{{ iname_prefix }}-tagged-1:foo" + - "{{ iname_prefix }}-tagged-1:bar" + + - name: Remove tagged image (check mode) + docker_image_remove: + name: "{{ iname_prefix }}-tagged-1:latest" + register: remove_2_check + check_mode: true + diff: true + + - name: Remove tagged image + docker_image_remove: + name: "{{ iname_prefix }}-tagged-1:latest" + register: remove_2 + diff: true + + - name: Inspect image + docker_image_info: + name: "{{ iname_prefix }}-tagged-1:latest" + register: info_2 + + - assert: + that: + - remove_2_check is changed + - remove_2_check.diff == remove_2.diff + - remove_2 is changed + - remove_2.diff.before.id == pulled_image.image.Id + - remove_2.diff.before.tags | length == 4 + - remove_2.diff.before.digests | length == 1 + - remove_2.diff.after.id == pulled_image.image.Id + - remove_2.diff.after.tags | length == 3 + - remove_2.diff.after.digests | length == 1 + - remove_2.deleted | length == 0 + - remove_2.untagged | length == 1 + - remove_2.untagged[0] == iname_prefix ~ '-tagged-1:latest' + - remove_2_check.deleted == remove_2.deleted + - remove_2_check.untagged == remove_2.untagged + - info_2.images | length == 0 + + - name: Remove tagged image (idempotent, check mode) + docker_image_remove: + name: "{{ iname_prefix }}-tagged-1:latest" + register: remove_3_check + check_mode: true + diff: true + + - name: Remove tagged image (idempotent) + docker_image_remove: + name: "{{ iname_prefix }}-tagged-1:latest" + register: remove_3 + diff: true + + - assert: + that: + - remove_3_check is not changed + - remove_3_check.diff == remove_3.diff + - remove_3 is not changed + - remove_3.diff.before.exists is false + - remove_3.diff.after.exists is false + - remove_3.deleted | length == 0 + - remove_3.untagged | length == 0 + - remove_3_check.deleted == remove_3.deleted + - remove_3_check.untagged == remove_3.untagged + + - name: Inspect image with tag foo and bar + docker_image_info: + name: + - "{{ iname_prefix }}-tagged-1:foo" + - "{{ iname_prefix }}-tagged-1:bar" + register: info_3 + + - name: Remove tagged image (force, check mode) + docker_image_remove: + name: "{{ iname_prefix }}-tagged-1:foo" + force: true + register: remove_4_check + check_mode: true + diff: true + + - name: Remove tagged image (force) + docker_image_remove: + name: "{{ iname_prefix }}-tagged-1:foo" + force: true + register: remove_4 + diff: true + + - name: Inspect image with tag foo and bar + docker_image_info: + name: + - "{{ iname_prefix }}-tagged-1:foo" + - "{{ iname_prefix }}-tagged-1:bar" + register: info_4 + + - assert: + that: + - remove_4_check is changed + - remove_4_check.diff == remove_4.diff + - remove_4 is changed + - remove_4.diff.before.id == pulled_image.image.Id + - remove_4.diff.before.tags | length == 3 + - remove_4.diff.before.digests | length == 1 + - remove_4.diff.after.id == pulled_image.image.Id + - remove_4.diff.after.tags | length == 2 + - remove_4.diff.after.digests | length == 1 + - remove_4.deleted | length == 0 + - remove_4.untagged | length == 1 + - remove_4.untagged[0] == iname_prefix ~ '-tagged-1:foo' + - remove_4_check.deleted == remove_4.deleted + - remove_4_check.untagged == remove_4.untagged + - info_3.images | length == 2 + - info_3.images[0].Id == pulled_image.image.Id + - info_3.images[1].Id == pulled_image.image.Id + - info_4.images | length == 1 + - info_4.images[0].Id == pulled_image.image.Id + + - name: Remove image ID (force, idempotent, check mode) + docker_image_remove: + name: "{{ iname_prefix }}-tagged-1:foo" + force: true + register: remove_5_check + check_mode: true + diff: true + + - name: Remove image ID (force, idempotent) + docker_image_remove: + name: "{{ iname_prefix }}-tagged-1:foo" + force: true + register: remove_5 + diff: true + + - assert: + that: + - remove_5_check is not changed + - remove_5_check.diff == remove_5.diff + - remove_5 is not changed + - remove_5.diff.before.exists is false + - remove_5.diff.after.exists is false + - remove_5.deleted | length == 0 + - remove_5.untagged | length == 0 + - remove_5_check.deleted == remove_5.deleted + - remove_5_check.untagged == remove_5.untagged + + - name: Remove image ID (force, check mode) + docker_image_remove: + name: "{{ pulled_image.image.Id }}" + force: true + register: remove_6_check + check_mode: true + diff: true + + - name: Remove image ID (force) + docker_image_remove: + name: "{{ pulled_image.image.Id }}" + force: true + register: remove_6 + diff: true + + - name: Inspect image with tag foo and bar + docker_image_info: + name: + - "{{ iname_prefix }}-tagged-1:foo" + - "{{ iname_prefix }}-tagged-1:bar" + register: info_5 + + - assert: + that: + - remove_6_check is changed + - remove_6_check.diff == remove_6.diff + - remove_6 is changed + - remove_6.diff.before.id == pulled_image.image.Id + - remove_6.diff.before.tags | length == 2 + - remove_6.diff.before.digests | length == 1 + - remove_6.diff.after.exists is false + - remove_6.deleted | length > 1 + - pulled_image.image.Id in remove_6.deleted + - remove_6.untagged | length == 3 + - (iname_prefix ~ '-tagged-1:bar') in remove_6.untagged + - image in remove_6.untagged + - remove_6_check.deleted | length == 1 + - remove_6_check.deleted[0] == pulled_image.image.Id + - remove_6_check.untagged == remove_6.untagged + - info_5.images | length == 0 + + - name: Remove image ID (force, idempotent, check mode) + docker_image_remove: + name: "{{ pulled_image.image.Id }}" + force: true + register: remove_7_check + check_mode: true + diff: true + + - name: Remove image ID (force, idempotent) + docker_image_remove: + name: "{{ pulled_image.image.Id }}" + force: true + register: remove_7 + diff: true + + - assert: + that: + - remove_7_check is not changed + - remove_7_check.diff == remove_7.diff + - remove_7 is not changed + - remove_7.diff.before.exists is false + - remove_7.diff.after.exists is false + - remove_7.deleted | length == 0 + - remove_7.untagged | length == 0 + - remove_7_check.deleted == remove_7.deleted + - remove_7_check.untagged == remove_7.untagged + + always: + - name: Remove tagged images + docker_image_remove: + name: "{{ item }}" + loop: "{{ image_names }}" + + when: docker_api_version is version('1.25', '>=') + +- fail: msg="Too old docker / docker-py version to run docker_image_info tests!" + when: not(docker_api_version is version('1.25', '>=')) and (ansible_distribution != 'CentOS' or ansible_distribution_major_version|int > 6) diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_tag/aliases b/ansible_collections/community/docker/tests/integration/targets/docker_image_tag/aliases new file mode 100644 index 000000000..2e1acc0ad --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_tag/aliases @@ -0,0 +1,6 @@ +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +azp/4 +destructive diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_tag/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_tag/meta/main.yml new file mode 100644 index 000000000..471ddd412 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_tag/meta/main.yml @@ -0,0 +1,8 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +dependencies: + - setup_docker + - setup_docker_python_deps diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_image_tag/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_image_tag/tasks/main.yml new file mode 100644 index 000000000..327917485 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/docker_image_tag/tasks/main.yml @@ -0,0 +1,402 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +- block: + - name: Pick image prefix + set_fact: + iname_prefix: "{{ 'ansible-docker-test-%0x' % ((2**32) | random) }}" + + - name: Define image names + set_fact: + image_1: "{{ docker_test_image_hello_world }}" + image_2: "{{ docker_test_image_alpine }}" + image_3: "{{ docker_test_image_digest_base }}@sha256:{{ docker_test_image_digest_v1 }}" + image_names: + - "{{ iname_prefix }}-tagged-1:latest" + - "{{ iname_prefix }}-tagged-1:foo" + - "{{ iname_prefix }}-tagged-1:bar" + - "{{ iname_prefix }}-tagged-2:baz" + + - name: Make sure images we work with are there + docker_image_pull: + name: "{{ item }}" + loop: + - "{{ image_1 }}" + - "{{ image_2 }}" + - "{{ image_3 }}" + register: pulled_images + diff: true + + - name: Remove tagged images + docker_image_remove: + name: "{{ item }}" + loop: "{{ image_names }}" + + - name: Tag image 1 (check mode) + docker_image_tag: + name: "{{ image_1 }}" + repository: + - "{{ iname_prefix }}-tagged-1:latest" + - "{{ iname_prefix }}-tagged-1:foo" + register: tag_1_check + diff: true + check_mode: true + + - name: Tag image 1 + docker_image_tag: + name: "{{ image_1 }}" + repository: + - "{{ iname_prefix }}-tagged-1:latest" + - "{{ iname_prefix }}-tagged-1:foo" + register: tag_1 + diff: true + + - name: Fetch image infos + docker_image_info: + name: "{{ image_names }}" + register: info_1 + + - assert: + that: + - tag_1 is changed + - tag_1.diff.before.images | length == 2 + - tag_1.diff.before.images[0] != tag_1.diff.after.images[0] + - tag_1.diff.before.images[1] != tag_1.diff.after.images[1] + - tag_1.diff.before.images[0].exists is false + - tag_1.diff.before.images[1].exists is false + - tag_1.diff.after.images[0].id == pulled_images.results[0].image.Id + - tag_1.diff.after.images[1].id == pulled_images.results[0].image.Id + - info_1.images | length == 2 + - info_1.images[0].Id == pulled_images.results[0].image.Id + - info_1.images[1].Id == pulled_images.results[0].image.Id + - tag_1_check == tag_1 + + - name: Tag image 1 (idempotent, check mode) + docker_image_tag: + name: "{{ image_1 }}" + repository: + - "{{ iname_prefix }}-tagged-1:latest" + - "{{ iname_prefix }}-tagged-1:foo" + register: tag_2_check + diff: true + check_mode: true + + - name: Tag image 1 (idempotent) + docker_image_tag: + name: "{{ image_1 }}" + repository: + - "{{ iname_prefix }}-tagged-1:latest" + - "{{ iname_prefix }}-tagged-1:foo" + register: tag_2 + diff: true + + - assert: + that: + - tag_2 is not changed + - tag_2.diff.before == tag_2.diff.after + - tag_2.diff.before.images | length == 2 + - tag_2_check == tag_2 + + - name: Tag image 1 (idempotent, different input format, check mode) + docker_image_tag: + name: "{{ image_1 }}" + tag: foo + repository: + - "{{ iname_prefix }}-tagged-1:latest" + - "{{ iname_prefix }}-tagged-1" + register: tag_3_check + diff: true + check_mode: true + + - name: Tag image 1 (idempotent, different input format) + docker_image_tag: + name: "{{ image_1 }}" + tag: foo + repository: + - "{{ iname_prefix }}-tagged-1:latest" + - "{{ iname_prefix }}-tagged-1" + register: tag_3 + diff: true + + - assert: + that: + - tag_3 is not changed + - tag_3.diff.before == tag_3.diff.after + - tag_3.diff.before.images | length == 2 + - tag_3_check == tag_3 + + - name: Tag image 1 (one more, check mode) + docker_image_tag: + name: "{{ image_1 }}" + repository: + - "{{ iname_prefix }}-tagged-1:latest" + - "{{ iname_prefix }}-tagged-1:foo" + - "{{ iname_prefix }}-tagged-2:baz" + register: tag_4_check + diff: true + check_mode: true + + - name: Tag image 1 (one more) + docker_image_tag: + name: "{{ image_1 }}" + repository: + - "{{ iname_prefix }}-tagged-1:latest" + - "{{ iname_prefix }}-tagged-1:foo" + - "{{ iname_prefix }}-tagged-2:baz" + register: tag_4 + diff: true + + - name: Fetch image infos + docker_image_info: + name: "{{ image_names }}" + register: info_4 + + - assert: + that: + - tag_4 is changed + - tag_4.diff.before.images | length == 3 + - tag_4.diff.before.images[0] == tag_4.diff.after.images[0] + - tag_4.diff.before.images[1] == tag_4.diff.after.images[1] + - tag_4.diff.before.images[2] != tag_4.diff.after.images[2] + - tag_4.diff.before.images[2].exists is false + - tag_4.diff.after.images[0].id == pulled_images.results[0].image.Id + - tag_4.diff.after.images[1].id == pulled_images.results[0].image.Id + - tag_4.diff.after.images[2].id == pulled_images.results[0].image.Id + - info_4.images | length == 3 + - info_4.images[0].Id == pulled_images.results[0].image.Id + - info_4.images[1].Id == pulled_images.results[0].image.Id + - info_4.images[2].Id == pulled_images.results[0].image.Id + - tag_4_check == tag_4 + + - name: Tag image 2 (only change missing one, check mode) + docker_image_tag: + name: "{{ image_2 }}" + existing_images: keep + repository: + - "{{ iname_prefix }}-tagged-1:latest" + - "{{ iname_prefix }}-tagged-1:foo" + - "{{ iname_prefix }}-tagged-1:bar" + register: tag_5_check + diff: true + check_mode: true + + - name: Tag image 2 (only change missing one) + docker_image_tag: + name: "{{ image_2 }}" + existing_images: keep + repository: + - "{{ iname_prefix }}-tagged-1:latest" + - "{{ iname_prefix }}-tagged-1:foo" + - "{{ iname_prefix }}-tagged-1:bar" + register: tag_5 + diff: true + + - name: Fetch image infos + docker_image_info: + name: "{{ image_names }}" + register: info_5 + + - assert: + that: + - tag_5 is changed + - tag_5.diff.before.images | length == 3 + - tag_5.diff.before.images[0] == tag_5.diff.after.images[0] + - tag_5.diff.before.images[1] == tag_5.diff.after.images[1] + - tag_5.diff.before.images[2] != tag_5.diff.after.images[2] + - tag_5.diff.before.images[2].exists is false + - tag_5.diff.after.images[0].id == pulled_images.results[0].image.Id + - tag_5.diff.after.images[1].id == pulled_images.results[0].image.Id + - tag_5.diff.after.images[2].id == pulled_images.results[1].image.Id + - info_5.images | length == 4 + - info_5.images[0].Id == pulled_images.results[0].image.Id + - info_5.images[1].Id == pulled_images.results[0].image.Id + - info_5.images[2].Id == pulled_images.results[1].image.Id + - info_5.images[3].Id == pulled_images.results[0].image.Id + - tag_5_check == tag_5 + + - name: Tag image 2 (idempotent, check mode) + docker_image_tag: + name: "{{ image_2 }}" + existing_images: keep + repository: + - "{{ iname_prefix }}-tagged-1:latest" + - "{{ iname_prefix }}-tagged-1:foo" + - "{{ iname_prefix }}-tagged-1:bar" + register: tag_6_check + diff: true + check_mode: true + + - name: Tag image 2 (idempotent) + docker_image_tag: + name: "{{ image_2 }}" + existing_images: keep + repository: + - "{{ iname_prefix }}-tagged-1:latest" + - "{{ iname_prefix }}-tagged-1:foo" + - "{{ iname_prefix }}-tagged-1:bar" + register: tag_6 + diff: true + + - assert: + that: + - tag_6 is not changed + - tag_6.diff.before == tag_6.diff.after + - tag_6.diff.before.images | length == 3 + - tag_6_check == tag_6 + + - name: Tag image 2 (only change wrong ones, check mode) + docker_image_tag: + name: "{{ image_2 }}" + existing_images: overwrite + repository: + - "{{ iname_prefix }}-tagged-1:latest" + - "{{ iname_prefix }}-tagged-1:foo" + - "{{ iname_prefix }}-tagged-1:bar" + register: tag_7_check + diff: true + check_mode: true + + - name: Tag image 2 (only change wrong ones) + docker_image_tag: + name: "{{ image_2 }}" + existing_images: overwrite + repository: + - "{{ iname_prefix }}-tagged-1:latest" + - "{{ iname_prefix }}-tagged-1:foo" + - "{{ iname_prefix }}-tagged-1:bar" + register: tag_7 + diff: true + + - name: Fetch image infos + docker_image_info: + name: "{{ image_names }}" + register: info_7 + + - assert: + that: + - tag_7 is changed + - tag_7.diff.before.images | length == 3 + - tag_7.diff.before.images[0] != tag_7.diff.after.images[0] + - tag_7.diff.before.images[1] != tag_7.diff.after.images[1] + - tag_7.diff.before.images[2] == tag_7.diff.after.images[2] + - tag_7.diff.before.images[0].id == pulled_images.results[0].image.Id + - tag_7.diff.before.images[1].id == pulled_images.results[0].image.Id + - tag_7.diff.after.images[0].id == pulled_images.results[1].image.Id + - tag_7.diff.after.images[1].id == pulled_images.results[1].image.Id + - tag_7.diff.after.images[2].id == pulled_images.results[1].image.Id + - info_7.images | length == 4 + - info_7.images[0].Id == pulled_images.results[1].image.Id + - info_7.images[1].Id == pulled_images.results[1].image.Id + - info_7.images[2].Id == pulled_images.results[1].image.Id + - info_7.images[3].Id == pulled_images.results[0].image.Id + - tag_7_check == tag_7 + + - name: Tag image 2 (idempotent, check mode) + docker_image_tag: + name: "{{ image_2 }}" + existing_images: overwrite + repository: + - "{{ iname_prefix }}-tagged-1:latest" + - "{{ iname_prefix }}-tagged-1:foo" + - "{{ iname_prefix }}-tagged-1:bar" + register: tag_8_check + diff: true + check_mode: true + + - name: Tag image 2 (idempotent) + docker_image_tag: + name: "{{ image_2 }}" + existing_images: overwrite + repository: + - "{{ iname_prefix }}-tagged-1:latest" + - "{{ iname_prefix }}-tagged-1:foo" + - "{{ iname_prefix }}-tagged-1:bar" + register: tag_8 + diff: true + + - assert: + that: + - tag_8 is not changed + - tag_8.diff.before == tag_8.diff.after + - tag_8.diff.before.images | length == 3 + - tag_8_check == tag_8 + + - name: Tag image 3 (source image has digest) + docker_image_tag: + name: "{{ image_3 }}" + existing_images: overwrite + repository: + - "{{ iname_prefix }}-tagged-2:baz" + register: tag_9 + diff: true + + - assert: + that: + - tag_9 is changed + - tag_9.diff.before.images | length == 1 + - tag_9.diff.before.images[0].id == pulled_images.results[0].image.Id + - tag_9.diff.after.images[0].id == pulled_images.results[2].image.Id + + - name: Tag image 3 (source image is ID) + docker_image_tag: + name: "{{ pulled_images.results[2].image.Id }}" + existing_images: overwrite + repository: + - "{{ iname_prefix }}-tagged-1:foo" + register: tag_10 + diff: true + + - assert: + that: + - tag_10 is changed + - tag_10.diff.before.images | length == 1 + - tag_10.diff.before.images[0].id == pulled_images.results[1].image.Id + - tag_10.diff.after.images[0].id == pulled_images.results[2].image.Id + + - name: Tag image 3 (fail because of digest) + docker_image_tag: + name: "{{ image_3 }}" + existing_images: overwrite + repository: + - "{{ iname_prefix }}-tagged-2@sha256:{{ docker_test_image_digest_v1 }}" + register: tag_11 + ignore_errors: true + + - assert: + that: + - tag_11 is failed + - >- + tag_11.msg == 'repository[1] must not have a digest; got: ' ~ iname_prefix ~ '-tagged-2@sha256:' ~ docker_test_image_digest_v1 + + - name: Tag image 3 (fail because of image ID) + docker_image_tag: + name: "{{ image_3 }}" + existing_images: overwrite + repository: + - "sha256:{{ docker_test_image_digest_v1 }}" + register: tag_12 + ignore_errors: true + + - assert: + that: + - tag_12 is failed + - >- + tag_12.msg == 'repository[1] must not be an image ID; got: sha256:' ~ docker_test_image_digest_v1 + + always: + - name: Remove tagged images + docker_image_remove: + name: "{{ item }}" + loop: "{{ image_names }}" + + when: docker_api_version is version('1.25', '>=') + +- fail: msg="Too old docker / docker-py version to run docker_image_info tests!" + when: not(docker_api_version is version('1.25', '>=')) and (ansible_distribution != 'CentOS' or ansible_distribution_major_version|int > 6) diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_login/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_login/meta/main.yml index 3133a0360..ff316450e 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_login/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_login/meta/main.yml @@ -5,3 +5,4 @@ dependencies: - setup_docker_registry + - setup_docker_python_deps diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_login/tasks/run-test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_login/tasks/run-test.yml index 65853ddd8..72a58962d 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_login/tasks/run-test.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_login/tasks/run-test.yml @@ -3,5 +3,5 @@ # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later -- name: "Loading tasks from {{ item }}" - include_tasks: "{{ item }}" +- name: "Loading tasks from {{ test_name }}" + include_tasks: "{{ test_name }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_login/tasks/test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_login/tasks/test.yml index bd99acc0a..b56fe799f 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_login/tasks/test.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_login/tasks/test.yml @@ -4,9 +4,11 @@ # SPDX-License-Identifier: GPL-3.0-or-later - block: - - include_tasks: run-test.yml - with_fileglob: - - "tests/*.yml" + - include_tasks: run-test.yml + with_fileglob: + - "tests/*.yml" + loop_control: + loop_var: test_name when: docker_api_version is version('1.25', '>=') - fail: msg="Too old docker / docker-py version to run docker_image tests!" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_network/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_network/meta/main.yml index 5769ff1cb..44bdbe8d5 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_network/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_network/meta/main.yml @@ -5,3 +5,5 @@ dependencies: - setup_docker + - setup_docker_python_deps + - setup_docker_sdk_for_python # for Swarm support diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_network/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_network/tasks/main.yml index 4a056151b..d2f7f0258 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_network/tasks/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_network/tasks/main.yml @@ -28,23 +28,25 @@ msg: "Using name prefix {{ name_prefix }}" - block: - - include_tasks: run-test.yml - with_fileglob: - - "tests/*.yml" + - include_tasks: run-test.yml + with_fileglob: + - "tests/*.yml" + loop_control: + loop_var: test_name always: - - name: "Make sure all containers are removed" - docker_container: - name: "{{ item }}" - state: absent - force_kill: true - loop: "{{ cnames }}" - - name: "Make sure all networks are removed" - docker_network: - name: "{{ item }}" - state: absent - force: true - loop: "{{ dnetworks }}" + - name: "Make sure all containers are removed" + docker_container: + name: "{{ item }}" + state: absent + force_kill: true + loop: "{{ cnames }}" + - name: "Make sure all networks are removed" + docker_network: + name: "{{ item }}" + state: absent + force: true + loop: "{{ dnetworks }}" when: docker_api_version is version('1.25', '>=') # FIXME: find out API version! diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_network/tasks/run-test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_network/tasks/run-test.yml index 65853ddd8..72a58962d 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_network/tasks/run-test.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_network/tasks/run-test.yml @@ -3,5 +3,5 @@ # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later -- name: "Loading tasks from {{ item }}" - include_tasks: "{{ item }}" +- name: "Loading tasks from {{ test_name }}" + include_tasks: "{{ test_name }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_network_info/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_network_info/meta/main.yml index 5769ff1cb..471ddd412 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_network_info/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_network_info/meta/main.yml @@ -5,3 +5,4 @@ dependencies: - setup_docker + - setup_docker_python_deps diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_node/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_node/meta/main.yml index 5769ff1cb..6407d95b0 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_node/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_node/meta/main.yml @@ -5,3 +5,4 @@ dependencies: - setup_docker + - setup_docker_sdk_for_python diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_node/tasks/test_node.yml b/ansible_collections/community/docker/tests/integration/targets/docker_node/tasks/test_node.yml index 89c9b3555..c326fc9f3 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_node/tasks/test_node.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_node/tasks/test_node.yml @@ -697,7 +697,7 @@ - label6 - label7 check_mode: true - register: output_add_del_overlap_lables_1 + register: output_add_del_overlap_labels_1 - name: Try to add or update and remove overlapping labels at the same time docker_node: @@ -708,7 +708,7 @@ labels_to_remove: - label6 - label7 - register: output_add_del_overlap_lables_2 + register: output_add_del_overlap_labels_2 - name: Try to add or update and remove overlapping labels at the same time (idempotent) docker_node: @@ -719,7 +719,7 @@ labels_to_remove: - label6 - label7 - register: output_add_del_overlap_lables_3 + register: output_add_del_overlap_labels_3 - name: Try to add or update and remove overlapping labels at the same time (idempotent check) docker_node: @@ -731,19 +731,19 @@ - label6 - label7 check_mode: true - register: output_add_del_overlap_lables_4 + register: output_add_del_overlap_labels_4 - name: assert adding or updating and removing overlapping labels from swarm node assert: that: - - 'output_add_del_overlap_lables_1 is changed' - - 'output_add_del_overlap_lables_2 is changed' - - 'output_add_del_overlap_lables_3 is not changed' - - 'output_add_del_overlap_lables_4 is not changed' - - 'output_add_del_overlap_lables_2.node.Spec.Labels | length == 3' - - '"label7" not in output_add_del_overlap_lables_2.node.Spec.Labels' - - 'output_add_del_overlap_lables_2.node.Spec.Labels.label6 == "value6666"' - - 'output_add_del_overlap_lables_2.node.Spec.Labels.label22 == "value22"' + - 'output_add_del_overlap_labels_1 is changed' + - 'output_add_del_overlap_labels_2 is changed' + - 'output_add_del_overlap_labels_3 is not changed' + - 'output_add_del_overlap_labels_4 is not changed' + - 'output_add_del_overlap_labels_2.node.Spec.Labels | length == 3' + - '"label7" not in output_add_del_overlap_labels_2.node.Spec.Labels' + - 'output_add_del_overlap_labels_2.node.Spec.Labels.label6 == "value6666"' + - 'output_add_del_overlap_labels_2.node.Spec.Labels.label22 == "value22"' #################################################################### ## Replace labels ############################################# @@ -828,7 +828,7 @@ check_mode: true register: output_remove_labels_4 - - name: assert removing all lables from swarm node + - name: assert removing all labels from swarm node assert: that: - 'output_remove_labels_1 is changed' diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_node_info/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_node_info/meta/main.yml index 5769ff1cb..6407d95b0 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_node_info/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_node_info/meta/main.yml @@ -5,3 +5,4 @@ dependencies: - setup_docker + - setup_docker_sdk_for_python diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_plugin/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_plugin/meta/main.yml index 5769ff1cb..6407d95b0 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_plugin/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_plugin/meta/main.yml @@ -5,3 +5,4 @@ dependencies: - setup_docker + - setup_docker_sdk_for_python diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_plugin/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_plugin/tasks/main.yml index 142614332..8684ca117 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_plugin/tasks/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_plugin/tasks/main.yml @@ -17,16 +17,18 @@ register: dev_fuse_stat - block: - - include_tasks: run-test.yml - with_fileglob: - - "tests/*.yml" + - include_tasks: run-test.yml + with_fileglob: + - "tests/*.yml" + loop_control: + loop_var: test_name always: - - name: "Make sure plugin is removed" - docker_plugin: - plugin_name: "{{ item }}" - state: absent - with_items: "{{ plugin_names }}" + - name: "Make sure plugin is removed" + docker_plugin: + plugin_name: "{{ item }}" + state: absent + with_items: "{{ plugin_names }}" when: docker_api_version is version('1.25', '>=') and dev_fuse_stat.stat.exists diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_plugin/tasks/run-test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_plugin/tasks/run-test.yml index 65853ddd8..72a58962d 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_plugin/tasks/run-test.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_plugin/tasks/run-test.yml @@ -3,5 +3,5 @@ # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later -- name: "Loading tasks from {{ item }}" - include_tasks: "{{ item }}" +- name: "Loading tasks from {{ test_name }}" + include_tasks: "{{ test_name }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_prune/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_prune/meta/main.yml index 5769ff1cb..471ddd412 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_prune/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_prune/meta/main.yml @@ -5,3 +5,4 @@ dependencies: - setup_docker + - setup_docker_python_deps diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_secret/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_secret/meta/main.yml index 2650229d8..9eeb6626b 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_secret/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_secret/meta/main.yml @@ -5,4 +5,5 @@ dependencies: - setup_docker + - setup_docker_sdk_for_python - setup_remote_tmp_dir diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_stack_info/tasks/test_stack_info.yml b/ansible_collections/community/docker/tests/integration/targets/docker_stack_info/tasks/test_stack_info.yml index 58d6d5bb9..cca26c802 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_stack_info/tasks/test_stack_info.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_stack_info/tasks/test_stack_info.yml @@ -18,7 +18,7 @@ assert: that: - 'output is failed' - - '"Error running docker stack" in output.msg' + - '"Error response from daemon: This node is not a swarm manager" in output.msg' - name: Create a swarm cluster docker_swarm: diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_stack_task_info/tasks/test_stack_task_info.yml b/ansible_collections/community/docker/tests/integration/targets/docker_stack_task_info/tasks/test_stack_task_info.yml index 30b5ca9e8..cb905d5cf 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_stack_task_info/tasks/test_stack_task_info.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_stack_task_info/tasks/test_stack_task_info.yml @@ -18,7 +18,7 @@ assert: that: - 'output is failed' - - '"Error running docker stack" in output.msg' + - '"Error response from daemon: This node is not a swarm manager" in output.msg' - name: Create a swarm cluster docker_swarm: diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_swarm/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_swarm/meta/main.yml index e7ff3d68b..13f97ae20 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_swarm/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_swarm/meta/main.yml @@ -5,5 +5,6 @@ dependencies: - setup_docker + - setup_docker_sdk_for_python - setup_openssl - setup_remote_tmp_dir diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_swarm/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_swarm/tasks/main.yml index 16f681530..f2b90167c 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_swarm/tasks/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_swarm/tasks/main.yml @@ -14,9 +14,11 @@ - docker_api_version is version('1.25', '>=') block: - - include_tasks: "{{ item }}" + - include_tasks: run-test.yml with_fileglob: - - 'tests/*.yml' + - "tests/*.yml" + loop_control: + loop_var: test_name always: - import_tasks: cleanup.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_swarm/tasks/run-test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_swarm/tasks/run-test.yml index f55df21f8..72a58962d 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_swarm/tasks/run-test.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_swarm/tasks/run-test.yml @@ -2,3 +2,6 @@ # Copyright (c) Ansible Project # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later + +- name: "Loading tasks from {{ test_name }}" + include_tasks: "{{ test_name }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_swarm_info/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_swarm_info/meta/main.yml index 5769ff1cb..6407d95b0 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_swarm_info/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_swarm_info/meta/main.yml @@ -5,3 +5,4 @@ dependencies: - setup_docker + - setup_docker_sdk_for_python diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_swarm_info/tasks/test_swarm_info.yml b/ansible_collections/community/docker/tests/integration/targets/docker_swarm_info/tasks/test_swarm_info.yml index 288e2a0b0..a2cd5f8f9 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_swarm_info/tasks/test_swarm_info.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_swarm_info/tasks/test_swarm_info.yml @@ -14,7 +14,7 @@ ignore_errors: true register: output - - name: assert failure when called when swarm is not in use or not run on mamager node + - name: assert failure when called when swarm is not in use or not run on manager node assert: that: - 'output is failed' @@ -58,7 +58,7 @@ nodes: true register: output - - name: assert reding swarm facts with list of nodes option + - name: assert reading swarm facts with list of nodes option assert: that: - 'output.swarm_facts.JoinTokens.Manager' diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_swarm_service/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_swarm_service/meta/main.yml index 5769ff1cb..6407d95b0 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_swarm_service/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_swarm_service/meta/main.yml @@ -5,3 +5,4 @@ dependencies: - setup_docker + - setup_docker_sdk_for_python diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_swarm_service/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_swarm_service/tasks/main.yml index 5a5795b5f..bbea0a031 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_swarm_service/tasks/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_swarm_service/tasks/main.yml @@ -24,14 +24,16 @@ # Run the tests - block: - - name: Create a Swarm cluster - docker_swarm: - state: present - advertise_addr: "{{ansible_default_ipv4.address | default('127.0.0.1')}}" + - name: Create a Swarm cluster + docker_swarm: + state: present + advertise_addr: "{{ansible_default_ipv4.address | default('127.0.0.1')}}" - - include_tasks: run-test.yml - with_fileglob: - - "tests/*.yml" + - include_tasks: run-test.yml + with_fileglob: + - "tests/*.yml" + loop_control: + loop_var: test_name always: - name: Make sure all services are removed diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_swarm_service/tasks/run-test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_swarm_service/tasks/run-test.yml index 65853ddd8..72a58962d 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_swarm_service/tasks/run-test.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_swarm_service/tasks/run-test.yml @@ -3,5 +3,5 @@ # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later -- name: "Loading tasks from {{ item }}" - include_tasks: "{{ item }}" +- name: "Loading tasks from {{ test_name }}" + include_tasks: "{{ test_name }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_swarm_service_info/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_swarm_service_info/meta/main.yml index 5769ff1cb..6407d95b0 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_swarm_service_info/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_swarm_service_info/meta/main.yml @@ -5,3 +5,4 @@ dependencies: - setup_docker + - setup_docker_sdk_for_python diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_volume/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_volume/meta/main.yml index 5769ff1cb..471ddd412 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_volume/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_volume/meta/main.yml @@ -5,3 +5,4 @@ dependencies: - setup_docker + - setup_docker_python_deps diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_volume/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_volume/tasks/main.yml index b356e5618..055898402 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_volume/tasks/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_volume/tasks/main.yml @@ -17,16 +17,18 @@ msg: "Using name prefix {{ name_prefix }}" - block: - - include_tasks: run-test.yml - with_fileglob: - - "tests/*.yml" + - include_tasks: run-test.yml + with_fileglob: + - "tests/*.yml" + loop_control: + loop_var: test_name always: - - name: "Make sure all volumes are removed" - docker_volume: - name: "{{ item }}" - state: absent - with_items: "{{ vnames }}" + - name: "Make sure all volumes are removed" + docker_volume: + name: "{{ item }}" + state: absent + with_items: "{{ vnames }}" when: docker_api_version is version('1.25', '>=') diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_volume/tasks/run-test.yml b/ansible_collections/community/docker/tests/integration/targets/docker_volume/tasks/run-test.yml index 65853ddd8..72a58962d 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_volume/tasks/run-test.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_volume/tasks/run-test.yml @@ -3,5 +3,5 @@ # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later -- name: "Loading tasks from {{ item }}" - include_tasks: "{{ item }}" +- name: "Loading tasks from {{ test_name }}" + include_tasks: "{{ test_name }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/docker_volume_info/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/docker_volume_info/meta/main.yml index 5769ff1cb..471ddd412 100644 --- a/ansible_collections/community/docker/tests/integration/targets/docker_volume_info/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/docker_volume_info/meta/main.yml @@ -5,3 +5,4 @@ dependencies: - setup_docker + - setup_docker_python_deps diff --git a/ansible_collections/community/docker/tests/integration/targets/generic_connection_tests/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/generic_connection_tests/meta/main.yml index e7ff3d68b..7440275b2 100644 --- a/ansible_collections/community/docker/tests/integration/targets/generic_connection_tests/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/generic_connection_tests/meta/main.yml @@ -5,5 +5,7 @@ dependencies: - setup_docker + - setup_docker_python_deps + - setup_docker_current_container_network_ip - setup_openssl - setup_remote_tmp_dir diff --git a/ansible_collections/community/docker/tests/integration/targets/generic_connection_tests/vars/main.yml b/ansible_collections/community/docker/tests/integration/targets/generic_connection_tests/vars/main.yml index e4eafc24e..1859bdfe6 100644 --- a/ansible_collections/community/docker/tests/integration/targets/generic_connection_tests/vars/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/generic_connection_tests/vars/main.yml @@ -4,10 +4,14 @@ # SPDX-License-Identifier: GPL-3.0-or-later docker_test_image_digest_v1: e004c2cc521c95383aebb1fb5893719aa7a8eae2e7a71f316a4410784edb00a9 +docker_test_image_digest_v1_image_id: 758ec7f3a1ee85f8f08399b55641bfb13e8c1109287ddc5e22b68c3d653152ee docker_test_image_digest_v2: ee44b399df993016003bf5466bd3eeb221305e9d0fa831606bc7902d149c775b +docker_test_image_digest_v2_image_id: dc3bacd8b5ea796cea5d6070c8f145df9076f26a6bc1c8981fd5b176d37de843 docker_test_image_digest_base: quay.io/ansible/docker-test-containers docker_test_image_hello_world: quay.io/ansible/docker-test-containers:hello-world +docker_test_image_hello_world_image_id: sha256:bf756fb1ae65adf866bd8c456593cd24beb6a0a061dedf42b26a993176745f6b docker_test_image_hello_world_base: quay.io/ansible/docker-test-containers +docker_test_image_hello_world_platform: docker.io/library/hello-world:latest docker_test_image_busybox: quay.io/ansible/docker-test-containers:busybox docker_test_image_alpine: quay.io/ansible/docker-test-containers:alpine3.8 docker_test_image_alpine_different: quay.io/ansible/docker-test-containers:alpine3.7 diff --git a/ansible_collections/community/docker/tests/integration/targets/generic_ssh_connection/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/generic_ssh_connection/meta/main.yml index 6fdc1c8ec..ee4a358cb 100644 --- a/ansible_collections/community/docker/tests/integration/targets/generic_ssh_connection/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/generic_ssh_connection/meta/main.yml @@ -6,3 +6,4 @@ dependencies: - setup_docker - setup_paramiko + - setup_docker_python_deps diff --git a/ansible_collections/community/docker/tests/integration/targets/generic_ssh_connection/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/generic_ssh_connection/tasks/main.yml index 94554f716..8bfa52511 100644 --- a/ansible_collections/community/docker/tests/integration/targets/generic_ssh_connection/tasks/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/generic_ssh_connection/tasks/main.yml @@ -68,7 +68,6 @@ docker_host: "ssh://root@localhost" use_ssh_client: true register: output - ignore_errors: true - name: Make sure we got information assert: @@ -80,11 +79,3 @@ - 'output.volumes is not defined' - 'output.images is not defined' - 'output.disk_usage is not defined' - when: docker_py_version is version('4.4.0', '>=') - -- name: Make sure we got information - assert: - that: - - output is failed - - "'use_ssh_client=True requires Docker SDK for Python 4.4.0 or newer' in output.msg" - when: docker_py_version is version('4.4.0', '<') diff --git a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/meta/main.yml index 5769ff1cb..471ddd412 100644 --- a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/meta/main.yml @@ -5,3 +5,4 @@ dependencies: - setup_docker + - setup_docker_python_deps diff --git a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/playbooks/docker_cleanup.yml b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/playbooks/docker_cleanup.yml index 6f2a3b6c5..9a01aa289 100644 --- a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/playbooks/docker_cleanup.yml +++ b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/playbooks/docker_cleanup.yml @@ -15,12 +15,3 @@ loop: - ansible-docker-test-docker-inventory-container-1 - ansible-docker-test-docker-inventory-container-2 - - - name: remove docker pagkages - action: "{{ ansible_facts.pkg_mgr }}" - args: - name: - - docker - - docker-ce - - docker-ce-cli - state: absent diff --git a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/playbooks/docker_setup.yml b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/playbooks/docker_setup.yml index 0c1f33685..72507e414 100644 --- a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/playbooks/docker_setup.yml +++ b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/playbooks/docker_setup.yml @@ -13,6 +13,10 @@ import_role: name: setup_docker + - name: Setup Docker Python deps + import_role: + name: setup_docker_python_deps + - name: Start containers docker_container: name: "{{ item.name }}" @@ -21,6 +25,8 @@ command: '/bin/sh -c "sleep 10m"' published_ports: - 22/tcp + labels: + foo: !unsafe 'EVALU{{ "" }}ATED' loop: - name: ansible-docker-test-docker-inventory-container-1 - name: ansible-docker-test-docker-inventory-container-2 diff --git a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/playbooks/test_inventory_1.yml b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/playbooks/test_inventory_1.yml index c0f28f57d..976b25b21 100644 --- a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/playbooks/test_inventory_1.yml +++ b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/playbooks/test_inventory_1.yml @@ -25,7 +25,6 @@ # will be other containers. - inventory_hostname.startswith('ansible-docker-test-docker-inventory-container-') block: - - name: Run raw command raw: ls / register: output diff --git a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/playbooks/test_inventory_2.yml b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/playbooks/test_inventory_2.yml index 28f8dc008..71346bfa1 100644 --- a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/playbooks/test_inventory_2.yml +++ b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/playbooks/test_inventory_2.yml @@ -47,3 +47,13 @@ # When the integration tests are run inside a docker container, there # will be other containers. - inventory_hostname.startswith('ansible-docker-test-docker-inventory-container-') + - name: Write labels into file + copy: + dest: "/tmp/{{ inventory_hostname }}-labels.txt" + content: |- + {{ docker_config.Labels }} + delegate_to: localhost + when: + # When the integration tests are run inside a docker container, there + # will be other containers. + - inventory_hostname.startswith('ansible-docker-test-docker-inventory-container-') diff --git a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/runme.sh b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/runme.sh index acc1d5f45..318275d99 100755 --- a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/runme.sh +++ b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_containers/runme.sh @@ -9,17 +9,23 @@ set -euo pipefail cleanup() { echo "Cleanup" - ansible-playbook playbooks/docker_cleanup.yml + ansible-playbook playbooks/docker_cleanup.yml "$@" echo "Done" } trap cleanup INT TERM EXIT echo "Setup" -ANSIBLE_ROLES_PATH=.. ansible-playbook playbooks/docker_setup.yml +ANSIBLE_ROLES_PATH=.. ansible-playbook playbooks/docker_setup.yml "$@" echo "Test docker_containers inventory 1" -ansible-playbook -i inventory_1.docker.yml playbooks/test_inventory_1.yml +ansible-playbook -i inventory_1.docker.yml playbooks/test_inventory_1.yml "$@" echo "Test docker_containers inventory 2" -ansible-playbook -i inventory_2.docker.yml playbooks/test_inventory_2.yml +rm -f /tmp/ansible-docker-test-docker-inventory-container-*-labels.txt +ansible-playbook -i inventory_2.docker.yml playbooks/test_inventory_2.yml "$@" + +echo "Validate that 'EVALUATED' does not appear in the labels" +for FILENAME in /tmp/ansible-docker-test-docker-inventory-container-*-labels.txt; do + grep -qv EVALUATED "${FILENAME}" || ( echo "${FILENAME} contains EVALUATED!" && exit 1 ) +done diff --git a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_machine/playbooks/pre-setup.yml b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_machine/playbooks/pre-setup.yml index 3c6c1367c..aacaf67bf 100644 --- a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_machine/playbooks/pre-setup.yml +++ b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_machine/playbooks/pre-setup.yml @@ -10,6 +10,10 @@ include_role: name: setup_docker + - name: Setup Docker Python deps + import_role: + name: setup_docker_python_deps + # There seems to be no better way to install docker-machine. At least I couldn't find any packages for RHEL7/8. - name: Download docker-machine binary vars: diff --git a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_machine/runme.sh b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_machine/runme.sh index b39a08c41..5d00aa666 100755 --- a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_machine/runme.sh +++ b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_machine/runme.sh @@ -23,14 +23,14 @@ SAVED_PATH="$PATH" cleanup() { PATH="${SAVED_PATH}" echo "Cleanup" - ansible-playbook -i teardown.docker_machine.yml playbooks/teardown.yml + ansible-playbook -i teardown.docker_machine.yml playbooks/teardown.yml "$@" echo "Done" } trap cleanup INT TERM EXIT echo "Pre-setup (install docker, docker-machine)" -ANSIBLE_ROLES_PATH=.. ansible-playbook playbooks/pre-setup.yml +ANSIBLE_ROLES_PATH=.. ansible-playbook playbooks/pre-setup.yml "$@" echo "Print docker-machine version" docker-machine --version @@ -43,10 +43,10 @@ echo "Test that the docker_machine inventory plugin is being loaded" ANSIBLE_DEBUG=yes ansible-inventory -i inventory_1.docker_machine.yml --list | grep -F "Loading InventoryModule 'docker_machine'" echo "Setup" -ansible-playbook playbooks/setup.yml +ansible-playbook playbooks/setup.yml "$@" echo "Test docker_machine inventory 1" -ansible-playbook -i inventory_1.docker_machine.yml playbooks/test_inventory_1.yml +ansible-playbook -i inventory_1.docker_machine.yml playbooks/test_inventory_1.yml "$@" echo "Activate Docker Machine mock" PATH=${SCRIPT_DIR}:$PATH diff --git a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_swarm/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_swarm/meta/main.yml index 5769ff1cb..6407d95b0 100644 --- a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_swarm/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_swarm/meta/main.yml @@ -5,3 +5,4 @@ dependencies: - setup_docker + - setup_docker_sdk_for_python diff --git a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_swarm/playbooks/swarm_cleanup.yml b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_swarm/playbooks/swarm_cleanup.yml index 4039a6bde..a6bedd41a 100644 --- a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_swarm/playbooks/swarm_cleanup.yml +++ b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_swarm/playbooks/swarm_cleanup.yml @@ -11,12 +11,3 @@ docker_swarm: state: absent force: true - - - name: remove docker pagkages - action: "{{ ansible_facts.pkg_mgr }}" - args: - name: - - docker - - docker-ce - - docker-ce-cli - state: absent diff --git a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_swarm/playbooks/swarm_setup.yml b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_swarm/playbooks/swarm_setup.yml index 1ae4c63fe..9dd43dd2e 100644 --- a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_swarm/playbooks/swarm_setup.yml +++ b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_swarm/playbooks/swarm_setup.yml @@ -13,6 +13,10 @@ import_role: name: setup_docker + - name: Setup Docker SDK for Python + import_role: + name: setup_docker_sdk_for_python + - name: Create a Swarm cluster community.docker.docker_swarm: state: present diff --git a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_swarm/runme.sh b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_swarm/runme.sh index 746b8592f..1759b888b 100755 --- a/ansible_collections/community/docker/tests/integration/targets/inventory_docker_swarm/runme.sh +++ b/ansible_collections/community/docker/tests/integration/targets/inventory_docker_swarm/runme.sh @@ -9,17 +9,17 @@ set -euo pipefail cleanup() { echo "Cleanup" - ansible-playbook playbooks/swarm_cleanup.yml + ansible-playbook playbooks/swarm_cleanup.yml "$@" echo "Done" } trap cleanup INT TERM EXIT echo "Setup" -ANSIBLE_ROLES_PATH=.. ansible-playbook playbooks/swarm_setup.yml +ANSIBLE_ROLES_PATH=.. ansible-playbook playbooks/swarm_setup.yml "$@" echo "Test docker_swarm inventory 1" -ansible-playbook -i inventory_1.docker_swarm.yml playbooks/test_inventory_1.yml +ansible-playbook -i inventory_1.docker_swarm.yml playbooks/test_inventory_1.yml "$@" echo "Test docker_swarm inventory 2" -ansible-playbook -i inventory_2.docker_swarm.yml playbooks/test_inventory_2.yml +ansible-playbook -i inventory_2.docker_swarm.yml playbooks/test_inventory_2.yml "$@" diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker/defaults/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker/defaults/main.yml index 0509fe0ef..412fc5644 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker/defaults/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker/defaults/main.yml @@ -5,7 +5,6 @@ docker_cli_version: '0.0' docker_api_version: '0.0' -docker_py_version: '0.0' docker_skip_cleanup: true docker_prereq_packages: [] docker_packages: @@ -13,10 +12,6 @@ docker_packages: docker_cli_packages: - docker-ce-cli -docker_pip_extra_packages: [] -docker_pip_package: docker -docker_pip_package_limit: '' - docker_cleanup_packages: - docker - docker-ce diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker/handlers/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker/handlers/main.yml index 96ca226c7..ec68f655c 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker/handlers/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker/handlers/main.yml @@ -3,13 +3,6 @@ # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later -- name: Remove pip packages - pip: - state: present - name: "{{ [docker_pip_package] | union(docker_pip_extra_packages) }}" - listen: cleanup docker - when: not docker_skip_cleanup | bool - - name: Remove docker pagkages action: "{{ ansible_facts.pkg_mgr }}" args: diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker/tasks/Alpine.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker/tasks/Alpine.yml index 64f6eb34a..cb07fbf78 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker/tasks/Alpine.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker/tasks/Alpine.yml @@ -5,6 +5,7 @@ - name: Install docker apk: - name: docker + name: + - docker update_cache: true notify: cleanup docker diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker/tasks/main.yml index e8f078d3b..e3d7c413f 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker/tasks/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker/tasks/main.yml @@ -25,6 +25,14 @@ set_fact: needs_docker_daemon: '{{ not ansible_module_running_in_container }}' + - name: + debug: + msg: |- + OS family: {{ ansible_facts.os_family }} + Distribution: {{ ansible_facts.distribution }} + Distribution major version: {{ ansible_facts.distribution_major_version }} + Distribution full version: {{ ansible_facts.distribution_version }} + - name: Include distribution specific variables include_vars: "{{ lookup('first_found', params) }}" vars: @@ -68,36 +76,18 @@ register: docker_api_version_stdout ignore_errors: true - - name: Limit docker pypi package version to < 4.3.0 - set_fact: - docker_pip_package_limit: '<4.3.0' - when: (docker_api_version_stdout.stdout | default('0.0')) is version('1.39', '<') - - - name: Install/upgrade Python requirements - pip: - name: "{{ [docker_pip_package ~ docker_pip_package_limit] + docker_pip_extra_packages }}" - extra_args: "-c {{ remote_constraints }}" - state: "{{ 'latest' if force_docker_sdk_for_python_pypi | default(false) else 'present' }}" - notify: cleanup docker - # Detect docker CLI and docker-py versions - name: Check Docker CLI version command: "docker version -f {% raw %}'{{.Client.Version}}'{% endraw %}" register: docker_cli_version_stdout ignore_errors: true - - name: Check docker-py version - command: "{{ ansible_python.executable }} -c 'import docker; print(docker.__version__)'" - register: docker_py_version_stdout - ignore_errors: true - - set_fact: docker_cli_version: "{{ docker_cli_version_stdout.stdout | default('0.0') }}" docker_api_version: "{{ docker_api_version_stdout.stdout | default('0.0') }}" - docker_py_version: "{{ docker_py_version_stdout.stdout | default('0.0') }}" - debug: - msg: "Docker CLI version: {{ docker_cli_version }}; Docker API version: {{ docker_api_version }}; docker-py library version: {{ docker_py_version }}" + msg: "Docker CLI version: {{ docker_cli_version }}; Docker API version: {{ docker_api_version }}" - block: # Cleanup docker daemon @@ -162,13 +152,3 @@ images: "{{ docker_images.stdout_lines | default([]) }}" when: docker_cli_version is version('0.0', '>') - - - name: Inspect current container - docker_container_info: - name: "{{ ansible_module_container_id }}" - register: current_container_info - when: ansible_module_running_in_container - - - name: Determine network name - set_fact: - current_container_network_ip: "{{ (current_container_info.container.NetworkSettings.Networks | dictsort)[0].0 | default('') if ansible_module_running_in_container else '' }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker/vars/RedHat-7.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker/vars/RedHat-7.yml index b1e28987c..bbf9ed32c 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker/vars/RedHat-7.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker/vars/RedHat-7.yml @@ -8,6 +8,3 @@ docker_prereq_packages: - device-mapper-persistent-data - lvm2 - libseccomp - -docker_pip_extra_packages: - - requests==2.6.0 diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker/vars/Ubuntu-14.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker/vars/Ubuntu-14.yml index d7c82455b..f55df21f8 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker/vars/Ubuntu-14.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker/vars/Ubuntu-14.yml @@ -2,9 +2,3 @@ # Copyright (c) Ansible Project # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later - -docker_pip_extra_packages: - # Installing requests >=2.12.0 on Ubuntu 14.04 breaks certificate validation. We restrict to an older version - # to ensure out get_url tests work out fine. This is only an issue if pyOpenSSL is also installed. - # Not sure why RHEL7 needs this specific version - - requests==2.6.0 diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker/vars/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker/vars/main.yml index e4eafc24e..1859bdfe6 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker/vars/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker/vars/main.yml @@ -4,10 +4,14 @@ # SPDX-License-Identifier: GPL-3.0-or-later docker_test_image_digest_v1: e004c2cc521c95383aebb1fb5893719aa7a8eae2e7a71f316a4410784edb00a9 +docker_test_image_digest_v1_image_id: 758ec7f3a1ee85f8f08399b55641bfb13e8c1109287ddc5e22b68c3d653152ee docker_test_image_digest_v2: ee44b399df993016003bf5466bd3eeb221305e9d0fa831606bc7902d149c775b +docker_test_image_digest_v2_image_id: dc3bacd8b5ea796cea5d6070c8f145df9076f26a6bc1c8981fd5b176d37de843 docker_test_image_digest_base: quay.io/ansible/docker-test-containers docker_test_image_hello_world: quay.io/ansible/docker-test-containers:hello-world +docker_test_image_hello_world_image_id: sha256:bf756fb1ae65adf866bd8c456593cd24beb6a0a061dedf42b26a993176745f6b docker_test_image_hello_world_base: quay.io/ansible/docker-test-containers +docker_test_image_hello_world_platform: docker.io/library/hello-world:latest docker_test_image_busybox: quay.io/ansible/docker-test-containers:busybox docker_test_image_alpine: quay.io/ansible/docker-test-containers:alpine3.8 docker_test_image_alpine_different: quay.io/ansible/docker-test-containers:alpine3.7 diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/meta/main.yml new file mode 100644 index 000000000..5769ff1cb --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/meta/main.yml @@ -0,0 +1,7 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +dependencies: + - setup_docker diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/Alpine.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/Alpine.yml new file mode 100644 index 000000000..48d357a3b --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/Alpine.yml @@ -0,0 +1,13 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: Buildx is available from Alpine 3.14 on + set_fact: + docker_has_buildx: "{{ ansible_facts.distribution_version is version('3.14', '>=') }}" + +- name: Install Docker buildx CLI plugin + apk: + name: docker-cli-buildx + when: docker_has_buildx diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/Archlinux.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/Archlinux.yml new file mode 100644 index 000000000..5d2709017 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/Archlinux.yml @@ -0,0 +1,8 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: Install Docker buildx CLI plugin + community.general.pacman: + name: docker-buildx diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/Debian.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/Debian.yml new file mode 100644 index 000000000..a93d788ac --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/Debian.yml @@ -0,0 +1,7 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +# nothing to do +[] diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/Fedora.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/Fedora.yml new file mode 100644 index 000000000..a93d788ac --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/Fedora.yml @@ -0,0 +1,7 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +# nothing to do +[] diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/vars/RedHat-7.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/RedHat-7.yml index c5d18002b..a93d788ac 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/vars/RedHat-7.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/RedHat-7.yml @@ -3,4 +3,5 @@ # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later -skip_docker_compose: true +# nothing to do +[] diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/RedHat-8.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/RedHat-8.yml new file mode 100644 index 000000000..6bb81a941 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/RedHat-8.yml @@ -0,0 +1,8 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: For some reason we don't have the buildx plugin + set_fact: + docker_has_buildx: false diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/RedHat-9.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/RedHat-9.yml new file mode 100644 index 000000000..a93d788ac --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/RedHat-9.yml @@ -0,0 +1,7 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +# nothing to do +[] diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/Suse.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/Suse.yml new file mode 100644 index 000000000..fd667cc24 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/Suse.yml @@ -0,0 +1,14 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: Buildx is available in OpenSuSE 15.5, not sure which versions before + set_fact: + docker_has_buildx: "{{ ansible_facts.distribution_version is version('15.5', '>=') }}" + +- name: Install Docker buildx CLI plugin + community.general.zypper: + name: docker-buildx + disable_gpg_check: true + when: docker_has_buildx diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/main.yml new file mode 100644 index 000000000..979ad2ba6 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/main.yml @@ -0,0 +1,49 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +- name: Setup Docker + when: ansible_facts.distribution ~ ansible_facts.distribution_major_version not in ['CentOS6', 'RedHat6'] + block: + - name: + debug: + msg: |- + OS family: {{ ansible_facts.os_family }} + Distribution: {{ ansible_facts.distribution }} + Distribution major version: {{ ansible_facts.distribution_major_version }} + Distribution full version: {{ ansible_facts.distribution_version }} + + - name: Set facts for Docker features to defaults + set_fact: + docker_has_buildx: true + + - name: Include distribution specific variables + include_vars: "{{ lookup('first_found', params) }}" + vars: + params: + files: + - "{{ ansible_facts.distribution }}-{{ ansible_facts.distribution_major_version }}.yml" + - "{{ ansible_facts.os_family }}-{{ ansible_facts.distribution_major_version }}.yml" + - "{{ ansible_facts.distribution }}.yml" + - "{{ ansible_facts.os_family }}.yml" + - default.yml + paths: + - "{{ role_path }}/vars" + + - name: Include distribution specific tasks + include_tasks: "{{ lookup('first_found', params) }}" + vars: + params: + files: + - "{{ ansible_facts.distribution }}-{{ ansible_facts.distribution_major_version }}.yml" + - "{{ ansible_facts.os_family }}-{{ ansible_facts.distribution_major_version }}.yml" + - "{{ ansible_facts.distribution }}.yml" + - "{{ ansible_facts.os_family }}.yml" + paths: + - "{{ role_path }}/tasks" diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/nothing.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/nothing.yml new file mode 100644 index 000000000..a93d788ac --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/tasks/nothing.yml @@ -0,0 +1,7 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +# nothing to do +[] diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/vars/default.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/vars/default.yml index f55df21f8..f55df21f8 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/vars/default.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_buildx/vars/default.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/meta/main.yml new file mode 100644 index 000000000..5769ff1cb --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/meta/main.yml @@ -0,0 +1,7 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +dependencies: + - setup_docker diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/Alpine.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/Alpine.yml new file mode 100644 index 000000000..7190dbad5 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/Alpine.yml @@ -0,0 +1,13 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: Compose is available from Alpine 3.15 on + set_fact: + docker_has_compose: "{{ ansible_facts.distribution_version is version('3.15', '>=') }}" + +- name: Install Docker compose CLI plugin + apk: + name: docker-cli-compose + when: docker_has_compose diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/Archlinux.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/Archlinux.yml new file mode 100644 index 000000000..89dedb0b2 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/Archlinux.yml @@ -0,0 +1,8 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: Install Docker compose CLI plugin + community.general.pacman: + name: docker-compose diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/Debian.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/Debian.yml new file mode 100644 index 000000000..a93d788ac --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/Debian.yml @@ -0,0 +1,7 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +# nothing to do +[] diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/Fedora.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/Fedora.yml new file mode 100644 index 000000000..a93d788ac --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/Fedora.yml @@ -0,0 +1,7 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +# nothing to do +[] diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/RedHat-7.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/RedHat-7.yml new file mode 100644 index 000000000..a93d788ac --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/RedHat-7.yml @@ -0,0 +1,7 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +# nothing to do +[] diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/RedHat-8.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/RedHat-8.yml new file mode 100644 index 000000000..b4ece59ae --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/RedHat-8.yml @@ -0,0 +1,8 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: For some reason we don't have the buildx plugin + set_fact: + docker_has_compose: false diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/RedHat-9.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/RedHat-9.yml new file mode 100644 index 000000000..a93d788ac --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/RedHat-9.yml @@ -0,0 +1,7 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +# nothing to do +[] diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/Suse.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/Suse.yml new file mode 100644 index 000000000..5b80302bf --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/Suse.yml @@ -0,0 +1,14 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +- name: Compose is available in OpenSuSE 15.5, not sure which versions before + set_fact: + docker_has_compose: "{{ ansible_facts.distribution_version is version('15.5', '>=') }}" + +- name: Install Docker compose CLI plugin + community.general.zypper: + name: docker-compose + disable_gpg_check: true + when: docker_has_compose diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/main.yml new file mode 100644 index 000000000..7a971c229 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/main.yml @@ -0,0 +1,65 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +- name: Setup Docker + when: ansible_facts.distribution ~ ansible_facts.distribution_major_version not in ['CentOS6', 'RedHat6'] + block: + - name: + debug: + msg: |- + OS family: {{ ansible_facts.os_family }} + Distribution: {{ ansible_facts.distribution }} + Distribution major version: {{ ansible_facts.distribution_major_version }} + Distribution full version: {{ ansible_facts.distribution_version }} + + - name: Set facts for Docker features to defaults + set_fact: + docker_has_compose: true + docker_compose_version: "0.0" + + - name: Include distribution specific variables + include_vars: "{{ lookup('first_found', params) }}" + vars: + params: + files: + - "{{ ansible_facts.distribution }}-{{ ansible_facts.distribution_major_version }}.yml" + - "{{ ansible_facts.os_family }}-{{ ansible_facts.distribution_major_version }}.yml" + - "{{ ansible_facts.distribution }}.yml" + - "{{ ansible_facts.os_family }}.yml" + - default.yml + paths: + - "{{ role_path }}/vars" + + - name: Include distribution specific tasks + include_tasks: "{{ lookup('first_found', params) }}" + vars: + params: + files: + - "{{ ansible_facts.distribution }}-{{ ansible_facts.distribution_major_version }}.yml" + - "{{ ansible_facts.os_family }}-{{ ansible_facts.distribution_major_version }}.yml" + - "{{ ansible_facts.distribution }}.yml" + - "{{ ansible_facts.os_family }}.yml" + paths: + - "{{ role_path }}/tasks" + + - name: Obtain Docker Compose version + when: docker_has_compose + block: + - command: + cmd: docker info --format '{% raw %}{{ json .ClientInfo.Plugins }}{% endraw %}' + register: docker_cli_plugins_stdout + - set_fact: + docker_has_compose: >- + {{ docker_cli_plugins_stdout.stdout | from_json | selectattr('Name', 'eq', 'compose') | map(attribute='Version') | length > 0 }} + docker_compose_version: >- + {{ docker_cli_plugins_stdout.stdout | from_json | selectattr('Name', 'eq', 'compose') | map(attribute='Version') | first | default('0.0') | regex_replace('^v', '') }} + + - debug: + msg: "Has Docker compoes plugin: {{ docker_has_compose }}; Docker compose plugin version: {{ docker_compose_version }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/nothing.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/nothing.yml new file mode 100644 index 000000000..a93d788ac --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/tasks/nothing.yml @@ -0,0 +1,7 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +# nothing to do +[] diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/vars/default.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/vars/default.yml new file mode 100644 index 000000000..f55df21f8 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_cli_compose/vars/default.yml @@ -0,0 +1,4 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/defaults/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/defaults/main.yml new file mode 100644 index 000000000..0ebf5269f --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/defaults/main.yml @@ -0,0 +1,15 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +skip_docker_compose: false + +docker_pip_extra_packages: [] +docker_pip_package: docker +docker_pip_package_limit: '<7.0.0' + +docker_compose_packages: + - docker-compose +docker_compose_pip_packages: + - docker-compose diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/meta/main.yml index b6e985d7f..b6e985d7f 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/meta/main.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/tasks/Alpine.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/tasks/Alpine.yml index 85042fdf0..85042fdf0 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/tasks/Alpine.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/tasks/Alpine.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/tasks/Archlinux.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/tasks/Archlinux.yml index 2e62ff052..2e62ff052 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/tasks/Archlinux.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/tasks/Archlinux.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/tasks/Debian.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/tasks/Debian.yml index 1729ccabe..1729ccabe 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/tasks/Debian.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/tasks/Debian.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/tasks/Fedora.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/tasks/Fedora.yml index a5f3d467b..a5f3d467b 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/tasks/Fedora.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/tasks/Fedora.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/tasks/RedHat-7.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/tasks/RedHat-7.yml index 62f0e3738..62f0e3738 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/tasks/RedHat-7.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/tasks/RedHat-7.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/tasks/RedHat-8.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/tasks/RedHat-8.yml index 549868455..549868455 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/tasks/RedHat-8.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/tasks/RedHat-8.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/tasks/RedHat-9.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/tasks/RedHat-9.yml index 549868455..549868455 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/tasks/RedHat-9.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/tasks/RedHat-9.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/tasks/Suse.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/tasks/Suse.yml index 46e50fd4d..46e50fd4d 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/tasks/Suse.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/tasks/Suse.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/tasks/main.yml index 630885104..630885104 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/tasks/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/tasks/main.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/tasks/setup.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/tasks/setup.yml index 08c68a89a..0db7293df 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/tasks/setup.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/tasks/setup.yml @@ -37,21 +37,41 @@ paths: - "{{ role_path }}/tasks" + - name: Limit docker pypi package version to < 4.3.0 + set_fact: + docker_pip_package_limit: '<4.3.0' + when: docker_api_version is version('1.39', '<') + + - name: Install/upgrade Docker SDK for Python + pip: + name: "{{ [docker_pip_package ~ docker_pip_package_limit] + docker_pip_extra_packages }}" + extra_args: "-c {{ remote_constraints }}" + state: present + - name: Install docker-compose pip: state: present name: "{{ docker_compose_pip_packages }}" extra_args: "-c {{ remote_constraints }}" + - name: Check docker-py version + command: "{{ ansible_python.executable }} -c 'import docker; print(docker.__version__)'" + register: docker_py_version_stdout + ignore_errors: true + - name: Register docker-compose version command: "{{ ansible_python.executable }} -c 'import compose; print(compose.__version__)'" register: docker_compose_version ignore_errors: true - - name: Declare docker-compose version + - name: Declare docker-py and docker-compose version set_fact: + docker_py_version: "{{ docker_py_version_stdout.stdout | default('0.0') }}" docker_compose_version: "{{ docker_compose_version.stdout | default('0.0.0') }}" + - debug: + msg: "Docker SDK for Python version: {{ docker_py_version }}; Docker Compose version: {{ docker_compose_version }}" + - name: Declare docker-compose as existing set_fact: has_docker_compose: true diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/defaults/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Alpine.yml index f701c90e3..fb03ae738 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/defaults/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Alpine.yml @@ -3,8 +3,9 @@ # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later -skip_docker_compose: false docker_compose_packages: - docker-compose docker_compose_pip_packages: - docker-compose + # Force PyYAML to 5.3.1 + - PyYAML==5.3.1 diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Archlinux.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Archlinux.yml new file mode 100644 index 000000000..f0698a3e4 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Archlinux.yml @@ -0,0 +1,9 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +docker_compose_pip_packages: + - docker-compose + # Force PyYAML to 5.3.1 + - PyYAML==5.3.1 diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/vars/CentOS-8.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/CentOS-8.yml index c5d18002b..c5d18002b 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/vars/CentOS-8.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/CentOS-8.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Debian-11.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Debian-11.yml new file mode 100644 index 000000000..727d541fd --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Debian-11.yml @@ -0,0 +1,8 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +docker_pip_extra_packages: + # https://github.com/docker/docker-py/issues/3113 + - requests<2.29.0 diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Debian-12.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Debian-12.yml new file mode 100644 index 000000000..727d541fd --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Debian-12.yml @@ -0,0 +1,8 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +docker_pip_extra_packages: + # https://github.com/docker/docker-py/issues/3113 + - requests<2.29.0 diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/RedHat-7.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/RedHat-7.yml new file mode 100644 index 000000000..99b27c1c6 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/RedHat-7.yml @@ -0,0 +1,10 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +skip_docker_compose: true + +docker_pip_extra_packages: + # Not sure why RHEL7 needs this specific version + - requests==2.6.0 diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/vars/RedHat-8.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/RedHat-8.yml index 7279eac17..7279eac17 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/vars/RedHat-8.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/RedHat-8.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/vars/RedHat-9.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/RedHat-9.yml index 7279eac17..7279eac17 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/vars/RedHat-9.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/RedHat-9.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/vars/Suse-py2.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Suse-py2.yml index c5d18002b..c5d18002b 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/vars/Suse-py2.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Suse-py2.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/vars/Suse-py3.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Suse-py3.yml index 46c58b253..7279eac17 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/vars/Suse-py3.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Suse-py3.yml @@ -3,4 +3,4 @@ # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later -docker_compose_pip_packages: [] +docker_compose_packages: [] diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Ubuntu-14.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Ubuntu-14.yml new file mode 100644 index 000000000..f701e1f77 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Ubuntu-14.yml @@ -0,0 +1,9 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +docker_pip_extra_packages: + # Installing requests >=2.12.0 on Ubuntu 14.04 breaks certificate validation. We restrict to an older version + # to ensure out get_url tests work out fine. This is only an issue if pyOpenSSL is also installed. + - requests==2.6.0 diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/vars/Ubuntu-16.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Ubuntu-16.yml index c5d18002b..c5d18002b 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/vars/Ubuntu-16.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Ubuntu-16.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/vars/Ubuntu-18.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Ubuntu-18.yml index c5d18002b..c5d18002b 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/vars/Ubuntu-18.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Ubuntu-18.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/vars/Ubuntu.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Ubuntu.yml index 46c58b253..46c58b253 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose/vars/Ubuntu.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/Ubuntu.yml diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/default.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/default.yml new file mode 100644 index 000000000..f55df21f8 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_compose_v1/vars/default.yml @@ -0,0 +1,4 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_current_container_network_ip/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_current_container_network_ip/meta/main.yml new file mode 100644 index 000000000..2a770b722 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_current_container_network_ip/meta/main.yml @@ -0,0 +1,7 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +dependencies: + - setup_docker_python_deps diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_current_container_network_ip/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_current_container_network_ip/tasks/main.yml new file mode 100644 index 000000000..21ed39723 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_current_container_network_ip/tasks/main.yml @@ -0,0 +1,25 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +- name: Setup Docker + when: ansible_facts.distribution ~ ansible_facts.distribution_major_version not in ['CentOS6', 'RedHat6'] + block: + - name: Detect whether we are running inside a container + current_container_facts: + + - name: Inspect current container + docker_container_info: + name: "{{ ansible_module_container_id }}" + register: current_container_info + when: ansible_module_running_in_container + + - name: Determine network name + set_fact: + current_container_network_ip: "{{ (current_container_info.container.NetworkSettings.Networks | dictsort)[0].0 | default('') if ansible_module_running_in_container else '' }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_python_deps/aliases b/ansible_collections/community/docker/tests/integration/targets/setup_docker_python_deps/aliases new file mode 100644 index 000000000..0a430dff1 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_python_deps/aliases @@ -0,0 +1,5 @@ +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +needs/target/setup_epel diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_python_deps/defaults/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_python_deps/defaults/main.yml new file mode 100644 index 000000000..cd11129ed --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_python_deps/defaults/main.yml @@ -0,0 +1,12 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +docker_pip_api_packages: + - requests + # - paramiko + # - pyOpenSSL + +docker_pip_api_packages_python2: + - backports.ssl-match-hostname diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_python_deps/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_python_deps/meta/main.yml new file mode 100644 index 000000000..d4a5c7d05 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_python_deps/meta/main.yml @@ -0,0 +1,8 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +dependencies: + - setup_remote_constraints + - setup_pkg_mgr diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_python_deps/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_python_deps/tasks/main.yml new file mode 100644 index 000000000..67c2651d2 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_python_deps/tasks/main.yml @@ -0,0 +1,15 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +- name: Install/upgrade Python requirements + pip: + name: "{{ docker_pip_api_packages + (docker_pip_api_packages_python2 if ansible_facts.python.version.major == 2 else []) }}" + extra_args: "-c {{ remote_constraints }}" + state: present diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_python_deps/vars/RedHat-7.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_python_deps/vars/RedHat-7.yml new file mode 100644 index 000000000..ff5720177 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_python_deps/vars/RedHat-7.yml @@ -0,0 +1,10 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +docker_pip_api_packages: + # Not sure why RHEL7 needs this specific version of requests + - requests==2.6.0 + # - paramiko + # - pyOpenSSL diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_python_deps/vars/Ubuntu-14.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_python_deps/vars/Ubuntu-14.yml new file mode 100644 index 000000000..41a8bceb5 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_python_deps/vars/Ubuntu-14.yml @@ -0,0 +1,11 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +docker_pip_api_packages: + # Installing requests >=2.12.0 on Ubuntu 14.04 breaks certificate validation. We restrict to an older version + # to ensure out get_url tests work out fine. This is only an issue if pyOpenSSL is also installed. + - requests==2.6.0 + # - paramiko + # - pyOpenSSL diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_python_deps/vars/default.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_python_deps/vars/default.yml new file mode 100644 index 000000000..f55df21f8 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_python_deps/vars/default.yml @@ -0,0 +1,4 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_registry/aliases b/ansible_collections/community/docker/tests/integration/targets/setup_docker_registry/aliases index 357972ff5..e1026a831 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_registry/aliases +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_registry/aliases @@ -3,4 +3,5 @@ # SPDX-License-Identifier: GPL-3.0-or-later needs/target/setup_docker +needs/target/setup_docker_current_container_network_ip needs/target/setup_openssl diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_registry/handlers/cleanup.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_registry/handlers/cleanup.yml index 0a1f363cb..6833be48a 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_registry/handlers/cleanup.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_registry/handlers/cleanup.yml @@ -4,9 +4,8 @@ # SPDX-License-Identifier: GPL-3.0-or-later - name: "Make sure all images are removed" - docker_image: + docker_image_remove: name: "{{ item }}" - state: absent with_items: "{{ docker_registry_setup_inames }}" - name: "Get registry logs" diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_registry/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_registry/meta/main.yml index 4ab14ed10..f13fc1adc 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_registry/meta/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_registry/meta/main.yml @@ -5,5 +5,7 @@ dependencies: #- setup_docker -- done in setup.yml, to work around cleanup problems! + #- setup_docker_current_container_network_ip + - setup_docker_python_deps - setup_openssl - setup_remote_tmp_dir diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_registry/tasks/setup.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_registry/tasks/setup.yml index b3a8662ee..454c6604a 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_registry/tasks/setup.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_registry/tasks/setup.yml @@ -16,6 +16,10 @@ include_role: name: setup_docker +- name: Figure out current container's network IP + include_role: + name: setup_docker_current_container_network_ip + - name: Create random name prefix and test registry name set_fact: docker_registry_container_name_registry: '{{ ''ansible-docker-test-registry-%0x'' % ((2**32) | random) }}' @@ -36,10 +40,10 @@ - debug: msg: Using test registry name {{ docker_registry_container_name_registry }} and nginx frontend names {{ docker_registry_container_name_nginx }} and {{ docker_registry_container_name_nginx2 }} -- fail: msg="Too old docker / docker-py version to set up docker registry!" - when: not(docker_py_version is version('1.8.0', '>=') and docker_api_version is version('1.25', '>=')) and (ansible_distribution != 'CentOS' or ansible_distribution_major_version|int > 6) +- fail: msg="Too old docker version to set up docker registry!" + when: not(docker_api_version is version('1.25', '>=')) and (ansible_distribution != 'CentOS' or ansible_distribution_major_version|int > 6) -- when: docker_py_version is version('1.8.0', '>=') and docker_api_version is version('1.25', '>=') +- when: docker_api_version is version('1.25', '>=') block: # Set up registry container diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_registry/vars/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_registry/vars/main.yml index e4eafc24e..1859bdfe6 100644 --- a/ansible_collections/community/docker/tests/integration/targets/setup_docker_registry/vars/main.yml +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_registry/vars/main.yml @@ -4,10 +4,14 @@ # SPDX-License-Identifier: GPL-3.0-or-later docker_test_image_digest_v1: e004c2cc521c95383aebb1fb5893719aa7a8eae2e7a71f316a4410784edb00a9 +docker_test_image_digest_v1_image_id: 758ec7f3a1ee85f8f08399b55641bfb13e8c1109287ddc5e22b68c3d653152ee docker_test_image_digest_v2: ee44b399df993016003bf5466bd3eeb221305e9d0fa831606bc7902d149c775b +docker_test_image_digest_v2_image_id: dc3bacd8b5ea796cea5d6070c8f145df9076f26a6bc1c8981fd5b176d37de843 docker_test_image_digest_base: quay.io/ansible/docker-test-containers docker_test_image_hello_world: quay.io/ansible/docker-test-containers:hello-world +docker_test_image_hello_world_image_id: sha256:bf756fb1ae65adf866bd8c456593cd24beb6a0a061dedf42b26a993176745f6b docker_test_image_hello_world_base: quay.io/ansible/docker-test-containers +docker_test_image_hello_world_platform: docker.io/library/hello-world:latest docker_test_image_busybox: quay.io/ansible/docker-test-containers:busybox docker_test_image_alpine: quay.io/ansible/docker-test-containers:alpine3.8 docker_test_image_alpine_different: quay.io/ansible/docker-test-containers:alpine3.7 diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_sdk_for_python/aliases b/ansible_collections/community/docker/tests/integration/targets/setup_docker_sdk_for_python/aliases new file mode 100644 index 000000000..0a430dff1 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_sdk_for_python/aliases @@ -0,0 +1,5 @@ +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +needs/target/setup_epel diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_sdk_for_python/defaults/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_sdk_for_python/defaults/main.yml new file mode 100644 index 000000000..29a257f81 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_sdk_for_python/defaults/main.yml @@ -0,0 +1,10 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +docker_py_version: '0.0' + +docker_pip_extra_packages: [] +docker_pip_package: docker +docker_pip_package_limit: '' diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_sdk_for_python/meta/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_sdk_for_python/meta/main.yml new file mode 100644 index 000000000..d4a5c7d05 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_sdk_for_python/meta/main.yml @@ -0,0 +1,8 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +dependencies: + - setup_remote_constraints + - setup_pkg_mgr diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_sdk_for_python/tasks/main.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_sdk_for_python/tasks/main.yml new file mode 100644 index 000000000..91cd5fcba --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_sdk_for_python/tasks/main.yml @@ -0,0 +1,47 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +#################################################################### +# WARNING: These are designed specifically for Ansible tests # +# and should not be used as examples of how to write Ansible roles # +#################################################################### + +- name: Setup Docker SDK for Python + when: ansible_facts.distribution ~ ansible_facts.distribution_major_version not in ['CentOS6', 'RedHat6'] + block: + - name: Include distribution specific variables + include_vars: "{{ lookup('first_found', params) }}" + vars: + params: + files: + - "{{ ansible_facts.distribution }}-{{ ansible_facts.distribution_major_version }}.yml" + - "{{ ansible_facts.os_family }}-{{ ansible_facts.distribution_major_version }}.yml" + - "{{ ansible_facts.distribution }}.yml" + - "{{ ansible_facts.os_family }}.yml" + - default.yml + paths: + - "{{ role_path }}/vars" + + - name: Limit docker pypi package version to < 4.3.0 + set_fact: + docker_pip_package_limit: '<4.3.0' + when: docker_api_version is version('1.39', '<') + + - name: Install/upgrade Python requirements + pip: + name: "{{ [docker_pip_package ~ docker_pip_package_limit] + docker_pip_extra_packages }}" + extra_args: "-c {{ remote_constraints }}" + state: "{{ 'latest' if force_docker_sdk_for_python_pypi | default(false) else 'present' }}" + + - name: Check docker-py version + command: "{{ ansible_python.executable }} -c 'import docker; print(docker.__version__)'" + register: docker_py_version_stdout + ignore_errors: true + + - set_fact: + docker_py_version: "{{ docker_py_version_stdout.stdout | default('0.0') }}" + + - debug: + msg: "Docker SDK for Python version: {{ docker_py_version }}" diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_sdk_for_python/vars/RedHat-7.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_sdk_for_python/vars/RedHat-7.yml new file mode 100644 index 000000000..9fa5efa5c --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_sdk_for_python/vars/RedHat-7.yml @@ -0,0 +1,8 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +docker_pip_extra_packages: + # Not sure why RHEL7 needs this specific version + - requests==2.6.0 diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_sdk_for_python/vars/Ubuntu-14.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_sdk_for_python/vars/Ubuntu-14.yml new file mode 100644 index 000000000..f701e1f77 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_sdk_for_python/vars/Ubuntu-14.yml @@ -0,0 +1,9 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +docker_pip_extra_packages: + # Installing requests >=2.12.0 on Ubuntu 14.04 breaks certificate validation. We restrict to an older version + # to ensure out get_url tests work out fine. This is only an issue if pyOpenSSL is also installed. + - requests==2.6.0 diff --git a/ansible_collections/community/docker/tests/integration/targets/setup_docker_sdk_for_python/vars/default.yml b/ansible_collections/community/docker/tests/integration/targets/setup_docker_sdk_for_python/vars/default.yml new file mode 100644 index 000000000..f55df21f8 --- /dev/null +++ b/ansible_collections/community/docker/tests/integration/targets/setup_docker_sdk_for_python/vars/default.yml @@ -0,0 +1,4 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later diff --git a/ansible_collections/community/docker/tests/sanity/extra/action-group.json b/ansible_collections/community/docker/tests/sanity/extra/action-group.json new file mode 100644 index 000000000..477ca3f8b --- /dev/null +++ b/ansible_collections/community/docker/tests/sanity/extra/action-group.json @@ -0,0 +1,11 @@ +{ + "include_symlinks": true, + "prefixes": [ + "meta/runtime.yml", + "plugins/modules/" + ], + "output": "path-message", + "requirements": [ + "pyyaml" + ] +} diff --git a/ansible_collections/community/docker/tests/sanity/ignore-2.10.txt.license b/ansible_collections/community/docker/tests/sanity/extra/action-group.json.license index edff8c768..edff8c768 100644 --- a/ansible_collections/community/docker/tests/sanity/ignore-2.10.txt.license +++ b/ansible_collections/community/docker/tests/sanity/extra/action-group.json.license diff --git a/ansible_collections/community/docker/tests/sanity/extra/action-group.py b/ansible_collections/community/docker/tests/sanity/extra/action-group.py new file mode 100755 index 000000000..efe31ab91 --- /dev/null +++ b/ansible_collections/community/docker/tests/sanity/extra/action-group.py @@ -0,0 +1,82 @@ +#!/usr/bin/env python +# Copyright (c) 2024, Felix Fontein <felix@fontein.de> +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later +"""Make sure all modules that should show up in the action group.""" +from __future__ import (absolute_import, division, print_function) +__metaclass__ = type + +import os +import yaml + + +def main(): + """Main entry point.""" + + # Load redirects + meta_runtime = 'meta/runtime.yml' + try: + with open(meta_runtime, 'rb') as f: + data = yaml.safe_load(f) + action_group = data['action_groups']['docker'] + except Exception as exc: + print('%s: cannot load action group: %s' % (meta_runtime, exc)) + return + + exclusions = ['current_container_facts'] + modules_directory = 'plugins/modules/' + modules_suffix = '.py' + + for file in os.listdir(modules_directory): + if not file.endswith(modules_suffix): + continue + module_name = file[:-len(modules_suffix)] + + should_be_in_action_group = module_name not in exclusions + + if should_be_in_action_group: + if module_name not in action_group: + print('%s: module %s is not part of docker action group' % (meta_runtime, module_name)) + else: + action_group.remove(module_name) + + path = os.path.join(modules_directory, file) + documentation = [] + in_docs = False + with open(path, 'r', encoding='utf-8') as f: + for line in f: + if line.startswith('DOCUMENTATION ='): + in_docs = True + elif line.startswith(("'''", '"""')) and in_docs: + in_docs = False + elif in_docs: + documentation.append(line) + if in_docs: + print('%s: cannot find DOCUMENTATION end' % (path)) + if not documentation: + print('%s: cannot find DOCUMENTATION' % (path)) + continue + + try: + docs = yaml.safe_load('\n'.join(documentation)) + if not isinstance(docs, dict): + raise Exception('is not a top-level dictionary') + except Exception as exc: + print('%s: cannot load DOCUMENTATION as YAML: %s' % (path, exc)) + continue + + docs_fragments = docs.get('extends_documentation_fragment') or [] + is_in_action_group = 'community.docker.attributes.actiongroup_docker' in docs_fragments + + if should_be_in_action_group != is_in_action_group: + if should_be_in_action_group: + print('%s: module does not document itself as part of action group, but it should' % (path)) + else: + print('%s: module documents itself as part of action group, but it should not be' % (path)) + + for module_name in action_group: + print('%s: module %s mentioned in docker action group does not exist' % (meta_runtime, module_name)) + + +if __name__ == '__main__': + main() diff --git a/ansible_collections/community/docker/tests/sanity/extra/extra-docs.py b/ansible_collections/community/docker/tests/sanity/extra/extra-docs.py index c636beb08..251e6d70f 100755 --- a/ansible_collections/community/docker/tests/sanity/extra/extra-docs.py +++ b/ansible_collections/community/docker/tests/sanity/extra/extra-docs.py @@ -17,7 +17,7 @@ def main(): suffix = ':{env}'.format(env=env["ANSIBLE_COLLECTIONS_PATH"]) if 'ANSIBLE_COLLECTIONS_PATH' in env else '' env['ANSIBLE_COLLECTIONS_PATH'] = '{root}{suffix}'.format(root=os.path.dirname(os.path.dirname(os.path.dirname(os.getcwd()))), suffix=suffix) p = subprocess.run( - ['antsibull-docs', 'lint-collection-docs', '--plugin-docs', '--disallow-semantic-markup', '--skip-rstcheck', '.'], + ['antsibull-docs', 'lint-collection-docs', '--plugin-docs', '--skip-rstcheck', '.'], env=env, check=False, ) diff --git a/ansible_collections/community/docker/tests/sanity/ignore-2.10.txt b/ansible_collections/community/docker/tests/sanity/ignore-2.10.txt deleted file mode 100644 index 1a9f48884..000000000 --- a/ansible_collections/community/docker/tests/sanity/ignore-2.10.txt +++ /dev/null @@ -1,11 +0,0 @@ -.azure-pipelines/scripts/publish-codecov.py replace-urlopen -.azure-pipelines/scripts/publish-codecov.py compile-2.6!skip # Uses Python 3.6+ syntax -.azure-pipelines/scripts/publish-codecov.py compile-2.7!skip # Uses Python 3.6+ syntax -.azure-pipelines/scripts/publish-codecov.py compile-3.5!skip # Uses Python 3.6+ syntax -.azure-pipelines/scripts/publish-codecov.py future-import-boilerplate -.azure-pipelines/scripts/publish-codecov.py metaclass-boilerplate -plugins/modules/current_container_facts.py validate-modules:return-syntax-error -plugins/module_utils/module_container/module.py compile-2.6!skip # Uses Python 2.7+ syntax -plugins/module_utils/module_container/module.py import-2.6!skip # Uses Python 2.7+ syntax -plugins/modules/docker_container.py import-2.6!skip # Import uses Python 2.7+ syntax -plugins/modules/docker_container_copy_into.py validate-modules:undocumented-parameter # _max_file_size_for_diff is used by the action plugin diff --git a/ansible_collections/community/docker/tests/sanity/ignore-2.11.txt b/ansible_collections/community/docker/tests/sanity/ignore-2.11.txt index 1a9f48884..2bc38ac22 100644 --- a/ansible_collections/community/docker/tests/sanity/ignore-2.11.txt +++ b/ansible_collections/community/docker/tests/sanity/ignore-2.11.txt @@ -7,5 +7,7 @@ plugins/modules/current_container_facts.py validate-modules:return-syntax-error plugins/module_utils/module_container/module.py compile-2.6!skip # Uses Python 2.7+ syntax plugins/module_utils/module_container/module.py import-2.6!skip # Uses Python 2.7+ syntax +plugins/modules/docker_compose_v2.py validate-modules:return-syntax-error +plugins/modules/docker_compose_v2_pull.py validate-modules:return-syntax-error plugins/modules/docker_container.py import-2.6!skip # Import uses Python 2.7+ syntax plugins/modules/docker_container_copy_into.py validate-modules:undocumented-parameter # _max_file_size_for_diff is used by the action plugin diff --git a/ansible_collections/community/docker/tests/sanity/ignore-2.12.txt b/ansible_collections/community/docker/tests/sanity/ignore-2.12.txt index 3d71834db..f3c4575fb 100644 --- a/ansible_collections/community/docker/tests/sanity/ignore-2.12.txt +++ b/ansible_collections/community/docker/tests/sanity/ignore-2.12.txt @@ -1,3 +1,5 @@ .azure-pipelines/scripts/publish-codecov.py replace-urlopen plugins/modules/current_container_facts.py validate-modules:return-syntax-error +plugins/modules/docker_compose_v2.py validate-modules:return-syntax-error +plugins/modules/docker_compose_v2_pull.py validate-modules:return-syntax-error plugins/modules/docker_container_copy_into.py validate-modules:undocumented-parameter # _max_file_size_for_diff is used by the action plugin diff --git a/ansible_collections/community/docker/tests/sanity/ignore-2.13.txt b/ansible_collections/community/docker/tests/sanity/ignore-2.13.txt index 2a06013da..c0d5c549c 100644 --- a/ansible_collections/community/docker/tests/sanity/ignore-2.13.txt +++ b/ansible_collections/community/docker/tests/sanity/ignore-2.13.txt @@ -1,2 +1,3 @@ .azure-pipelines/scripts/publish-codecov.py replace-urlopen +plugins/modules/docker_compose_v2.py validate-modules:return-syntax-error plugins/modules/docker_container_copy_into.py validate-modules:undocumented-parameter # _max_file_size_for_diff is used by the action plugin diff --git a/ansible_collections/community/docker/tests/sanity/ignore-2.16.txt b/ansible_collections/community/docker/tests/sanity/ignore-2.16.txt index 2a06013da..12e0b26f9 100644 --- a/ansible_collections/community/docker/tests/sanity/ignore-2.16.txt +++ b/ansible_collections/community/docker/tests/sanity/ignore-2.16.txt @@ -1,2 +1 @@ -.azure-pipelines/scripts/publish-codecov.py replace-urlopen plugins/modules/docker_container_copy_into.py validate-modules:undocumented-parameter # _max_file_size_for_diff is used by the action plugin diff --git a/ansible_collections/community/docker/tests/sanity/ignore-2.17.txt b/ansible_collections/community/docker/tests/sanity/ignore-2.17.txt new file mode 100644 index 000000000..12e0b26f9 --- /dev/null +++ b/ansible_collections/community/docker/tests/sanity/ignore-2.17.txt @@ -0,0 +1 @@ +plugins/modules/docker_container_copy_into.py validate-modules:undocumented-parameter # _max_file_size_for_diff is used by the action plugin diff --git a/ansible_collections/community/docker/tests/sanity/ignore-2.9.txt.license b/ansible_collections/community/docker/tests/sanity/ignore-2.17.txt.license index edff8c768..edff8c768 100644 --- a/ansible_collections/community/docker/tests/sanity/ignore-2.9.txt.license +++ b/ansible_collections/community/docker/tests/sanity/ignore-2.17.txt.license diff --git a/ansible_collections/community/docker/tests/sanity/ignore-2.9.txt b/ansible_collections/community/docker/tests/sanity/ignore-2.9.txt deleted file mode 100644 index 81b68cbd8..000000000 --- a/ansible_collections/community/docker/tests/sanity/ignore-2.9.txt +++ /dev/null @@ -1,10 +0,0 @@ -.azure-pipelines/scripts/publish-codecov.py replace-urlopen -.azure-pipelines/scripts/publish-codecov.py compile-2.6!skip # Uses Python 3.6+ syntax -.azure-pipelines/scripts/publish-codecov.py compile-2.7!skip # Uses Python 3.6+ syntax -.azure-pipelines/scripts/publish-codecov.py compile-3.5!skip # Uses Python 3.6+ syntax -.azure-pipelines/scripts/publish-codecov.py future-import-boilerplate -.azure-pipelines/scripts/publish-codecov.py metaclass-boilerplate -plugins/module_utils/module_container/module.py compile-2.6!skip # Uses Python 2.7+ syntax -plugins/module_utils/module_container/module.py import-2.6!skip # Uses Python 2.7+ syntax -plugins/modules/docker_container.py import-2.6!skip # Import uses Python 2.7+ syntax -plugins/modules/docker_container_copy_into.py validate-modules:undocumented-parameter # _max_file_size_for_diff is used by the action plugin diff --git a/ansible_collections/community/docker/tests/unit/plugins/connection/test_docker.py b/ansible_collections/community/docker/tests/unit/plugins/connection/test_docker.py index 5ae6a8e12..279b469c0 100644 --- a/ansible_collections/community/docker/tests/unit/plugins/connection/test_docker.py +++ b/ansible_collections/community/docker/tests/unit/plugins/connection/test_docker.py @@ -13,6 +13,7 @@ from ansible_collections.community.docker.tests.unit.compat import unittest from ansible.errors import AnsibleError from ansible.playbook.play_context import PlayContext from ansible.plugins.loader import connection_loader +from ansible.module_utils.six import PY2 class TestDockerConnectionClass(unittest.TestCase): @@ -36,7 +37,8 @@ class TestDockerConnectionClass(unittest.TestCase): def test_docker_connection_module_too_old(self, mock_new_docker_verison, mock_old_docker_version): self.dc._version = None self.dc.remote_user = 'foo' - self.assertRaisesRegexp(AnsibleError, '^docker connection type requires docker 1.3 or higher$', self.dc._get_actual_user) + (self.assertRaisesRegexp if PY2 else self.assertRaisesRegex)( + AnsibleError, '^docker connection type requires docker 1.3 or higher$', self.dc._get_actual_user) @mock.patch('ansible_collections.community.docker.plugins.connection.docker.Connection._old_docker_version', return_value=('false', 'garbage', '', 1)) @@ -54,4 +56,5 @@ class TestDockerConnectionClass(unittest.TestCase): def test_docker_connection_module_wrong_cmd(self, mock_new_docker_version, mock_old_docker_version): self.dc._version = None self.dc.remote_user = 'foo' - self.assertRaisesRegexp(AnsibleError, '^Docker version check (.*?) failed: ', self.dc._get_actual_user) + (self.assertRaisesRegexp if PY2 else self.assertRaisesRegex)( + AnsibleError, '^Docker version check (.*?) failed: ', self.dc._get_actual_user) diff --git a/ansible_collections/community/docker/tests/unit/plugins/inventory/test_docker_containers.py b/ansible_collections/community/docker/tests/unit/plugins/inventory/test_docker_containers.py index ea16c0d9f..e5761247d 100644 --- a/ansible_collections/community/docker/tests/unit/plugins/inventory/test_docker_containers.py +++ b/ansible_collections/community/docker/tests/unit/plugins/inventory/test_docker_containers.py @@ -9,14 +9,24 @@ __metaclass__ = type import pytest from ansible.inventory.data import InventoryData +from ansible.parsing.dataloader import DataLoader +from ansible.template import Templar from ansible_collections.community.docker.plugins.inventory.docker_containers import InventoryModule +from ansible_collections.community.docker.tests.unit.compat.mock import create_autospec @pytest.fixture(scope="module") -def inventory(): +def templar(): + dataloader = create_autospec(DataLoader, instance=True) + return Templar(loader=dataloader) + + +@pytest.fixture(scope="module") +def inventory(templar): r = InventoryModule() r.inventory = InventoryData() + r.templar = templar return r @@ -114,6 +124,7 @@ def test_populate(inventory, mocker): 'compose': {}, 'groups': {}, 'keyed_groups': {}, + 'filters': None, })) inventory._populate(client) @@ -145,6 +156,7 @@ def test_populate_service(inventory, mocker): 'groups': {}, 'keyed_groups': {}, 'docker_host': 'unix://var/run/docker.sock', + 'filters': None, })) inventory._populate(client) @@ -186,6 +198,7 @@ def test_populate_stack(inventory, mocker): 'docker_host': 'unix://var/run/docker.sock', 'default_ip': '127.0.0.1', 'private_ssh_port': 22, + 'filters': None, })) inventory._populate(client) @@ -212,3 +225,46 @@ def test_populate_stack(inventory, mocker): assert len(inventory.inventory.groups['unix://var/run/docker.sock'].hosts) == 1 assert len(inventory.inventory.groups) == 10 assert len(inventory.inventory.hosts) == 1 + + +def test_populate_filter_none(inventory, mocker): + client = FakeClient(LOVING_THARP) + + inventory.get_option = mocker.MagicMock(side_effect=create_get_option({ + 'verbose_output': True, + 'connection_type': 'docker-api', + 'add_legacy_groups': False, + 'compose': {}, + 'groups': {}, + 'keyed_groups': {}, + 'filters': [ + {'exclude': True}, + ], + })) + inventory._populate(client) + + assert len(inventory.inventory.hosts) == 0 + + +def test_populate_filter(inventory, mocker): + client = FakeClient(LOVING_THARP) + + inventory.get_option = mocker.MagicMock(side_effect=create_get_option({ + 'verbose_output': True, + 'connection_type': 'docker-api', + 'add_legacy_groups': False, + 'compose': {}, + 'groups': {}, + 'keyed_groups': {}, + 'filters': [ + {'include': 'docker_state.Running is true'}, + {'exclude': True}, + ], + })) + inventory._populate(client) + + host_1 = inventory.inventory.get_host('loving_tharp') + host_1_vars = host_1.get_vars() + + assert host_1_vars['ansible_host'] == 'loving_tharp' + assert len(inventory.inventory.hosts) == 1 diff --git a/ansible_collections/community/docker/tests/unit/plugins/module_utils/_api/api/test_client.py b/ansible_collections/community/docker/tests/unit/plugins/module_utils/_api/api/test_client.py index ea0035655..57040b631 100644 --- a/ansible_collections/community/docker/tests/unit/plugins/module_utils/_api/api/test_client.py +++ b/ansible_collections/community/docker/tests/unit/plugins/module_utils/_api/api/test_client.py @@ -619,7 +619,7 @@ class TCPSocketStreamTest(unittest.TestCase): def test_read_from_socket_no_stream_no_tty(self): res = self.request(stream=False, tty=False, demux=False) - res == self.stdout_data + self.stderr_data + assert res == self.stdout_data + self.stderr_data def test_read_from_socket_no_stream_no_tty_demux(self): res = self.request(stream=False, tty=False, demux=True) diff --git a/ansible_collections/community/docker/tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py b/ansible_collections/community/docker/tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py index 428163e61..77e5017ec 100644 --- a/ansible_collections/community/docker/tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py +++ b/ansible_collections/community/docker/tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py @@ -20,14 +20,18 @@ if sys.version_info < (2, 7): from ansible_collections.community.docker.plugins.module_utils._api.transport import ssladapter +HAS_MATCH_HOSTNAME = True try: from backports.ssl_match_hostname import ( match_hostname, CertificateError ) except ImportError: - from ssl import ( - match_hostname, CertificateError - ) + try: + from ssl import ( + match_hostname, CertificateError + ) + except ImportError: + HAS_MATCH_HOSTNAME = False try: from ssl import OP_NO_SSLv3, OP_NO_SSLv2, OP_NO_TLSv1 @@ -47,6 +51,7 @@ class SSLAdapterTest(unittest.TestCase): assert not ssl_context.options & OP_NO_TLSv1 +@pytest.mark.skipif(not HAS_MATCH_HOSTNAME, reason='match_hostname is not available') class MatchHostnameTest(unittest.TestCase): cert = { 'issuer': ( diff --git a/ansible_collections/community/docker/tests/unit/plugins/module_utils/compose_v2_test_cases.py b/ansible_collections/community/docker/tests/unit/plugins/module_utils/compose_v2_test_cases.py new file mode 100644 index 000000000..d7258396c --- /dev/null +++ b/ansible_collections/community/docker/tests/unit/plugins/module_utils/compose_v2_test_cases.py @@ -0,0 +1,10588 @@ +# Copyright 2022 Red Hat | Ansible +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +from __future__ import (absolute_import, division, print_function) +__metaclass__ = type + +from ansible_collections.community.docker.plugins.module_utils.compose_v2 import ( + Event, +) + + +EVENT_TEST_CASES = [ + # ####################################################################################################################### + # ## Docker Compose 2.18.1 ############################################################################################## + # ####################################################################################################################### + # docker_compose_v2: "Absent" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-13 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-absent', + '2.18.1', + False, + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopping\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopped\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Removing\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Removed\n' + ' Network ansible-docker-test-01234567-start-stop_default Removing\n' + ' Network ansible-docker-test-01234567-start-stop_default Removed\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopping', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopped', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Removing', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Removed', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Removing', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Removed', + None, + ), + ], + [], + ), + # docker_compose_v2: "Absent (check)" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-absent-(check)', + '2.18.1', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopping\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopped\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Removing\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Removed\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Removing\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Resource is still in use\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopping', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopped', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Removing', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Removed', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Removing', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + None, + 'Resource is still in use', + ), + ], + [], + ), + # docker_compose_v2: "Cleanup" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-cleanup', + '2.18.1', + False, + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Stopping\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Stopped\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Removing\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Removed\n' + ' Network ansible-docker-test-01234567-pull_default Removing\n' + ' Network ansible-docker-test-01234567-pull_default Removed\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Stopping', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Stopped', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Removing', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Removed', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Removing', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Removed', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Present" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-present', + '2.18.1', + False, + ' ansible-docker-test-01234567-container Pulling \n' + ' ansible-docker-test-01234567-container Pulled \n' + ' Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' Network ansible-docker-test-01234567-start-stop_default Created\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-container', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-container', + 'Pulled', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-13-docker_compose_v2-present-(changed-check)', + '2.18.1', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container 80c52c26780_ansible-docker-test-7c5458ac-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container 80c52c26780_ansible-docker-test-7c5458ac-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + '80c52c26780_ansible-docker-test-7c5458ac-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + '80c52c26780_ansible-docker-test-7c5458ac-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-07 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-present-(changed-check)', + '2.18.1', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container 9121995872d_ansible-docker-test-dba91fb6-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container 9121995872d_ansible-docker-test-dba91fb6-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + '9121995872d_ansible-docker-test-dba91fb6-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + '9121995872d_ansible-docker-test-dba91fb6-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed)" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-present-(changed)', + '2.18.1', + False, + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-13-docker_compose_v2-present-(check)', + '2.18.1', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-container Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-container Pulled \n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-7c5458ac-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-7c5458ac-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-container', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-container', + 'Pulled', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-7c5458ac-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-7c5458ac-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-07 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-present-(check)', + '2.18.1', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-container Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-container Pulled \n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-dba91fb6-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-dba91fb6-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-container', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-container', + 'Pulled', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-dba91fb6-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-dba91fb6-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (idempotent check)" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-13 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-present-(idempotent-check)', + '2.18.1', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Running\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Running', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (idempotent)" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-13 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-present-(idempotent)', + '2.18.1', + False, + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Running\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Running', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present stopped" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-present-stopped', + '2.18.1', + False, + ' Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' Network ansible-docker-test-01234567-start-stop_default Created\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present stopped (check)" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-present-stopped-(check)', + '2.18.1', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-present-with-pull=always', + '2.18.1', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' ansible-docker-test-01234567-cont Pulled \n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Running\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Running', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-07 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-present-with-pull=always-(check)', + '2.18.1', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container 002a15404ac_ansible-docker-test-dba91fb6-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container 002a15404ac_ansible-docker-test-dba91fb6-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + '002a15404ac_ansible-docker-test-dba91fb6-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + '002a15404ac_ansible-docker-test-dba91fb6-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-13-docker_compose_v2-present-with-pull=always-(check)', + '2.18.1', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container ec060c7b341_ansible-docker-test-7c5458ac-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container ec060c7b341_ansible-docker-test-7c5458ac-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + 'ec060c7b341_ansible-docker-test-7c5458ac-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'ec060c7b341_ansible-docker-test-7c5458ac-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-present-with-pull=missing', + '2.18.1', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' ansible-docker-test-01234567-cont Pulled \n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-13-docker_compose_v2-present-with-pull=missing-(check)', + '2.18.1', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-7c5458ac-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-7c5458ac-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-7c5458ac-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-7c5458ac-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-07 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-present-with-pull=missing-(check)', + '2.18.1', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-dba91fb6-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-dba91fb6-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-dba91fb6-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-dba91fb6-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-13 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-present-with-pull=missing-(idempotent)', + '2.18.1', + False, + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Running\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Running', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-13 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-present-with-pull=missing-(idempotent,-check)', + '2.18.1', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Running\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Running', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-present-with-pull=never', + '2.18.1', + False, + ' Network ansible-docker-test-01234567-pull_default Creating\n' + ' Network ansible-docker-test-01234567-pull_default Created\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-present-with-pull=never', + '2.18.1', + False, + ' Network ansible-docker-test-01234567-pull_default Creating\n' + ' Network ansible-docker-test-01234567-pull_default Created\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + 'Error response from daemon: No such image: does-not-exist:latest\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'unknown', + '', + 'Error', + 'Error response from daemon: No such image: does-not-exist:latest', + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-13-docker_compose_v2-present-with-pull=never-(check)', + '2.18.1', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-7c5458ac-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-7c5458ac-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-7c5458ac-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-7c5458ac-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-present-with-pull=never-(check)', + '2.18.1', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-dba91fb6-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-dba91fb6-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-dba91fb6-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-dba91fb6-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present without explicit pull" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-13 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2_pull: "Pull" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-present-without-explicit-pull', + '2.18.1', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' ansible-docker-test-01234567-cont Error \n' + "Error response from daemon: pull access denied for does-not-exist, repository does not exist or may require 'docker login': denied: requested access to the resource is denied\n", # noqa: E501 + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'unknown', + 'ansible-docker-test-01234567-cont', + 'Error', + "Error response from daemon: pull access denied for does-not-exist, repository does not exist or may require 'docker login': denied: requested access to the resource is denied", # noqa: E501 + ), + ], + [], + ), + # docker_compose_v2: "Present without explicit pull (check)" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-present-without-explicit-pull-(check)', + '2.18.1', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Error \n' + 'pull access denied, repository does not exist or may require authorization: server message: insufficient_scope: authorization failed\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'unknown', + 'ansible-docker-test-01234567-cont', + 'Error', + 'pull access denied, repository does not exist or may require authorization: server message: insufficient_scope: authorization failed', + ), + ], + [], + ), + # docker_compose_v2: "Restarted" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-restarted', + '2.18.1', + False, + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Restarting\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Restarting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Restarted (check)" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-restarted-(check)', + '2.18.1', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Restarting\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Restarting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Started" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Started" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-started', + '2.18.1', + False, + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Started (check)" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-started-(check)', + '2.18.1', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Stopped" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-stopped', + '2.18.1', + False, + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Running\n' + '\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopping\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopped\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Running', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopping', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopped', + None, + ), + ], + [], + ), + # docker_compose_v2: "Stopped (check)" on 2024-01-07 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-07-docker_compose_v2-stopped-(check)', + '2.18.1', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Running\n' + '\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopping\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopped\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Running', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopping', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopped', + None, + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull (check)" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-13-docker_compose_v2_pull-pull-(check)', + '2.18.1', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Error \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont - Pull error for image: does-not-exist:latest \n' + 'pull access denied, repository does not exist or may require authorization: server message: insufficient_scope: authorization failed\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'unknown', + 'ansible-docker-test-01234567-cont', + 'Error', + 'pull access denied, repository does not exist or may require authorization: server message: insufficient_scope: authorization failed', + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull with policy=always" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-13-docker_compose_v2_pull-pull-with-policy=always', + '2.18.1', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' 486039affc0a Pulling fs layer \n' + ' 486039affc0a Downloading [> ] 32.16kB/2.207MB\n' + ' 486039affc0a Verifying Checksum \n' + ' 486039affc0a Download complete \n' + ' 486039affc0a Extracting [> ] 32.77kB/2.207MB\n' + ' 486039affc0a Extracting [==================================================>] 2.207MB/2.207MB\n' + ' 486039affc0a Pull complete \n' + ' ansible-docker-test-01234567-cont Pulled \n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pulling fs layer', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Downloading', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Verifying Checksum', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Download complete', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pull complete', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull with policy=always (again)" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-13-docker_compose_v2_pull-pull-with-policy=always-(again)', + '2.18.1', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' ansible-docker-test-01234567-cont Pulled \n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull with policy=always (again, check)" on 2024-01-13 in 2.12-ubuntu1804 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (check)" on 2024-01-13 in 2.12-ubuntu1804 + ( + '2.18.1-2.12-ubuntu1804-2024-01-13-docker_compose_v2_pull-pull-with-policy=always-(again,-check)', + '2.18.1', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + ], + [], + ), + # ####################################################################################################################### + # ## Docker Compose 2.21.0 ############################################################################################## + # ####################################################################################################################### + # docker_compose_v2: "Absent" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-13 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-absent', + '2.21.0', + False, + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopping\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopped\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Removing\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Removed\n' + ' Network ansible-docker-test-01234567-start-stop_default Removing\n' + ' Network ansible-docker-test-01234567-start-stop_default Removed\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopping', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopped', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Removing', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Removed', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Removing', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Removed', + None, + ), + ], + [], + ), + # docker_compose_v2: "Absent (check)" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-absent-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopping\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopped\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Removing\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Removed\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Removing\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Resource is still in use\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopping', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopped', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Removing', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Removed', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Removing', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + None, + 'Resource is still in use', + ), + ], + [], + ), + # docker_compose_v2: "Cleanup" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-cleanup', + '2.21.0', + False, + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Stopping\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Stopped\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Removing\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Removed\n' + ' Network ansible-docker-test-01234567-pull_default Removing\n' + ' Network ansible-docker-test-01234567-pull_default Removed\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Stopping', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Stopped', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Removing', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Removed', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Removing', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Removed', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Present" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-present', + '2.21.0', + False, + ' Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' Network ansible-docker-test-01234567-start-stop_default Created\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-13 in 2.16-rhel9.2 + ( + '2.21.0-2.16-rhel9.2-2024-01-13-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container 054e03eb5ea_ansible-docker-test-b2745d99-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container 054e03eb5ea_ansible-docker-test-b2745d99-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + '054e03eb5ea_ansible-docker-test-b2745d99-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + '054e03eb5ea_ansible-docker-test-b2745d99-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-07 in 2.16-rhel9.2 + ( + '2.21.0-2.16-rhel9.2-2024-01-07-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container 0a77f424a61_ansible-docker-test-d1d30700-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container 0a77f424a61_ansible-docker-test-d1d30700-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + '0a77f424a61_ansible-docker-test-d1d30700-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + '0a77f424a61_ansible-docker-test-d1d30700-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-13 in devel-ubuntu2004 + ( + '2.21.0-devel-ubuntu2004-2024-01-13-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container 0e165a36533_ansible-docker-test-e700ac20-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container 0e165a36533_ansible-docker-test-e700ac20-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + '0e165a36533_ansible-docker-test-e700ac20-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + '0e165a36533_ansible-docker-test-e700ac20-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-07 in devel-ubuntu2204 + ( + '2.21.0-devel-ubuntu2204-2024-01-07-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container 26bf8ff1675_ansible-docker-test-1f1d0d58-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container 26bf8ff1675_ansible-docker-test-1f1d0d58-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + '26bf8ff1675_ansible-docker-test-1f1d0d58-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + '26bf8ff1675_ansible-docker-test-1f1d0d58-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-13 in 2.15-rhel9.1 + ( + '2.21.0-2.15-rhel9.1-2024-01-13-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container 27c209a84a5_ansible-docker-test-d616c3a5-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container 27c209a84a5_ansible-docker-test-d616c3a5-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + '27c209a84a5_ansible-docker-test-d616c3a5-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + '27c209a84a5_ansible-docker-test-d616c3a5-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-07 in devel-rhel9.3 + ( + '2.21.0-devel-rhel9.3-2024-01-07-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container 4b568108657_ansible-docker-test-64d917f4-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container 4b568108657_ansible-docker-test-64d917f4-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + '4b568108657_ansible-docker-test-64d917f4-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + '4b568108657_ansible-docker-test-64d917f4-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-07 in devel-ubuntu2004 + ( + '2.21.0-devel-ubuntu2004-2024-01-07-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container 6dc8d091c94_ansible-docker-test-2460e737-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container 6dc8d091c94_ansible-docker-test-2460e737-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + '6dc8d091c94_ansible-docker-test-2460e737-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + '6dc8d091c94_ansible-docker-test-2460e737-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-07 in 2.14-rhel9.0 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container 71b893893dc_ansible-docker-test-4baa7139-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container 71b893893dc_ansible-docker-test-4baa7139-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + '71b893893dc_ansible-docker-test-4baa7139-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + '71b893893dc_ansible-docker-test-4baa7139-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-07 in devel-debian-bullseye + ( + '2.21.0-devel-debian-bullseye-2024-01-07-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container 71e7a319c23_ansible-docker-test-19ffba88-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container 71e7a319c23_ansible-docker-test-19ffba88-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + '71e7a319c23_ansible-docker-test-19ffba88-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + '71e7a319c23_ansible-docker-test-19ffba88-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-07 in 2.16-centos7 + ( + '2.21.0-2.16-centos7-2024-01-07-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container 78e827e6673_ansible-docker-test-6aaaa304-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container 78e827e6673_ansible-docker-test-6aaaa304-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + '78e827e6673_ansible-docker-test-6aaaa304-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + '78e827e6673_ansible-docker-test-6aaaa304-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-13 in devel-debian-bookworm + ( + '2.21.0-devel-debian-bookworm-2024-01-13-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container 7971b0c189d_ansible-docker-test-51914faa-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container 7971b0c189d_ansible-docker-test-51914faa-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + '7971b0c189d_ansible-docker-test-51914faa-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + '7971b0c189d_ansible-docker-test-51914faa-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-13 in devel-rhel9.3 + ( + '2.21.0-devel-rhel9.3-2024-01-13-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container 7b8d91093c9_ansible-docker-test-d2caf0c9-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container 7b8d91093c9_ansible-docker-test-d2caf0c9-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + '7b8d91093c9_ansible-docker-test-d2caf0c9-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + '7b8d91093c9_ansible-docker-test-d2caf0c9-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-13 in 2.16-centos7 + ( + '2.21.0-2.16-centos7-2024-01-13-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container 7bedd9b4513_ansible-docker-test-1ba2643a-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container 7bedd9b4513_ansible-docker-test-1ba2643a-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + '7bedd9b4513_ansible-docker-test-1ba2643a-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + '7bedd9b4513_ansible-docker-test-1ba2643a-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-13 in 2.15-rhel7.9 + ( + '2.21.0-2.15-rhel7.9-2024-01-13-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container 87873e68934_ansible-docker-test-ad622acd-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container 87873e68934_ansible-docker-test-ad622acd-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + '87873e68934_ansible-docker-test-ad622acd-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + '87873e68934_ansible-docker-test-ad622acd-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-13 in 2.14-rhel9.0 + ( + '2.21.0-2.14-rhel9.0-2024-01-13-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container a81dce9774b_ansible-docker-test-4fcbaf1e-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container a81dce9774b_ansible-docker-test-4fcbaf1e-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + 'a81dce9774b_ansible-docker-test-4fcbaf1e-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'a81dce9774b_ansible-docker-test-4fcbaf1e-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-13 in 2.15-centos7 + ( + '2.21.0-2.15-centos7-2024-01-13-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container d28b7978587_ansible-docker-test-971ad57c-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container d28b7978587_ansible-docker-test-971ad57c-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + 'd28b7978587_ansible-docker-test-971ad57c-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'd28b7978587_ansible-docker-test-971ad57c-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-07 in 2.15-rhel9.1 + ( + '2.21.0-2.15-rhel9.1-2024-01-07-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container dea4aafe907_ansible-docker-test-d6ae094c-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container dea4aafe907_ansible-docker-test-d6ae094c-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + 'dea4aafe907_ansible-docker-test-d6ae094c-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'dea4aafe907_ansible-docker-test-d6ae094c-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-07 in 2.15-centos7 + ( + '2.21.0-2.15-centos7-2024-01-07-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container e508faa8323_ansible-docker-test-ce1fa4d7-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container e508faa8323_ansible-docker-test-ce1fa4d7-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + 'e508faa8323_ansible-docker-test-ce1fa4d7-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'e508faa8323_ansible-docker-test-ce1fa4d7-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-devel-ubuntu2204-2024-01-13-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container ef57cb7913f_ansible-docker-test-ede01681-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container ef57cb7913f_ansible-docker-test-ede01681-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + 'ef57cb7913f_ansible-docker-test-ede01681-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'ef57cb7913f_ansible-docker-test-ede01681-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-07 in 2.15-rhel7.9 + ( + '2.21.0-2.15-rhel7.9-2024-01-07-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container efe8857a191_ansible-docker-test-601188b1-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container efe8857a191_ansible-docker-test-601188b1-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + 'efe8857a191_ansible-docker-test-601188b1-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'efe8857a191_ansible-docker-test-601188b1-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-13 in devel-debian-bullseye + ( + '2.21.0-devel-debian-bullseye-2024-01-13-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container f0de40ba686_ansible-docker-test-834c1a9b-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container f0de40ba686_ansible-docker-test-834c1a9b-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + 'f0de40ba686_ansible-docker-test-834c1a9b-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'f0de40ba686_ansible-docker-test-834c1a9b-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-07 in devel-debian-bookworm + ( + '2.21.0-devel-debian-bookworm-2024-01-07-docker_compose_v2-present-(changed-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container f6416652e13_ansible-docker-test-5f3d2e16-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container f6416652e13_ansible-docker-test-5f3d2e16-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + 'f6416652e13_ansible-docker-test-5f3d2e16-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'f6416652e13_ansible-docker-test-5f3d2e16-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed)" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-present-(changed)', + '2.21.0', + False, + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-07 in devel-debian-bullseye + ( + '2.21.0-devel-debian-bullseye-2024-01-07-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-19ffba88-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-19ffba88-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-19ffba88-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-19ffba88-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-13 in 2.16-centos7 + ( + '2.21.0-2.16-centos7-2024-01-13-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-1ba2643a-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-1ba2643a-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-1ba2643a-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-1ba2643a-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-07 in devel-ubuntu2204 + ( + '2.21.0-devel-ubuntu2204-2024-01-07-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-1f1d0d58-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-1f1d0d58-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-1f1d0d58-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-1f1d0d58-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-07 in devel-ubuntu2004 + ( + '2.21.0-devel-ubuntu2004-2024-01-07-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-2460e737-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-2460e737-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-2460e737-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-2460e737-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-07 in 2.14-rhel9.0 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-4baa7139-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-4baa7139-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-4baa7139-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-4baa7139-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-13 in 2.14-rhel9.0 + ( + '2.21.0-2.14-rhel9.0-2024-01-13-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-4fcbaf1e-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-4fcbaf1e-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-4fcbaf1e-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-4fcbaf1e-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-13 in devel-debian-bookworm + ( + '2.21.0-devel-debian-bookworm-2024-01-13-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-51914faa-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-51914faa-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-51914faa-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-51914faa-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-07 in devel-debian-bookworm + ( + '2.21.0-devel-debian-bookworm-2024-01-07-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-5f3d2e16-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-5f3d2e16-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-5f3d2e16-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-5f3d2e16-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-07 in 2.15-rhel7.9 + ( + '2.21.0-2.15-rhel7.9-2024-01-07-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-601188b1-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-601188b1-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-601188b1-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-601188b1-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-07 in devel-rhel9.3 + ( + '2.21.0-devel-rhel9.3-2024-01-07-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-64d917f4-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-64d917f4-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-64d917f4-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-64d917f4-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-07 in 2.16-centos7 + ( + '2.21.0-2.16-centos7-2024-01-07-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-6aaaa304-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-6aaaa304-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-6aaaa304-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-6aaaa304-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-13 in devel-debian-bullseye + ( + '2.21.0-devel-debian-bullseye-2024-01-13-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-834c1a9b-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-834c1a9b-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-834c1a9b-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-834c1a9b-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-13 in 2.15-centos7 + ( + '2.21.0-2.15-centos7-2024-01-13-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-971ad57c-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-971ad57c-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-971ad57c-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-971ad57c-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-13 in 2.15-rhel7.9 + ( + '2.21.0-2.15-rhel7.9-2024-01-13-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-ad622acd-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-ad622acd-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-ad622acd-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-ad622acd-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-13 in 2.16-rhel9.2 + ( + '2.21.0-2.16-rhel9.2-2024-01-13-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-b2745d99-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-b2745d99-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-b2745d99-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-b2745d99-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-07 in 2.15-centos7 + ( + '2.21.0-2.15-centos7-2024-01-07-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-ce1fa4d7-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-ce1fa4d7-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-ce1fa4d7-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-ce1fa4d7-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-07 in 2.16-rhel9.2 + ( + '2.21.0-2.16-rhel9.2-2024-01-07-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-d1d30700-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-d1d30700-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-d1d30700-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-d1d30700-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-13 in devel-rhel9.3 + ( + '2.21.0-devel-rhel9.3-2024-01-13-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-d2caf0c9-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-d2caf0c9-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-d2caf0c9-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-d2caf0c9-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-13 in 2.15-rhel9.1 + ( + '2.21.0-2.15-rhel9.1-2024-01-13-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-d616c3a5-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-d616c3a5-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-d616c3a5-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-d616c3a5-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-07 in 2.15-rhel9.1 + ( + '2.21.0-2.15-rhel9.1-2024-01-07-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-d6ae094c-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-d6ae094c-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-d6ae094c-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-d6ae094c-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-13 in devel-ubuntu2004 + ( + '2.21.0-devel-ubuntu2004-2024-01-13-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-e700ac20-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-e700ac20-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-e700ac20-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-e700ac20-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-devel-ubuntu2204-2024-01-13-docker_compose_v2-present-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-ede01681-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-ede01681-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-ede01681-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-ede01681-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (idempotent check)" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-13 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-present-(idempotent-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Running\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Running', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (idempotent)" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-13 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-present-(idempotent)', + '2.21.0', + False, + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Running\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Running', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present stopped" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-present-stopped', + '2.21.0', + False, + ' Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' Network ansible-docker-test-01234567-start-stop_default Created\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present stopped (check)" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-present-stopped-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-present-with-pull=always', + '2.21.0', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' ansible-docker-test-01234567-cont Pulled \n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Running\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Running', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-13 in devel-debian-bookworm + ( + '2.21.0-devel-debian-bookworm-2024-01-13-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container 0b4286904e0_ansible-docker-test-51914faa-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container 0b4286904e0_ansible-docker-test-51914faa-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + '0b4286904e0_ansible-docker-test-51914faa-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + '0b4286904e0_ansible-docker-test-51914faa-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-07 in devel-ubuntu2204 + ( + '2.21.0-devel-ubuntu2204-2024-01-07-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container 0d5362bac93_ansible-docker-test-1f1d0d58-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container 0d5362bac93_ansible-docker-test-1f1d0d58-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + '0d5362bac93_ansible-docker-test-1f1d0d58-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + '0d5362bac93_ansible-docker-test-1f1d0d58-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-07 in 2.16-rhel9.2 + ( + '2.21.0-2.16-rhel9.2-2024-01-07-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container 3d7b7be6dbe_ansible-docker-test-d1d30700-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container 3d7b7be6dbe_ansible-docker-test-d1d30700-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + '3d7b7be6dbe_ansible-docker-test-d1d30700-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + '3d7b7be6dbe_ansible-docker-test-d1d30700-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-13 in 2.16-centos7 + ( + '2.21.0-2.16-centos7-2024-01-13-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container 49ff7fef052_ansible-docker-test-1ba2643a-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container 49ff7fef052_ansible-docker-test-1ba2643a-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + '49ff7fef052_ansible-docker-test-1ba2643a-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + '49ff7fef052_ansible-docker-test-1ba2643a-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-07 in 2.16-centos7 + ( + '2.21.0-2.16-centos7-2024-01-07-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container 5d30320650e_ansible-docker-test-6aaaa304-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container 5d30320650e_ansible-docker-test-6aaaa304-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + '5d30320650e_ansible-docker-test-6aaaa304-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + '5d30320650e_ansible-docker-test-6aaaa304-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-07 in 2.15-rhel7.9 + ( + '2.21.0-2.15-rhel7.9-2024-01-07-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container 611a044106b_ansible-docker-test-601188b1-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container 611a044106b_ansible-docker-test-601188b1-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + '611a044106b_ansible-docker-test-601188b1-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + '611a044106b_ansible-docker-test-601188b1-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-13 in devel-ubuntu2004 + ( + '2.21.0-devel-ubuntu2004-2024-01-13-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container 61802a08aa6_ansible-docker-test-e700ac20-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container 61802a08aa6_ansible-docker-test-e700ac20-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + '61802a08aa6_ansible-docker-test-e700ac20-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + '61802a08aa6_ansible-docker-test-e700ac20-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-07 in 2.15-centos7 + ( + '2.21.0-2.15-centos7-2024-01-07-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container 61bd1b13d9c_ansible-docker-test-ce1fa4d7-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container 61bd1b13d9c_ansible-docker-test-ce1fa4d7-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + '61bd1b13d9c_ansible-docker-test-ce1fa4d7-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + '61bd1b13d9c_ansible-docker-test-ce1fa4d7-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-13 in devel-rhel9.3 + ( + '2.21.0-devel-rhel9.3-2024-01-13-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container 769aec9cd4d_ansible-docker-test-d2caf0c9-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container 769aec9cd4d_ansible-docker-test-d2caf0c9-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + '769aec9cd4d_ansible-docker-test-d2caf0c9-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + '769aec9cd4d_ansible-docker-test-d2caf0c9-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-devel-ubuntu2204-2024-01-13-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container 813ca227a6f_ansible-docker-test-ede01681-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container 813ca227a6f_ansible-docker-test-ede01681-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + '813ca227a6f_ansible-docker-test-ede01681-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + '813ca227a6f_ansible-docker-test-ede01681-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-13 in devel-debian-bullseye + ( + '2.21.0-devel-debian-bullseye-2024-01-13-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container 8a586ed91d6_ansible-docker-test-834c1a9b-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container 8a586ed91d6_ansible-docker-test-834c1a9b-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + '8a586ed91d6_ansible-docker-test-834c1a9b-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + '8a586ed91d6_ansible-docker-test-834c1a9b-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-07 in devel-rhel9.3 + ( + '2.21.0-devel-rhel9.3-2024-01-07-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container 8bec416e98d_ansible-docker-test-64d917f4-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container 8bec416e98d_ansible-docker-test-64d917f4-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + '8bec416e98d_ansible-docker-test-64d917f4-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + '8bec416e98d_ansible-docker-test-64d917f4-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-13 in 2.16-rhel9.2 + ( + '2.21.0-2.16-rhel9.2-2024-01-13-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container 906450ba6e7_ansible-docker-test-b2745d99-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container 906450ba6e7_ansible-docker-test-b2745d99-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + '906450ba6e7_ansible-docker-test-b2745d99-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + '906450ba6e7_ansible-docker-test-b2745d99-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-13 in 2.15-rhel9.1 + ( + '2.21.0-2.15-rhel9.1-2024-01-13-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container a99ed30c7d6_ansible-docker-test-d616c3a5-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container a99ed30c7d6_ansible-docker-test-d616c3a5-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + 'a99ed30c7d6_ansible-docker-test-d616c3a5-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'a99ed30c7d6_ansible-docker-test-d616c3a5-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-07 in 2.15-rhel9.1 + ( + '2.21.0-2.15-rhel9.1-2024-01-07-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container b78faf8a742_ansible-docker-test-d6ae094c-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container b78faf8a742_ansible-docker-test-d6ae094c-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + 'b78faf8a742_ansible-docker-test-d6ae094c-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'b78faf8a742_ansible-docker-test-d6ae094c-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-13 in 2.15-centos7 + ( + '2.21.0-2.15-centos7-2024-01-13-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container be1b2a9ca28_ansible-docker-test-971ad57c-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container be1b2a9ca28_ansible-docker-test-971ad57c-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + 'be1b2a9ca28_ansible-docker-test-971ad57c-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'be1b2a9ca28_ansible-docker-test-971ad57c-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-07 in devel-debian-bookworm + ( + '2.21.0-devel-debian-bookworm-2024-01-07-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container c9d730c2613_ansible-docker-test-5f3d2e16-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container c9d730c2613_ansible-docker-test-5f3d2e16-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + 'c9d730c2613_ansible-docker-test-5f3d2e16-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'c9d730c2613_ansible-docker-test-5f3d2e16-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-13 in 2.15-rhel7.9 + ( + '2.21.0-2.15-rhel7.9-2024-01-13-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container da16aa68f6f_ansible-docker-test-ad622acd-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container da16aa68f6f_ansible-docker-test-ad622acd-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + 'da16aa68f6f_ansible-docker-test-ad622acd-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'da16aa68f6f_ansible-docker-test-ad622acd-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-13 in 2.14-rhel9.0 + ( + '2.21.0-2.14-rhel9.0-2024-01-13-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container dff4b309c58_ansible-docker-test-4fcbaf1e-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container dff4b309c58_ansible-docker-test-4fcbaf1e-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + 'dff4b309c58_ansible-docker-test-4fcbaf1e-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'dff4b309c58_ansible-docker-test-4fcbaf1e-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-07 in 2.14-rhel9.0 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container ecd243ea972_ansible-docker-test-4baa7139-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container ecd243ea972_ansible-docker-test-4baa7139-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + 'ecd243ea972_ansible-docker-test-4baa7139-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'ecd243ea972_ansible-docker-test-4baa7139-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-07 in devel-ubuntu2004 + ( + '2.21.0-devel-ubuntu2004-2024-01-07-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container f48d54a75fb_ansible-docker-test-2460e737-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container f48d54a75fb_ansible-docker-test-2460e737-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + 'f48d54a75fb_ansible-docker-test-2460e737-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'f48d54a75fb_ansible-docker-test-2460e737-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-07 in devel-debian-bullseye + ( + '2.21.0-devel-debian-bullseye-2024-01-07-docker_compose_v2-present-with-pull=always-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container fa8f62dfced_ansible-docker-test-19ffba88-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container fa8f62dfced_ansible-docker-test-19ffba88-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + 'fa8f62dfced_ansible-docker-test-19ffba88-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'fa8f62dfced_ansible-docker-test-19ffba88-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-present-with-pull=missing', + '2.21.0', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' ansible-docker-test-01234567-cont Pulled \n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-07 in devel-debian-bullseye + ( + '2.21.0-devel-debian-bullseye-2024-01-07-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-19ffba88-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-19ffba88-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-19ffba88-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-19ffba88-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-13 in 2.16-centos7 + ( + '2.21.0-2.16-centos7-2024-01-13-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-1ba2643a-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-1ba2643a-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-1ba2643a-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-1ba2643a-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-07 in devel-ubuntu2204 + ( + '2.21.0-devel-ubuntu2204-2024-01-07-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-1f1d0d58-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-1f1d0d58-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-1f1d0d58-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-1f1d0d58-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-07 in devel-ubuntu2004 + ( + '2.21.0-devel-ubuntu2004-2024-01-07-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-2460e737-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-2460e737-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-2460e737-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-2460e737-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-07 in 2.14-rhel9.0 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-4baa7139-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-4baa7139-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-4baa7139-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-4baa7139-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-13 in 2.14-rhel9.0 + ( + '2.21.0-2.14-rhel9.0-2024-01-13-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-4fcbaf1e-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-4fcbaf1e-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-4fcbaf1e-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-4fcbaf1e-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-13 in devel-debian-bookworm + ( + '2.21.0-devel-debian-bookworm-2024-01-13-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-51914faa-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-51914faa-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-51914faa-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-51914faa-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-07 in devel-debian-bookworm + ( + '2.21.0-devel-debian-bookworm-2024-01-07-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-5f3d2e16-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-5f3d2e16-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-5f3d2e16-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-5f3d2e16-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-07 in 2.15-rhel7.9 + ( + '2.21.0-2.15-rhel7.9-2024-01-07-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-601188b1-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-601188b1-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-601188b1-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-601188b1-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-07 in devel-rhel9.3 + ( + '2.21.0-devel-rhel9.3-2024-01-07-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-64d917f4-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-64d917f4-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-64d917f4-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-64d917f4-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-07 in 2.16-centos7 + ( + '2.21.0-2.16-centos7-2024-01-07-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-6aaaa304-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-6aaaa304-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-6aaaa304-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-6aaaa304-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-13 in devel-debian-bullseye + ( + '2.21.0-devel-debian-bullseye-2024-01-13-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-834c1a9b-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-834c1a9b-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-834c1a9b-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-834c1a9b-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-13 in 2.15-centos7 + ( + '2.21.0-2.15-centos7-2024-01-13-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-971ad57c-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-971ad57c-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-971ad57c-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-971ad57c-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-13 in 2.15-rhel7.9 + ( + '2.21.0-2.15-rhel7.9-2024-01-13-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-ad622acd-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-ad622acd-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-ad622acd-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-ad622acd-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-13 in 2.16-rhel9.2 + ( + '2.21.0-2.16-rhel9.2-2024-01-13-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-b2745d99-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-b2745d99-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-b2745d99-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-b2745d99-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-07 in 2.15-centos7 + ( + '2.21.0-2.15-centos7-2024-01-07-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-ce1fa4d7-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-ce1fa4d7-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-ce1fa4d7-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-ce1fa4d7-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-07 in 2.16-rhel9.2 + ( + '2.21.0-2.16-rhel9.2-2024-01-07-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-d1d30700-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-d1d30700-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-d1d30700-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-d1d30700-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-13 in devel-rhel9.3 + ( + '2.21.0-devel-rhel9.3-2024-01-13-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-d2caf0c9-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-d2caf0c9-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-d2caf0c9-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-d2caf0c9-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-13 in 2.15-rhel9.1 + ( + '2.21.0-2.15-rhel9.1-2024-01-13-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-d616c3a5-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-d616c3a5-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-d616c3a5-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-d616c3a5-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-07 in 2.15-rhel9.1 + ( + '2.21.0-2.15-rhel9.1-2024-01-07-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-d6ae094c-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-d6ae094c-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-d6ae094c-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-d6ae094c-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-13 in devel-ubuntu2004 + ( + '2.21.0-devel-ubuntu2004-2024-01-13-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-e700ac20-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-e700ac20-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-e700ac20-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-e700ac20-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-devel-ubuntu2204-2024-01-13-docker_compose_v2-present-with-pull=missing-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-ede01681-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-ede01681-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-ede01681-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-ede01681-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-13 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-present-with-pull=missing-(idempotent)', + '2.21.0', + False, + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Running\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Running', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-13 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-present-with-pull=missing-(idempotent,-check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Running\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Running', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-present-with-pull=never', + '2.21.0', + False, + ' Network ansible-docker-test-01234567-pull_default Creating\n' + ' Network ansible-docker-test-01234567-pull_default Created\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in devel-rhel9.3 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-present-with-pull=never', + '2.21.0', + False, + ' Network ansible-docker-test-01234567-pull_default Creating\n' + ' Network ansible-docker-test-01234567-pull_default Created\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + 'Error response from daemon: No such image: does-not-exist:latest\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'unknown', + '', + 'Error', + 'Error response from daemon: No such image: does-not-exist:latest', + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.15-centos7-2024-01-07-docker_compose_v2-present-with-pull=never', + '2.21.0', + False, + ' Network ansible-docker-test-01234567-pull_default Creating\n' + ' Network ansible-docker-test-01234567-pull_default Created\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + 'Error response from daemon: no such image: does-not-exist:latest: No such image: does-not-exist:latest\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'unknown', + '', + 'Error', + 'Error response from daemon: no such image: does-not-exist:latest: No such image: does-not-exist:latest', + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in devel-debian-bullseye + ( + '2.21.0-devel-debian-bullseye-2024-01-07-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-19ffba88-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-19ffba88-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-19ffba88-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-19ffba88-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in 2.16-centos7 + ( + '2.21.0-2.16-centos7-2024-01-13-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-1ba2643a-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-1ba2643a-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-1ba2643a-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-1ba2643a-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in devel-ubuntu2204 + ( + '2.21.0-devel-ubuntu2204-2024-01-07-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-1f1d0d58-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-1f1d0d58-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-1f1d0d58-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-1f1d0d58-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in devel-ubuntu2004 + ( + '2.21.0-devel-ubuntu2004-2024-01-07-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-2460e737-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-2460e737-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-2460e737-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-2460e737-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in 2.14-rhel9.0 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-4baa7139-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-4baa7139-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-4baa7139-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-4baa7139-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in 2.14-rhel9.0 + ( + '2.21.0-2.14-rhel9.0-2024-01-13-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-4fcbaf1e-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-4fcbaf1e-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-4fcbaf1e-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-4fcbaf1e-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in devel-debian-bookworm + ( + '2.21.0-devel-debian-bookworm-2024-01-13-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-51914faa-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-51914faa-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-51914faa-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-51914faa-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in devel-debian-bookworm + ( + '2.21.0-devel-debian-bookworm-2024-01-07-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-5f3d2e16-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-5f3d2e16-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-5f3d2e16-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-5f3d2e16-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in 2.15-rhel7.9 + ( + '2.21.0-2.15-rhel7.9-2024-01-07-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-601188b1-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-601188b1-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-601188b1-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-601188b1-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in devel-rhel9.3 + ( + '2.21.0-devel-rhel9.3-2024-01-07-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-64d917f4-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-64d917f4-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-64d917f4-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-64d917f4-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in 2.16-centos7 + ( + '2.21.0-2.16-centos7-2024-01-07-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-6aaaa304-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-6aaaa304-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-6aaaa304-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-6aaaa304-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in devel-debian-bullseye + ( + '2.21.0-devel-debian-bullseye-2024-01-13-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-834c1a9b-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-834c1a9b-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-834c1a9b-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-834c1a9b-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in 2.15-centos7 + ( + '2.21.0-2.15-centos7-2024-01-13-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-971ad57c-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-971ad57c-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-971ad57c-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-971ad57c-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in 2.15-rhel7.9 + ( + '2.21.0-2.15-rhel7.9-2024-01-13-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-ad622acd-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-ad622acd-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-ad622acd-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-ad622acd-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in 2.16-rhel9.2 + ( + '2.21.0-2.16-rhel9.2-2024-01-13-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-b2745d99-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-b2745d99-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-b2745d99-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-b2745d99-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in 2.15-centos7 + ( + '2.21.0-2.15-centos7-2024-01-07-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-ce1fa4d7-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-ce1fa4d7-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-ce1fa4d7-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-ce1fa4d7-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in 2.16-rhel9.2 + ( + '2.21.0-2.16-rhel9.2-2024-01-07-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-d1d30700-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-d1d30700-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-d1d30700-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-d1d30700-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in devel-rhel9.3 + ( + '2.21.0-devel-rhel9.3-2024-01-13-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-d2caf0c9-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-d2caf0c9-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-d2caf0c9-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-d2caf0c9-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in 2.15-rhel9.1 + ( + '2.21.0-2.15-rhel9.1-2024-01-13-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-d616c3a5-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-d616c3a5-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-d616c3a5-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-d616c3a5-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in 2.15-rhel9.1 + ( + '2.21.0-2.15-rhel9.1-2024-01-07-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-d6ae094c-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-d6ae094c-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-d6ae094c-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-d6ae094c-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in devel-ubuntu2004 + ( + '2.21.0-devel-ubuntu2004-2024-01-13-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-e700ac20-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-e700ac20-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-e700ac20-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-e700ac20-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-devel-ubuntu2204-2024-01-13-docker_compose_v2-present-with-pull=never-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-ede01681-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-ede01681-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-ede01681-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-ede01681-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present without explicit pull" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-13 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2_pull: "Pull" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2_pull: "Pull" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2_pull: "Pull" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2_pull: "Pull" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2_pull: "Pull" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2_pull: "Pull" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2_pull: "Pull" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2_pull: "Pull" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2_pull: "Pull" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2_pull: "Pull" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2_pull: "Pull" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-present-without-explicit-pull', + '2.21.0', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' ansible-docker-test-01234567-cont Error \n' + "Error response from daemon: pull access denied for does-not-exist, repository does not exist or may require 'docker login': denied: requested access to the resource is denied\n", # noqa: E501 + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'unknown', + 'ansible-docker-test-01234567-cont', + 'Error', + "Error response from daemon: pull access denied for does-not-exist, repository does not exist or may require 'docker login': denied: requested access to the resource is denied", # noqa: E501 + ), + ], + [], + ), + # docker_compose_v2: "Present without explicit pull (check)" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-present-without-explicit-pull-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Error \n' + 'pull access denied, repository does not exist or may require authorization: server message: insufficient_scope: authorization failed\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'unknown', + 'ansible-docker-test-01234567-cont', + 'Error', + 'pull access denied, repository does not exist or may require authorization: server message: insufficient_scope: authorization failed', + ), + ], + [], + ), + # docker_compose_v2: "Restarted" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-restarted', + '2.21.0', + False, + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Restarting\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Restarting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Restarted (check)" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-restarted-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Restarting\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Restarting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Started" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Started" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Started" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Started" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Started" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Started" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Started" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Started" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Started" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Started" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Started" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Started" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Started" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Started" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Started" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Started" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Started" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Started" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Started" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Started" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Started" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Started" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-started', + '2.21.0', + False, + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Started (check)" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-started-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Stopped" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-stopped', + '2.21.0', + False, + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Running\n' + '\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopping\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopped\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Running', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopping', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopped', + None, + ), + ], + [], + ), + # docker_compose_v2: "Stopped (check)" on 2024-01-07 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-07 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-07 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-07 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-07 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-07 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-07 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-07 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-07 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-07 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-07 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-07-docker_compose_v2-stopped-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Running\n' + '\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopping\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopped\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Running', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopping', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopped', + None, + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull (check)" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2_pull: "Pull (check)" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2_pull: "Pull (check)" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2_pull: "Pull (check)" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2_pull: "Pull (check)" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2_pull: "Pull (check)" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2_pull: "Pull (check)" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2_pull: "Pull (check)" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2_pull: "Pull (check)" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2_pull: "Pull (check)" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2_pull: "Pull (check)" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-13-docker_compose_v2_pull-pull-(check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Error \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont - Pull error for image: does-not-exist:latest \n' + 'pull access denied, repository does not exist or may require authorization: server message: insufficient_scope: authorization failed\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'unknown', + 'ansible-docker-test-01234567-cont', + 'Error', + 'pull access denied, repository does not exist or may require authorization: server message: insufficient_scope: authorization failed', + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull with policy=always" on 2024-01-13 in 2.15-rhel7.9 + ( + '2.21.0-2.15-rhel7.9-2024-01-13-docker_compose_v2_pull-pull-with-policy=always', + '2.21.0', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' 486039affc0a Pulling fs layer \n' + ' 486039affc0a Downloading [> ] 34.2kB/2.207MB\n' + ' 486039affc0a Verifying Checksum \n' + ' 486039affc0a Download complete \n' + ' 486039affc0a Extracting [> ] 32.77kB/2.207MB\n' + ' 486039affc0a Extracting [==================================================>] 2.207MB/2.207MB\n' + ' 486039affc0a Pull complete \n' + ' ansible-docker-test-01234567-cont Pulled \n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pulling fs layer', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Downloading', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Verifying Checksum', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Download complete', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pull complete', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull with policy=always" on 2024-01-13 in 2.15-rhel9.1 + ( + '2.21.0-2.15-rhel9.1-2024-01-13-docker_compose_v2_pull-pull-with-policy=always', + '2.21.0', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' 486039affc0a Pulling fs layer \n' + ' 486039affc0a Downloading [> ] 32.12kB/2.207MB\n' + ' 486039affc0a Download complete \n' + ' 486039affc0a Extracting [> ] 32.77kB/2.207MB\n' + ' 486039affc0a Extracting [==================================================>] 2.207MB/2.207MB\n' + ' 486039affc0a Pull complete \n' + ' ansible-docker-test-01234567-cont Pulled \n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pulling fs layer', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Downloading', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Download complete', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pull complete', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull with policy=always" on 2024-01-13 in 2.16-rhel9.2 + ( + '2.21.0-2.16-rhel9.2-2024-01-13-docker_compose_v2_pull-pull-with-policy=always', + '2.21.0', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' 486039affc0a Pulling fs layer \n' + ' 486039affc0a Downloading [> ] 32.12kB/2.207MB\n' + ' 486039affc0a Downloading [==================================================>] 2.207MB/2.207MB\n' + ' 486039affc0a Download complete \n' + ' 486039affc0a Extracting [> ] 32.77kB/2.207MB\n' + ' 486039affc0a Extracting [==================================================>] 2.207MB/2.207MB\n' + ' 486039affc0a Pull complete \n' + ' ansible-docker-test-01234567-cont Pulled \n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pulling fs layer', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Downloading', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Downloading', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Download complete', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pull complete', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull with policy=always" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always" on 2024-01-13 in devel-rhel9.3 + ( + '2.21.0-2.14-rhel9.0-2024-01-13-docker_compose_v2_pull-pull-with-policy=always', + '2.21.0', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' 486039affc0a Pulling fs layer \n' + ' 486039affc0a Downloading [> ] 32.16kB/2.207MB\n' + ' 486039affc0a Verifying Checksum \n' + ' 486039affc0a Download complete \n' + ' 486039affc0a Extracting [> ] 32.77kB/2.207MB\n' + ' 486039affc0a Extracting [==================================================>] 2.207MB/2.207MB\n' + ' 486039affc0a Pull complete \n' + ' ansible-docker-test-01234567-cont Pulled \n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pulling fs layer', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Downloading', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Verifying Checksum', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Download complete', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pull complete', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull with policy=always" on 2024-01-13 in 2.16-centos7 + ( + '2.21.0-2.16-centos7-2024-01-13-docker_compose_v2_pull-pull-with-policy=always', + '2.21.0', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' 486039affc0a Pulling fs layer \n' + ' 486039affc0a Downloading [> ] 32.16kB/2.207MB\n' + ' 486039affc0a Verifying Checksum \n' + ' 486039affc0a Download complete \n' + ' 486039affc0a Extracting [> ] 32.77kB/2.207MB\n' + ' 486039affc0a Extracting [================================================> ] 2.13MB/2.207MB\n' + ' 486039affc0a Extracting [==================================================>] 2.207MB/2.207MB\n' + ' 486039affc0a Pull complete \n' + ' ansible-docker-test-01234567-cont Pulled \n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pulling fs layer', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Downloading', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Verifying Checksum', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Download complete', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pull complete', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull with policy=always" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-devel-ubuntu2204-2024-01-13-docker_compose_v2_pull-pull-with-policy=always', + '2.21.0', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' 486039affc0a Pulling fs layer \n' + ' 486039affc0a Downloading [> ] 32.16kB/2.207MB\n' + ' 486039affc0a Verifying Checksum \n' + ' 486039affc0a Download complete \n' + ' 486039affc0a Extracting [> ] 32.77kB/2.207MB\n' + ' 486039affc0a Extracting [===============================================> ] 2.097MB/2.207MB\n' + ' 486039affc0a Extracting [==================================================>] 2.207MB/2.207MB\n' + ' 486039affc0a Pull complete \n' + ' ansible-docker-test-01234567-cont Pulled \n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pulling fs layer', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Downloading', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Verifying Checksum', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Download complete', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pull complete', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull with policy=always" on 2024-01-13 in devel-debian-bookworm + ( + '2.21.0-devel-debian-bookworm-2024-01-13-docker_compose_v2_pull-pull-with-policy=always', + '2.21.0', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' 486039affc0a Pulling fs layer \n' + ' 486039affc0a Downloading [> ] 32.16kB/2.207MB\n' + ' 486039affc0a Verifying Checksum \n' + ' 486039affc0a Download complete \n' + ' 486039affc0a Extracting [> ] 32.77kB/2.207MB\n' + ' 486039affc0a Extracting [==============================================> ] 2.032MB/2.207MB\n' + ' 486039affc0a Extracting [==================================================>] 2.207MB/2.207MB\n' + ' 486039affc0a Pull complete \n' + ' ansible-docker-test-01234567-cont Pulled \n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pulling fs layer', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Downloading', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Verifying Checksum', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Download complete', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pull complete', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull with policy=always" on 2024-01-13 in devel-ubuntu2004 + ( + '2.21.0-devel-ubuntu2004-2024-01-13-docker_compose_v2_pull-pull-with-policy=always', + '2.21.0', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' 486039affc0a Pulling fs layer \n' + ' 486039affc0a Downloading [> ] 32.16kB/2.207MB\n' + ' 486039affc0a Verifying Checksum \n' + ' 486039affc0a Download complete \n' + ' 486039affc0a Extracting [> ] 32.77kB/2.207MB\n' + ' 486039affc0a Extracting [============================================> ] 1.966MB/2.207MB\n' + ' 486039affc0a Extracting [==================================================>] 2.207MB/2.207MB\n' + ' 486039affc0a Pull complete \n' + ' ansible-docker-test-01234567-cont Pulled \n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pulling fs layer', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Downloading', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Verifying Checksum', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Download complete', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pull complete', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull with policy=always" on 2024-01-13 in 2.15-centos7 + ( + '2.21.0-2.15-centos7-2024-01-13-docker_compose_v2_pull-pull-with-policy=always', + '2.21.0', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' 486039affc0a Pulling fs layer \n' + ' 486039affc0a Downloading [> ] 32.16kB/2.207MB\n' + ' 486039affc0a Verifying Checksum \n' + ' 486039affc0a Download complete \n' + ' 486039affc0a Extracting [> ] 32.77kB/2.207MB\n' + ' 486039affc0a Extracting [=======================================> ] 1.737MB/2.207MB\n' + ' 486039affc0a Extracting [==================================================>] 2.207MB/2.207MB\n' + ' 486039affc0a Pull complete \n' + ' ansible-docker-test-01234567-cont Pulled \n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pulling fs layer', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Downloading', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Verifying Checksum', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Download complete', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pull complete', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull with policy=always" on 2024-01-13 in devel-debian-bullseye + ( + '2.21.0-devel-debian-bullseye-2024-01-13-docker_compose_v2_pull-pull-with-policy=always', + '2.21.0', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' 486039affc0a Pulling fs layer \n' + ' 486039affc0a Downloading [> ] 32.16kB/2.207MB\n' + ' 486039affc0a Verifying Checksum \n' + ' 486039affc0a Download complete \n' + ' 486039affc0a Extracting [> ] 32.77kB/2.207MB\n' + ' 486039affc0a Extracting [=====================================> ] 1.638MB/2.207MB\n' + ' 486039affc0a Extracting [==================================================>] 2.207MB/2.207MB\n' + ' 486039affc0a Pull complete \n' + ' ansible-docker-test-01234567-cont Pulled \n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pulling fs layer', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Downloading', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Verifying Checksum', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Download complete', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pull complete', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull with policy=always (again)" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (again)" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (again)" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (again)" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (again)" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (again)" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (again)" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (again)" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (again)" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (again)" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (again)" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-13-docker_compose_v2_pull-pull-with-policy=always-(again)', + '2.21.0', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' ansible-docker-test-01234567-cont Pulled \n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull with policy=always (again, check)" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (again, check)" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (again, check)" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (again, check)" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (again, check)" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (again, check)" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (again, check)" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (again, check)" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (again, check)" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (again, check)" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (again, check)" on 2024-01-13 in devel-ubuntu2204 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (check)" on 2024-01-13 in 2.14-rhel9.0 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (check)" on 2024-01-13 in 2.15-centos7 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (check)" on 2024-01-13 in 2.15-rhel7.9 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (check)" on 2024-01-13 in 2.15-rhel9.1 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (check)" on 2024-01-13 in 2.16-centos7 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (check)" on 2024-01-13 in 2.16-rhel9.2 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (check)" on 2024-01-13 in devel-debian-bookworm + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (check)" on 2024-01-13 in devel-debian-bullseye + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (check)" on 2024-01-13 in devel-rhel9.3 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (check)" on 2024-01-13 in devel-ubuntu2004 + # Duplicated in: docker_compose_v2_pull: "Pull with policy=always (check)" on 2024-01-13 in devel-ubuntu2204 + ( + '2.21.0-2.14-rhel9.0-2024-01-13-docker_compose_v2_pull-pull-with-policy=always-(again,-check)', + '2.21.0', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + ], + [], + ), + # ####################################################################################################################### + # ## Docker Compose 2.23.3 ############################################################################################## + # ####################################################################################################################### + # docker_compose_v2: "Absent" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Absent" on 2024-01-13 in devel-archlinux + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-absent', + '2.23.3', + False, + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopping\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopped\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Removing\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Removed\n' + ' Network ansible-docker-test-01234567-start-stop_default Removing\n' + ' Network ansible-docker-test-01234567-start-stop_default Removed\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopping', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopped', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Removing', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Removed', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Removing', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Removed', + None, + ), + ], + [], + ), + # docker_compose_v2: "Absent (check)" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Absent (check)" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-absent-(check)', + '2.23.3', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopping\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopped\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Removing\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Removed\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Removing\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Resource is still in use\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopping', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopped', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Removing', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Removed', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Removing', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + None, + 'Resource is still in use', + ), + ], + [], + ), + # docker_compose_v2: "Cleanup" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Cleanup" on 2024-01-13 in devel-archlinux + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Stopping service" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-cleanup', + '2.23.3', + False, + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Stopping\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Stopped\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Removing\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Removed\n' + ' Network ansible-docker-test-01234567-pull_default Removing\n' + ' Network ansible-docker-test-01234567-pull_default Removed\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Stopping', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Stopped', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Removing', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Removed', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Removing', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Removed', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Present" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-present', + '2.23.3', + False, + ' Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' Network ansible-docker-test-01234567-start-stop_default Created\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-07 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-present-(changed-check)', + '2.23.3', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container df477f7889c_ansible-docker-test-bc362ba-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container df477f7889c_ansible-docker-test-bc362ba-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + 'df477f7889c_ansible-docker-test-bc362ba-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'df477f7889c_ansible-docker-test-bc362ba-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed check)" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-13-docker_compose_v2-present-(changed-check)', + '2.23.3', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' DRY-RUN MODE - Container e3161c3ca1e_ansible-docker-test-26fefc5c-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container e3161c3ca1e_ansible-docker-test-26fefc5c-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + 'e3161c3ca1e_ansible-docker-test-26fefc5c-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'e3161c3ca1e_ansible-docker-test-26fefc5c-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (changed)" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Present (changed)" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-present-(changed)', + '2.23.3', + False, + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreate\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Recreated\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Recreated', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-13-docker_compose_v2-present-(check)', + '2.23.3', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-26fefc5c-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-26fefc5c-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-26fefc5c-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-26fefc5c-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (check)" on 2024-01-07 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-present-(check)', + '2.23.3', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-bc362ba-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-bc362ba-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-bc362ba-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-bc362ba-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (idempotent check)" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Present (idempotent check)" on 2024-01-13 in devel-archlinux + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Started (idempotent check)" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-present-(idempotent-check)', + '2.23.3', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Running\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Running', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present (idempotent)" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Present (idempotent)" on 2024-01-13 in devel-archlinux + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Started (idempotent)" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-present-(idempotent)', + '2.23.3', + False, + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Running\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Running', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present stopped" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Present stopped" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-present-stopped', + '2.23.3', + False, + ' Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' Network ansible-docker-test-01234567-start-stop_default Created\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present stopped (check)" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Present stopped (check)" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-present-stopped-(check)', + '2.23.3', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-start-stop_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Created\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-start-stop_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Created', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Present with pull=always" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-present-with-pull=always', + '2.23.3', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' ansible-docker-test-01234567-cont Pulled \n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Running\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Running', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-07 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-present-with-pull=always-(check)', + '2.23.3', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container 9f33f2ddb62_ansible-docker-test-bc362ba-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container 9f33f2ddb62_ansible-docker-test-bc362ba-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + '9f33f2ddb62_ansible-docker-test-bc362ba-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + '9f33f2ddb62_ansible-docker-test-bc362ba-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=always (check)" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-13-docker_compose_v2-present-with-pull=always-(check)', + '2.23.3', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreate\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Recreated\n' + ' DRY-RUN MODE - Container e6dd7e14964_ansible-docker-test-26fefc5c-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container e6dd7e14964_ansible-docker-test-26fefc5c-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreate', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Recreated', + None, + ), + Event( + 'container', + 'e6dd7e14964_ansible-docker-test-26fefc5c-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'e6dd7e14964_ansible-docker-test-26fefc5c-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Present with pull=missing" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-present-with-pull=missing', + '2.23.3', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' ansible-docker-test-01234567-cont Pulled \n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-13-docker_compose_v2-present-with-pull=missing-(check)', + '2.23.3', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-26fefc5c-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-26fefc5c-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-26fefc5c-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-26fefc5c-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (check)" on 2024-01-07 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-present-with-pull=missing-(check)', + '2.23.3', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-bc362ba-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-bc362ba-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-bc362ba-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-bc362ba-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent)" on 2024-01-13 in devel-archlinux + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent)" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-present-with-pull=missing-(idempotent)', + '2.23.3', + False, + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Running\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Running', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Present with pull=missing (idempotent, check)" on 2024-01-13 in devel-archlinux + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Present with pull=never (idempotent, check)" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-present-with-pull=missing-(idempotent,-check)', + '2.23.3', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Running\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Running', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-present-with-pull=never', + '2.23.3', + False, + ' Network ansible-docker-test-01234567-pull_default Creating\n' + ' Network ansible-docker-test-01234567-pull_default Created\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Present with pull=never" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-present-with-pull=never', + '2.23.3', + False, + ' Network ansible-docker-test-01234567-pull_default Creating\n' + ' Network ansible-docker-test-01234567-pull_default Created\n' + ' Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + 'Error response from daemon: no such image: does-not-exist:latest: No such image: does-not-exist:latest\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'unknown', + '', + 'Error', + 'Error response from daemon: no such image: does-not-exist:latest: No such image: does-not-exist:latest', + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in devel-archlinux + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-13-docker_compose_v2-present-with-pull=never-(check)', + '2.23.3', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-26fefc5c-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-26fefc5c-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-26fefc5c-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-26fefc5c-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Present with pull=never (check)" on 2024-01-07 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-present-with-pull=never-(check)', + '2.23.3', + True, + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Creating\n' + ' DRY-RUN MODE - Network ansible-docker-test-01234567-pull_default Created\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Creating\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1 Created\n' + ' DRY-RUN MODE - Container nsible-docker-test-bc362ba-pull-ansible-docker-test-01234567-cont-1 Starting\n' + ' DRY-RUN MODE - Container nsible-docker-test-bc362ba-pull-ansible-docker-test-01234567-cont-1 Started\n', + [ + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Creating', + None, + ), + Event( + 'network', + 'ansible-docker-test-01234567-pull_default', + 'Created', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Creating', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-pull-ansible-docker-test-01234567-cont-1', + 'Created', + None, + ), + Event( + 'container', + 'nsible-docker-test-bc362ba-pull-ansible-docker-test-01234567-cont-1', + 'Starting', + None, + ), + Event( + 'container', + 'nsible-docker-test-bc362ba-pull-ansible-docker-test-01234567-cont-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Present without explicit pull" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Present without explicit pull" on 2024-01-13 in devel-archlinux + # Duplicated in: docker_compose_v2_pull: "Pull" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-present-without-explicit-pull', + '2.23.3', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' ansible-docker-test-01234567-cont Error \n' + "Error response from daemon: pull access denied for does-not-exist, repository does not exist or may require 'docker login': denied: requested access to the resource is denied\n", # noqa: E501 + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'unknown', + 'ansible-docker-test-01234567-cont', + 'Error', + "Error response from daemon: pull access denied for does-not-exist, repository does not exist or may require 'docker login': denied: requested access to the resource is denied", # noqa: E501 + ), + ], + [], + ), + # docker_compose_v2: "Present without explicit pull (check)" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Present without explicit pull (check)" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-present-without-explicit-pull-(check)', + '2.23.3', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Error \n' + 'pull access denied, repository does not exist or may require authorization: server message: insufficient_scope: authorization failed\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'unknown', + 'ansible-docker-test-01234567-cont', + 'Error', + 'pull access denied, repository does not exist or may require authorization: server message: insufficient_scope: authorization failed', + ), + ], + [], + ), + # docker_compose_v2: "Restarted" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in devel-archlinux + # Duplicated in: docker_compose_v2: "Restarted" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-restarted', + '2.23.3', + False, + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Restarting\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Restarting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Restarted (check)" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in devel-archlinux + # Duplicated in: docker_compose_v2: "Restarted (check)" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-restarted-(check)', + '2.23.3', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Restarting\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Restarting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Started" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Started" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-started', + '2.23.3', + False, + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Started (check)" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Started (check)" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-started-(check)', + '2.23.3', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Starting\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Started\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Starting', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Started', + None, + ), + ], + [], + ), + # docker_compose_v2: "Stopped" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Stopped" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-stopped', + '2.23.3', + False, + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Running\n' + '\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopping\n' + ' Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopped\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Running', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopping', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopped', + None, + ), + ], + [], + ), + # docker_compose_v2: "Stopped (check)" on 2024-01-07 in devel-archlinux + # Duplicated in: docker_compose_v2: "Stopped (check)" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-07-docker_compose_v2-stopped-(check)', + '2.23.3', + True, + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Running\n' + '\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopping\n' + ' DRY-RUN MODE - Container ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1 Stopped\n', + [ + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Running', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopping', + None, + ), + Event( + 'container', + 'ansible-docker-test-01234567-start-stop-ansible-docker-test-01234567-container-1', + 'Stopped', + None, + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull (check)" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-13-docker_compose_v2_pull-pull-(check)', + '2.23.3', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Error \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont - Pull error for image: does-not-exist:latest \n' + 'pull access denied, repository does not exist or may require authorization: server message: insufficient_scope: authorization failed\n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'unknown', + 'ansible-docker-test-01234567-cont', + 'Error', + 'pull access denied, repository does not exist or may require authorization: server message: insufficient_scope: authorization failed', + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull with policy=always" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-13-docker_compose_v2_pull-pull-with-policy=always', + '2.23.3', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' ansible-docker-test-01234567-cont Pulled \n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull with policy=always (check)" on 2024-01-13 in devel-archlinux + # Duplicated in: docker_compose_v2_pull: "Pull with policy=missing (check)" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-13-docker_compose_v2_pull-pull-with-policy=always-(check)', + '2.23.3', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulling \n' + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Pulled \n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull with policy=missing" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-13-docker_compose_v2_pull-pull-with-policy=missing', + '2.23.3', + False, + ' ansible-docker-test-01234567-cont Pulling \n' + ' 486039affc0a Pulling fs layer \n' + ' 486039affc0a Downloading [> ] 32.16kB/2.207MB\n' + ' 486039affc0a Verifying Checksum \n' + ' 486039affc0a Download complete \n' + ' 486039affc0a Extracting [> ] 32.77kB/2.207MB\n' + ' 486039affc0a Extracting [==========================================> ] 1.868MB/2.207MB\n' + ' 486039affc0a Extracting [==================================================>] 2.207MB/2.207MB\n' + ' 486039affc0a Pull complete \n' + ' ansible-docker-test-01234567-cont Pulled \n', + [ + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulling', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pulling fs layer', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Downloading', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Verifying Checksum', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Download complete', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Extracting', + None, + ), + Event( + 'image-layer', + '486039affc0a', + 'Pull complete', + None, + ), + Event( + 'service', + 'ansible-docker-test-01234567-cont', + 'Pulled', + None, + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull with policy=missing (idempotent)" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-13-docker_compose_v2_pull-pull-with-policy=missing-(idempotent)', + '2.23.3', + False, + ' ansible-docker-test-01234567-cont Skipped - Image is already present locally \n', + [ + Event( + 'unknown', + 'ansible-docker-test-01234567-cont', + 'Skipped', + 'Image is already present locally', + ), + ], + [], + ), + # docker_compose_v2_pull: "Pull with policy=missing (idempotent, check)" on 2024-01-13 in devel-archlinux + ( + '2.23.3-devel-archlinux-2024-01-13-docker_compose_v2_pull-pull-with-policy=missing-(idempotent,-check)', + '2.23.3', + True, + ' DRY-RUN MODE - ansible-docker-test-01234567-cont Skipped - Image is already present locally \n', + [ + Event( + 'unknown', + 'ansible-docker-test-01234567-cont', + 'Skipped', + 'Image is already present locally', + ), + ], + [], + ), +] diff --git a/ansible_collections/community/docker/tests/unit/plugins/module_utils/test__logfmt.py b/ansible_collections/community/docker/tests/unit/plugins/module_utils/test__logfmt.py new file mode 100644 index 000000000..efcc15ff6 --- /dev/null +++ b/ansible_collections/community/docker/tests/unit/plugins/module_utils/test__logfmt.py @@ -0,0 +1,100 @@ +# Copyright (c) 2024, Felix Fontein <felix@fontein.de> +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +from __future__ import (absolute_import, division, print_function) +__metaclass__ = type + +import pytest + +from ansible_collections.community.docker.plugins.module_utils._logfmt import ( + InvalidLogFmt, + parse_line, +) + + +SUCCESS_TEST_CASES = [ + ( + 'time="2024-02-02T08:14:10+01:00" level=warning msg="a network with name influxNetwork exists but was not' + ' created for project \\"influxdb\\".\\nSet `external: true` to use an existing network"', + {}, + { + 'time': '2024-02-02T08:14:10+01:00', + 'level': 'warning', + 'msg': 'a network with name influxNetwork exists but was not created for project "influxdb".\nSet `external: true` to use an existing network', + }, + ), + ( + 'time="2024-02-02T08:14:10+01:00" level=warning msg="a network with name influxNetwork exists but was not' + ' created for project \\"influxdb\\".\\nSet `external: true` to use an existing network"', + {'logrus_mode': True}, + { + 'time': '2024-02-02T08:14:10+01:00', + 'level': 'warning', + 'msg': 'a network with name influxNetwork exists but was not created for project "influxdb".\nSet `external: true` to use an existing network', + }, + ), + ( + 'foo=bar a=14 baz="hello kitty" cool%story=bro f %^asdf', + {}, + { + 'foo': 'bar', + 'a': '14', + 'baz': 'hello kitty', + 'cool%story': 'bro', + 'f': None, + '%^asdf': None, + }, + ), + ( + '{"foo":"bar"}', + {}, + { + '{': None, + 'foo': None, + ':': None, + 'bar': None, + '}': None, + }, + ), +] + + +FAILURE_TEST_CASES = [ + ( + 'foo=bar a=14 baz="hello kitty" cool%story=bro f %^asdf', + {'logrus_mode': True}, + 'Key must always be followed by "=" in logrus mode', + ), + ( + '{}', + {'logrus_mode': True}, + 'Key must always be followed by "=" in logrus mode', + ), + ( + '[]', + {'logrus_mode': True}, + 'Key must always be followed by "=" in logrus mode', + ), + ( + '{"foo=bar": "baz=bam"}', + {'logrus_mode': True}, + 'Key must always be followed by "=" in logrus mode', + ), +] + + +@pytest.mark.parametrize('line, kwargs, result', SUCCESS_TEST_CASES) +def test_parse_line_success(line, kwargs, result): + res = parse_line(line, **kwargs) + print(repr(res)) + assert res == result + + +@pytest.mark.parametrize('line, kwargs, message', FAILURE_TEST_CASES) +def test_parse_line_success(line, kwargs, message): + with pytest.raises(InvalidLogFmt) as exc: + parse_line(line, **kwargs) + + print(repr(exc.value.args[0])) + assert exc.value.args[0] == message diff --git a/ansible_collections/community/docker/tests/unit/plugins/module_utils/test_compose_v2.py b/ansible_collections/community/docker/tests/unit/plugins/module_utils/test_compose_v2.py new file mode 100644 index 000000000..7292af2a7 --- /dev/null +++ b/ansible_collections/community/docker/tests/unit/plugins/module_utils/test_compose_v2.py @@ -0,0 +1,242 @@ +# Copyright 2022 Red Hat | Ansible +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +from __future__ import (absolute_import, division, print_function) +__metaclass__ = type + +import pytest + +from ansible_collections.community.docker.plugins.module_utils.compose_v2 import ( + Event, + parse_events, +) + +from .compose_v2_test_cases import EVENT_TEST_CASES + + +EXTRA_TEST_CASES = [ + ( + '2.24.2-manual-build-dry-run', + '2.24.2', + True, + ' DRY-RUN MODE - build service foobar \n' + ' DRY-RUN MODE - ==> ==> writing image dryRun-8843d7f92416211de9ebb963ff4ce28125932878 \n' + ' DRY-RUN MODE - ==> ==> naming to my-python \n' + ' DRY-RUN MODE - Network compose_default Creating\n' + ' DRY-RUN MODE - Network compose_default Created\n' + ' DRY-RUN MODE - Container compose-foobar-1 Creating\n' + ' DRY-RUN MODE - Container compose-foobar-1 Created\n' + ' DRY-RUN MODE - Container ompose-foobar-1 Starting\n' + ' DRY-RUN MODE - Container ompose-foobar-1 Started\n', + [ + Event( + 'service', + 'foobar', + 'Building', + None, + ), + Event( + 'network', + 'compose_default', + 'Creating', + None, + ), + Event( + 'network', + 'compose_default', + 'Created', + None, + ), + Event( + 'container', + 'compose-foobar-1', + 'Creating', + None, + ), + Event( + 'container', + 'compose-foobar-1', + 'Created', + None, + ), + Event( + 'container', + 'ompose-foobar-1', + 'Starting', + None, + ), + Event( + 'container', + 'ompose-foobar-1', + 'Started', + None, + ), + ], + [], + ), + ( + # https://github.com/ansible-collections/community.docker/issues/785 + '2.20.0-manual-pull', + '2.20.0', + False, + '4f4fb700ef54 Waiting\n' + '238022553356 Downloading 541B/541B\n' + '972e292d3a60 Downloading 106kB/10.43MB\n' + 'f2543dc9f0a9 Downloading 25.36kB/2.425MB\n' + '972e292d3a60 Downloading 5.925MB/10.43MB\n' + 'f2543dc9f0a9 Downloading 2.219MB/2.425MB\n' + 'f2543dc9f0a9 Extracting 32.77kB/2.425MB\n' + '4f4fb700ef54 Downloading 32B/32B\n' + 'f2543dc9f0a9 Extracting 2.425MB/2.425MB\n' + '972e292d3a60 Extracting 131.1kB/10.43MB\n' + '972e292d3a60 Extracting 10.43MB/10.43MB\n' + '238022553356 Extracting 541B/541B\n' + '4f4fb700ef54 Extracting 32B/32B\n', + [ + Event( + 'image-layer', + '4f4fb700ef54', + 'Waiting', + None, + ), + Event( + 'image-layer', + '238022553356', + 'Downloading', + None, + ), + Event( + 'image-layer', + '972e292d3a60', + 'Downloading', + None, + ), + Event( + 'image-layer', + 'f2543dc9f0a9', + 'Downloading', + None, + ), + Event( + 'image-layer', + '972e292d3a60', + 'Downloading', + None, + ), + Event( + 'image-layer', + 'f2543dc9f0a9', + 'Downloading', + None, + ), + Event( + 'image-layer', + 'f2543dc9f0a9', + 'Extracting', + None, + ), + Event( + 'image-layer', + '4f4fb700ef54', + 'Downloading', + None, + ), + Event( + 'image-layer', + 'f2543dc9f0a9', + 'Extracting', + None, + ), + Event( + 'image-layer', + '972e292d3a60', + 'Extracting', + None, + ), + Event( + 'image-layer', + '972e292d3a60', + 'Extracting', + None, + ), + Event( + 'image-layer', + '238022553356', + 'Extracting', + None, + ), + Event( + 'image-layer', + '4f4fb700ef54', + 'Extracting', + None, + ), + ], + [], + ), + ( + # https://github.com/ansible-collections/community.docker/issues/787 + '2.20.3-logrus-warn', + '2.20.3', + False, + 'time="2024-02-02T08:14:10+01:00" level=warning msg="a network with name influxNetwork exists but was not' + ' created for project \\"influxdb\\".\\nSet `external: true` to use an existing network"\n', + [], + [ + 'a network with name influxNetwork exists but was not created for project "influxdb".\nSet `external: true` to use an existing network', + ], + ), + ( + # https://github.com/ansible-collections/community.docker/issues/807 + '2.20.3-image-warning-error', + '2.20.3', + False, + " dummy3 Warning \n" + " dummy2 Warning \n" + " dummy Error \n" + " dummy4 Warning Foo bar \n" + " dummy5 Error Bar baz bam \n", + [ + Event( + 'unknown', + 'dummy', + 'Error', + None, + ), + Event( + 'unknown', + 'dummy5', + 'Error', + 'Bar baz bam', + ), + ], + [ + 'Unspecified warning for dummy3', + 'Unspecified warning for dummy2', + 'dummy4: Foo bar', + ], + ), +] + +_ALL_TEST_CASES = EVENT_TEST_CASES + EXTRA_TEST_CASES + + +@pytest.mark.parametrize( + 'test_id, compose_version, dry_run, stderr, events, warnings', + _ALL_TEST_CASES, + ids=[tc[0] for tc in _ALL_TEST_CASES], +) +def test_parse_events(test_id, compose_version, dry_run, stderr, events, warnings): + collected_warnings = [] + + def collect_warning(msg): + collected_warnings.append(msg) + + collected_events = parse_events(stderr, dry_run=dry_run, warn_function=collect_warning) + + print(collected_events) + print(collected_warnings) + + assert collected_events == events + assert collected_warnings == warnings diff --git a/ansible_collections/community/docker/tests/unit/requirements.yml b/ansible_collections/community/docker/tests/unit/requirements.yml index 586a6a1b3..e91ea4745 100644 --- a/ansible_collections/community/docker/tests/unit/requirements.yml +++ b/ansible_collections/community/docker/tests/unit/requirements.yml @@ -5,3 +5,4 @@ collections: - community.internal_test_tools +- community.library_inventory_filtering_v1 diff --git a/ansible_collections/community/docker/tests/utils/shippable/shippable.sh b/ansible_collections/community/docker/tests/utils/shippable/shippable.sh index 2ca96b888..c824e2abf 100755 --- a/ansible_collections/community/docker/tests/utils/shippable/shippable.sh +++ b/ansible_collections/community/docker/tests/utils/shippable/shippable.sh @@ -65,22 +65,18 @@ else retry pip install "https://github.com/ansible/ansible/archive/stable-${ansible_version}.tar.gz" --disable-pip-version-check fi -if [ "${SHIPPABLE_BUILD_ID:-}" ]; then - export ANSIBLE_COLLECTIONS_PATHS="${HOME}/.ansible" - SHIPPABLE_RESULT_DIR="$(pwd)/shippable" - TEST_DIR="${ANSIBLE_COLLECTIONS_PATHS}/ansible_collections/community/docker" - mkdir -p "${TEST_DIR}" - cp -aT "${SHIPPABLE_BUILD_DIR}" "${TEST_DIR}" - cd "${TEST_DIR}" -else - export ANSIBLE_COLLECTIONS_PATHS="${PWD}/../../../" -fi +export ANSIBLE_COLLECTIONS_PATHS="${PWD}/../../../" if [ "${test}" == "sanity/extra" ]; then retry pip install junit-xml --disable-pip-version-check fi # START: HACK + +retry git clone --depth=1 --single-branch --branch stable-1 https://github.com/ansible-collections/community.library_inventory_filtering.git "${ANSIBLE_COLLECTIONS_PATHS}/ansible_collections/community/library_inventory_filtering_v1" +# NOTE: we're installing with git to work around Galaxy being a huge PITA (https://github.com/ansible/galaxy/issues/2429) +# retry ansible-galaxy -vvv collection install community.library_inventory_filtering_v1 + if [ "${test}" == "sanity/extra" ]; then # Nothing further should be added to this list. # This is to prevent modules or plugins in this collection having a runtime dependency on other collections. |