--- # 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: Create random volume name ansible.builtin.set_fact: cname: "{{ 'ansible-docker-test-%0x' % ((2**32) | random) }}" - name: Make sure volume is not there community.docker.docker_volume: name: "{{ cname }}" state: absent - name: Inspect a non-present volume community.docker.docker_volume_info: name: "{{ cname }}" register: result - ansible.builtin.assert: that: - "not result.exists" - "'volume' in result" - "result.volume is none" - name: Make sure volume exists community.docker.docker_volume: name: "{{ cname }}" - name: Inspect a present volume community.docker.docker_volume_info: name: "{{ cname }}" register: result - name: Dump docker_volume_info result ansible.builtin.debug: var=result - name: "Comparison: use 'docker volume inspect'" ansible.builtin.command: docker volume inspect "{{ cname }}" register: docker_volume_inspect ignore_errors: true - block: - ansible.builtin.set_fact: docker_volume_inspect_result: "{{ docker_volume_inspect.stdout | from_json }}" - name: Dump docker volume inspect result ansible.builtin.debug: var=docker_volume_inspect_result when: docker_volume_inspect is not failed - name: Cleanup community.docker.docker_volume: name: "{{ cname }}" state: absent - ansible.builtin.assert: that: - result.exists - "'volume' in result" - "result.volume is truthy" - ansible.builtin.assert: that: - "result.volume == docker_volume_inspect_result[0]" when: docker_volume_inspect is not failed - ansible.builtin.assert: that: - "'is too new. Maximum supported API version is' in docker_volume_inspect.stderr" when: docker_volume_inspect is failed when: docker_api_version is version('1.25', '>=') - ansible.builtin.fail: msg="Too old docker / docker-py version to run docker_volume_info tests!" when: not(docker_api_version is version('1.25', '>=')) and (ansible_facts.distribution != 'CentOS' or ansible_facts.distribution_major_version|int > 6)