mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
c0008e976f
* Add ArchLinux, Debian Bullseye and CentOS Stream 8 to CI.
* Add Alpine to CI matrix as well.
(cherry picked from commit a06903f33a
)
Co-authored-by: Felix Fontein <felix@fontein.de>
115 lines
3.1 KiB
YAML
115 lines
3.1 KiB
YAML
---
|
|
- name: "Create filesystem ({{ fstype }})"
|
|
community.general.filesystem:
|
|
dev: '{{ dev }}'
|
|
fstype: '{{ fstype }}'
|
|
register: fs_result
|
|
|
|
- name: "Assert that results are as expected"
|
|
ansible.builtin.assert:
|
|
that:
|
|
- 'fs_result is changed'
|
|
- 'fs_result is success'
|
|
|
|
- name: "Get UUID of created filesystem"
|
|
ansible.builtin.shell:
|
|
cmd: "{{ get_uuid_cmd }}"
|
|
changed_when: false
|
|
register: uuid
|
|
|
|
- name: "Check that filesystem isn't created if force isn't used"
|
|
community.general.filesystem:
|
|
dev: '{{ dev }}'
|
|
fstype: '{{ fstype }}'
|
|
register: fs2_result
|
|
|
|
- name: "Get UUID of the filesystem"
|
|
ansible.builtin.shell:
|
|
cmd: "{{ get_uuid_cmd }}"
|
|
changed_when: false
|
|
register: uuid2
|
|
|
|
- name: "Assert that filesystem UUID is not changed"
|
|
ansible.builtin.assert:
|
|
that:
|
|
- 'fs2_result is not changed'
|
|
- 'fs2_result is success'
|
|
- 'uuid.stdout == uuid2.stdout'
|
|
|
|
- name: "Check that filesystem is recreated if force is used"
|
|
community.general.filesystem:
|
|
dev: '{{ dev }}'
|
|
fstype: '{{ fstype }}'
|
|
force: yes
|
|
register: fs3_result
|
|
|
|
- name: "Get UUID of the new filesystem"
|
|
ansible.builtin.shell:
|
|
cmd: "{{ get_uuid_cmd }}"
|
|
changed_when: false
|
|
register: uuid3
|
|
|
|
- name: "Assert that filesystem UUID is changed"
|
|
# libblkid gets no UUID at all for this fstype on FreeBSD
|
|
when: not (ansible_system == 'FreeBSD' and fstype == 'reiserfs')
|
|
ansible.builtin.assert:
|
|
that:
|
|
- 'fs3_result is changed'
|
|
- 'fs3_result is success'
|
|
- 'uuid.stdout != uuid3.stdout'
|
|
|
|
|
|
- when: 'grow|bool and (fstype != "vfat" or resize_vfat)'
|
|
block:
|
|
- name: "Increase fake device"
|
|
community.general.filesize:
|
|
path: '{{ image_file }}'
|
|
size: '{{ fssize | int + 1 }}M'
|
|
|
|
- name: "Resize loop device for LVM"
|
|
ansible.builtin.command:
|
|
cmd: 'losetup -c {{ dev }}'
|
|
when: fstype == 'lvm'
|
|
|
|
- name: "Resize memory disk for UFS"
|
|
ansible.builtin.command:
|
|
cmd: 'mdconfig -r -u {{ dev }} -s {{ fssize | int + 1 }}M'
|
|
when: fstype == 'ufs'
|
|
|
|
- name: "Expand filesystem"
|
|
community.general.filesystem:
|
|
dev: '{{ dev }}'
|
|
fstype: '{{ fstype }}'
|
|
resizefs: yes
|
|
register: fs4_result
|
|
|
|
- name: "Get UUID of the filesystem"
|
|
ansible.builtin.shell:
|
|
cmd: "{{ get_uuid_cmd }}"
|
|
changed_when: false
|
|
register: uuid4
|
|
|
|
- name: "Assert that filesystem UUID is not changed"
|
|
ansible.builtin.assert:
|
|
that:
|
|
- 'fs4_result is changed'
|
|
- 'fs4_result is success'
|
|
- 'uuid3.stdout == uuid4.stdout' # unchanged
|
|
|
|
- when:
|
|
- (grow | bool and (fstype != "vfat" or resize_vfat)) or
|
|
(fstype == "xfs" and ansible_system == "Linux" and
|
|
ansible_distribution not in ["CentOS", "Ubuntu"])
|
|
block:
|
|
- name: "Check that resizefs does nothing if device size is not changed"
|
|
community.general.filesystem:
|
|
dev: '{{ dev }}'
|
|
fstype: '{{ fstype }}'
|
|
resizefs: yes
|
|
register: fs5_result
|
|
|
|
- name: "Assert that the state did not change"
|
|
ansible.builtin.assert:
|
|
that:
|
|
- 'fs5_result is not changed'
|
|
- 'fs5_result is succeeded'
|