mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
f6db0745fc
* revamp filesystem module to prepare next steps * pass all commands to module.run_command() as lists * refactor grow() and grow_cmd() to not need to override them so much * refactor all existing get_fs_size() overrides to raise a ValueError if not able to parse command output and return an integer. * override MKFS_FORCE_FLAGS the same way for all fstypes that require it * improve documentation of limitations of the module regarding FreeBSD * fix indentation in DOCUMENTATION * add/update function/method docstrings * fix pylint hints filesystem: refactor integration tests * Include *reiserfs* and *swap* in tests. * Fix reiserfs related code and tests accordingly. * Replace "other fs" (unhandled by this module), from *swap* to *minix* (both mkswap and mkfs.minix being provided by util-linux). * Replace *dd* commands by *filesize* dedicated module. * Use FQCNs and name the tasks. * Update main tests conditionals. * add a changelog fragment * Apply suggestions from code review Co-authored-by: Felix Fontein <felix@fontein.de> * declare variables as lists when lists are needed * fix construction without useless conversion Co-authored-by: Felix Fontein <felix@fontein.de>
39 lines
1,017 B
YAML
39 lines
1,017 B
YAML
---
|
|
- 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: 'Create a loop device for LVM'
|
|
ansible.builtin.command:
|
|
cmd: 'losetup --show -f {{ dev }}'
|
|
register: loop_device_cmd
|
|
|
|
- name: 'Switch to loop device target for further tasks'
|
|
ansible.builtin.set_fact:
|
|
dev: "{{ loop_device_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: 'Clean correct device for LVM'
|
|
ansible.builtin.set_fact:
|
|
dev: '{{ image_file }}'
|
|
when: fstype == 'lvm'
|
|
|
|
- name: 'Remove disk image file'
|
|
ansible.builtin.file:
|
|
name: '{{ image_file }}'
|
|
state: absent
|