diff options
| author | Michal Nasiadka <mnasiadka@gmail.com> | 2025-10-14 09:19:17 +0200 |
|---|---|---|
| committer | Michal Nasiadka <mnasiadka@gmail.com> | 2025-10-20 07:39:19 +0000 |
| commit | 2e5c62c31c89d0e992c640576f3b184903c6bf65 (patch) | |
| tree | 72caee19df2b654d66c38bcfb8c156dada063cc0 /roles | |
| parent | 102dc3cd0c8137df3856dd6e7885b4fa7ad5e448 (diff) | |
| download | kolla-ansible-2e5c62c31c89d0e992c640576f3b184903c6bf65.tar.gz kolla-ansible-2e5c62c31c89d0e992c640576f3b184903c6bf65.zip | |
CI: Rework setup_disks.sh into Ansible role
Change-Id: Icd8648399a7d0a74419c80d573792397f971ff3c
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
Diffstat (limited to 'roles')
| -rw-r--r-- | roles/kolla-ansible-setup-disks/README.rst | 15 | ||||
| -rw-r--r-- | roles/kolla-ansible-setup-disks/tasks/main.yml | 42 |
2 files changed, 57 insertions, 0 deletions
diff --git a/roles/kolla-ansible-setup-disks/README.rst b/roles/kolla-ansible-setup-disks/README.rst new file mode 100644 index 000000000..90bb4e92c --- /dev/null +++ b/roles/kolla-ansible-setup-disks/README.rst @@ -0,0 +1,15 @@ +Prepare disks for Kolla-Ansible CI run. + +**Role Variables** + +.. zuul:rolevar:: kolla_ansible_setup_disks_filepath + + Path to allocated file passed to loopmount + +.. zuul:rolevar:: kolla_ansible_setup_disks_lv_name + + Logical volume name to create (skipped if not set) + +.. zuul:rolevar:: kolla_ansible_setup_disks_vg_name + + Volume group name to create diff --git a/roles/kolla-ansible-setup-disks/tasks/main.yml b/roles/kolla-ansible-setup-disks/tasks/main.yml new file mode 100644 index 000000000..e4e25f736 --- /dev/null +++ b/roles/kolla-ansible-setup-disks/tasks/main.yml @@ -0,0 +1,42 @@ +--- +- name: Check if kolla_ansible_setup_disks_file_path is set + ansible.builtin.assert: + that: kolla_ansible_setup_disks_file_path is defined + +- name: Check if kolla_ansible_setup_disks_vg_name is set + ansible.builtin.assert: + that: kolla_ansible_setup_disks_vg_name is defined + +- name: Allocate file for disk backing + become: true + community.general.filesize: + path: "{{ kolla_ansible_setup_disks_file_path }}" + size: "{{ kolla_ansible_setup_disks_file_size | default('5G') }}" + +- name: Get free loop device + become: true + ansible.builtin.shell: + cmd: "losetup -f" + register: _loop_device + +- name: Mount file on loop device + become: true + ansible.builtin.shell: + cmd: > + losetup {{ _loop_device.stdout }} + {{ kolla_ansible_setup_disks_file_path }} + +- name: Create LVM extents on loop device + become: true + community.general.lvg: + vg: "{{ kolla_ansible_setup_disks_vg_name }}" + pvs: "{{ _loop_device.stdout }}" + +- name: Create LV + become: true + community.general.lvol: + vg: "{{ kolla_ansible_setup_disks_vg_name }}" + lv: "{{ kolla_ansible_setup_disks_lv_name }}" + size: "100%FREE" + when: + - kolla_ansible_setup_disks_lv_name is defined |
