1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2024-09-14 20:13:21 +02:00
community.general/tests/integration/targets/filesystem/tasks/create_device.yml
Felix Fontein 1f49241481
CI: add extra VMs for certain tests (#5713)
* Remove superfluous VM.

* Add extra VM group.

* More platforms, add scripts.

* [REVERT THIS] Shrink matrix to only the tests we are interested in.

* Fix some tests.

* Skip snap tests on Ubuntu VMs for now.

* Skip xfs_quota tests on Alpine VMs due to ansible.posix.mount failing.

* Revert "[REVERT THIS] Shrink matrix to only the tests we are interested in."

This reverts commit 2e98e163db.

* Stick to Alpine and Ubuntu 22.04 for now.
2022-12-21 07:31:46 +01:00

64 lines
1.8 KiB
YAML

---
# 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 a "disk" file'
community.general.filesize:
path: '{{ image_file }}'
size: '{{ fssize }}M'
force: true
- vars:
dev: '{{ image_file }}'
block:
- when: fstype == 'lvm'
block:
- name: 'Show next free loop device'
ansible.builtin.command:
cmd: 'losetup -f'
register: loop_device_cmd
- name: 'Create a loop device for LVM'
ansible.builtin.command:
cmd: 'losetup -f {{ dev }}'
- name: 'Switch to loop device target for further tasks'
ansible.builtin.set_fact:
dev: "{{ loop_device_cmd.stdout }}"
- when: fstype == 'ufs'
block:
- name: 'Create a memory disk for UFS'
ansible.builtin.command:
cmd: 'mdconfig -a -f {{ dev }}'
register: memory_disk_cmd
- name: 'Switch to memory disk target for further tasks'
ansible.builtin.set_fact:
dev: "/dev/{{ memory_disk_cmd.stdout }}"
- include_tasks: '{{ action }}.yml'
always:
- name: 'Detach loop device used for LVM'
ansible.builtin.command:
cmd: 'losetup -d {{ dev }}'
removes: '{{ dev }}'
when: fstype == 'lvm'
- name: 'Detach memory disk used for UFS'
ansible.builtin.command:
cmd: 'mdconfig -d -u {{ dev }}'
removes: '{{ dev }}'
when: fstype == 'ufs'
- name: 'Clean correct device for LVM and UFS'
ansible.builtin.set_fact:
dev: '{{ image_file }}'
when: fstype in ['lvm', 'ufs']
- name: 'Remove disk image file'
ansible.builtin.file:
name: '{{ image_file }}'
state: absent