configpolicy/datavol.yml

53 lines
1.1 KiB
YAML

- hosts: all
vars:
mkfs_package:
btrfs: btrfs-progs
ext2: e2fsprogs
ext3: e2fsprogs
ext4: e2fsprogs
xfs: xfsprogs
tasks:
- name: ensure filesystem tools are installed
package:
name: >-
{{
data_volumes
| map(attribute='fstype')
| map('extract', mkfs_package)
| list
}}
tags:
- install
- name: ensure data volume filesystem exists
filesystem:
dev: '{{ item.dev }}'
fstype: '{{ item.fstype }}'
opts: '{{ item.opts|d(omit) }}'
loop: '{{ data_volumes|d([]) }}'
tags:
- mkfs
- name: ensure data volume is mounted
mount:
path: '{{ item.mountpoint }}'
src: '{{ item.dev }}'
fstype: '{{ item.fstype }}'
opts: '{{ item.mountopts|d(omit) }}'
state: mounted
loop: '{{ data_volumes|d([]) }}'
notify:
- reload systemd
- fix data volume selinux context
handlers:
- name: reload systemd
systemd:
daemon_reload: true
- name: fix data volume selinux context
command:
restorecon -F {{ item.mountpoint }}
loop: '{{ data_volumes }}'