Skip to content

Instantly share code, notes, and snippets.

@richm
Created December 15, 2023 19:08
Show Gist options
  • Save richm/e144f391f4a8391bf35003d18eaedb9b to your computer and use it in GitHub Desktop.
Save richm/e144f391f4a8391bf35003d18eaedb9b to your computer and use it in GitHub Desktop.
real new test
---
- name: Basic snapshot test
hosts: all
tasks:
- name: Run the storage role to create test LVs
include_role:
name: fedora.linux_system_roles.storage
- name: Get unused disks
include_tasks: get_unused_disk.yml
vars:
min_size: "1g"
min_return: 10
- name: Set disk lists
set_fact:
disk_list_1: "{{ range(0, 3) | map('extract', unused_disks) | list }}"
disk_list_2: "{{ range(3, 6) | map('extract', unused_disks) | list }}"
disk_list_3: "{{ range(6, 10) | map('extract', unused_disks) | list }}"
- name: Create LVM logical volumes under volume groups
include_role:
name: fedora.linux_system_roles.storage
vars:
storage_pools:
- name: test_vg1
disks: "{{ disk_list_1 }}"
volumes:
- name: lv1
size: "15%"
- name: lv2
size: "50%"
- name: test_vg2
disks: "{{ disk_list_2 }}"
volumes:
- name: lv3
size: "10%"
- name: lv4
size: "20%"
- name: test_vg3
disks: "{{ disk_list_3 }}"
volumes:
- name: lv5
size: "30%"
- name: lv6
size: "25%"
- name: lv7
size: "10%"
- name: lv8
size: "10%"
- name: Run the snapshot role to create snapshot LVs
include_role:
name: linux-system-roles.snapshot
vars:
snapshot_lvm_percent_space_required: 15
snapshot_all: true
snapshot_lvm_suffix: _z
snapshot_lvm_prefix: a_
snapshot_lvm_action: snapshot
- name: Verify the snapshot LVs are created
include_role:
name: linux-system-roles.snapshot
vars:
snapshot_lvm_suffix: _z
snapshot_lvm_prefix: a_
snapshot_lvm_verify: true
snapshot_lvm_action: check
- name: Run the snapshot role remove the snapshot LVs
include_role:
name: linux-system-roles.snapshot
vars:
snapshot_lvm_suffix: _z
snapshot_lvm_prefix: a_
snapshot_lvm_action: clean
- name: Clean up storage volumes
include_role:
name: fedora.linux_system_roles.storage
vars:
storage_safe_mode: false
storage_pools:
- name: test_vg1
disks: "{{ disk_list_1 }}"
state: absent
volumes:
- name: lv1
state: absent
- name: lv2
state: absent
- name: test_vg2
disks: "{{ disk_list_2 }}"
state: absent
volumes:
- name: lv3
state: absent
- name: lv4
state: absent
- name: test_vg3
disks: "{{ disk_list_3 }}"
state: absent
volumes:
- name: lv5
state: absent
- name: lv6
state: absent
- name: lv7
state: absent
- name: lv8
state: absent
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment