From: David Galloway Date: Fri, 29 Sep 2017 19:27:15 +0000 (-0400) Subject: testnode: Support logical volume management X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=bb9dbc377415a771073d0d992bfbbe88a4b45943;p=ceph-cm-ansible.git testnode: Support logical volume management Signed-off-by: David Galloway --- diff --git a/roles/testnode/tasks/configure_lvm.yml b/roles/testnode/tasks/configure_lvm.yml new file mode 100644 index 00000000..ccc6aa74 --- /dev/null +++ b/roles/testnode/tasks/configure_lvm.yml @@ -0,0 +1,34 @@ +--- +- name: "Create volume group(s)" + lvg: + vg: "{{ item.key }}" + pvs: "{{ item.value.pvs }}" + state: present + with_dict: "{{ volume_groups }}" + when: volume_groups is defined + +- name: "Create logical volume(s)" + lvol: + vg: "{{ item.value.vg }}" + lv: "{{ item.key }}" + size: "{{ item.value.size }}" + with_dict: "{{ logical_volumes }}" + when: logical_volumes is defined + +- name: "Erase /scratch_devs so we know it's accurate" + file: + path: /scratch_devs + state: absent + +- name: "Write /scratch_devs" + lineinfile: + dest: /scratch_devs + create: yes + owner: root + group: root + mode: 0644 + line: "/dev/{{ item.value.vg }}/{{ item.key }}" + with_dict: "{{ logical_volumes }}" + when: + - logical_volumes is defined + - item.value.scratch_dev is defined diff --git a/roles/testnode/tasks/lvm.yml b/roles/testnode/tasks/lvm.yml index e007a36c..a6e9c105 100644 --- a/roles/testnode/tasks/lvm.yml +++ b/roles/testnode/tasks/lvm.yml @@ -6,3 +6,7 @@ line: 'types = [ "rbd", 16 ]' backrefs: yes state: present + +- include: configure_lvm.yml + when: (logical_volumes is defined) or + (volume_groups is defined) diff --git a/roles/testnode/tasks/zap_disks.yml b/roles/testnode/tasks/zap_disks.yml index e4dca3f2..4686a97e 100644 --- a/roles/testnode/tasks/zap_disks.yml +++ b/roles/testnode/tasks/zap_disks.yml @@ -26,3 +26,6 @@ shell: "sgdisk --zap-all /dev/{{ item.key }} || sgdisk --zap-all /dev/{{ item.key }}" with_dict: "{{ ansible_devices }}" when: item.key not in root_disk + +- name: Remove all LVM data + shell: "dmsetup remove_all --force"