mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
e342dfb467
* CI tests: add note to main.yml
* improve
(cherry picked from commit 9d5044ac1a
)
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
68 lines
2.2 KiB
YAML
68 lines
2.2 KiB
YAML
---
|
|
####################################################################
|
|
# WARNING: These are designed specifically for Ansible tests #
|
|
# and should not be used as examples of how to write Ansible roles #
|
|
####################################################################
|
|
|
|
- name: Create random names
|
|
set_fact:
|
|
cname: "{{ 'ansible-container-%0x' % ((2**32) | random) }}"
|
|
nname: "{{ 'ansible-network-%0x' % ((2**32) | random) }}"
|
|
vname: "{{ 'ansible-volume-%0x' % ((2**32) | random) }}"
|
|
|
|
- block:
|
|
# Create objects to be pruned
|
|
- docker_container:
|
|
name: "{{ cname }}"
|
|
image: hello-world
|
|
state: present
|
|
register: container
|
|
- docker_network:
|
|
name: "{{ nname }}"
|
|
state: present
|
|
register: network
|
|
- docker_volume:
|
|
name: "{{ vname }}"
|
|
state: present
|
|
register: volume
|
|
|
|
# Prune objects
|
|
- docker_prune:
|
|
containers: yes
|
|
images: yes
|
|
networks: yes
|
|
volumes: yes
|
|
builder_cache: "{{ docker_py_version is version('3.3.0', '>=') }}"
|
|
register: result
|
|
|
|
# Analyze result
|
|
- debug: var=result
|
|
- assert:
|
|
that:
|
|
# containers
|
|
- container.container.Id in result.containers
|
|
- "'containers_space_reclaimed' in result"
|
|
# images
|
|
- "'images_space_reclaimed' in result"
|
|
# networks
|
|
- network.network.Name in result.networks
|
|
# volumes
|
|
- volume.volume.Name in result.volumes
|
|
- "'volumes_space_reclaimed' in result"
|
|
# builder_cache
|
|
- "'builder_cache_space_reclaimed' in result or docker_py_version is version('3.3.0', '<')"
|
|
- "'builder_cache_space_reclaimed' not in result or docker_py_version is version('3.3.0', '>=')"
|
|
|
|
# Test with filters
|
|
- docker_prune:
|
|
images: yes
|
|
images_filters:
|
|
dangling: true
|
|
register: result
|
|
|
|
- debug: var=result
|
|
|
|
when: docker_py_version is version('2.1.0', '>=') and docker_api_version is version('1.25', '>=')
|
|
|
|
- fail: msg="Too old docker / docker-py version to run docker_prune tests!"
|
|
when: not(docker_py_version is version('2.1.0', '>=') and docker_api_version is version('1.25', '>=')) and (ansible_distribution != 'CentOS' or ansible_distribution_major_version|int > 6)
|