From bae487535bfcaa8fd4d0361cfe147dbb1fbb5d3f Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Tue, 30 Apr 2024 12:34:46 +0200 Subject: add storage roles: mdadm and disk --- roles/storage/disk/volume/defaults/main.yml | 13 ++++++++++++ roles/storage/disk/volume/tasks/main.yml | 31 +++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+) create mode 100644 roles/storage/disk/volume/defaults/main.yml create mode 100644 roles/storage/disk/volume/tasks/main.yml (limited to 'roles/storage/disk/volume') diff --git a/roles/storage/disk/volume/defaults/main.yml b/roles/storage/disk/volume/defaults/main.yml new file mode 100644 index 00000000..5e27bb51 --- /dev/null +++ b/roles/storage/disk/volume/defaults/main.yml @@ -0,0 +1,13 @@ +--- +# disk_volume: +# device: /dev/disk/by-id/foo +# label: gpt +# number: 1 +# part_type: primary +# part_start: "10GiB" +# part_end: "100%" +# fs: ext4 +# dest: /srv/foo +# mntopts: x-systemd.automount,nofail + +disk_volume: "{{ storage_volume }}" diff --git a/roles/storage/disk/volume/tasks/main.yml b/roles/storage/disk/volume/tasks/main.yml new file mode 100644 index 00000000..364e4d7f --- /dev/null +++ b/roles/storage/disk/volume/tasks/main.yml @@ -0,0 +1,31 @@ +--- +- name: create disk device + vars: + disk_device: "{{ disk_volume }}" + include_role: + name: storage/disk/device + +- name: create filesystem + filesystem: + dev: "{{ storage_device_path }}" + fstype: "{{ disk_volume.fs }}" + +- name: mount filesytem + mount: + src: "{{ storage_device_path }}" + path: "{{ disk_volume.dest }}" + fstype: "{{ disk_volume.fs }}" + opts: "{{ disk_volume.mntopts | default(omit) }}" + state: mounted + +- name: set volume owner/group and mode + file: + state: directory + path: "{{ disk_volume.dest }}" + mode: "{{ disk_volume.mode | default(omit) }}" + owner: "{{ disk_volume.owner | default(omit) }}" + group: "{{ disk_volume.group | default(omit) }}" + +- name: export volume mountpoint + set_fact: + storage_volume_mountpoint: "{{ disk_volume.dest }}" -- cgit v1.2.3