diff options
author | Christian Pointner <equinox@spreadspace.org> | 2020-06-08 01:06:08 +0200 |
---|---|---|
committer | Christian Pointner <equinox@spreadspace.org> | 2020-06-08 01:06:08 +0200 |
commit | 143fbc936a0ed696175febe6bc93e33bb5c9ac2c (patch) | |
tree | a3e802ce96bdb951bb7d7e4e6061c5365336213d /roles/zfs/base | |
parent | remove useless variable cooking (diff) |
zfs/base: better detection if zpool already exists
Diffstat (limited to 'roles/zfs/base')
-rw-r--r-- | roles/zfs/base/tasks/main.yml | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/roles/zfs/base/tasks/main.yml b/roles/zfs/base/tasks/main.yml index ad5d1ce2..db5cfe2d 100644 --- a/roles/zfs/base/tasks/main.yml +++ b/roles/zfs/base/tasks/main.yml @@ -26,10 +26,16 @@ when: zfs_use_systemd_mount_generator import_tasks: enable-systemd-mount-generator.yml +- name: gather zpool facts + zpool_facts: + +- name: generate list of existing zpools + set_fact: + zfs_existing_zpools: "{{ ansible_zfs_pools | map(attribute='name') | list }}" + - name: create zpools loop: "{{ zfs_zpools | dict2items }}" loop_control: label: "{{ item.key }}" + when: item.key not in zfs_existing_zpools command: "zpool create -m {{ item.value.mountpoint }} {% for prop, value in (item.value.properties | default(zfs_zpool_properties)).items() %}-o {{ prop }}={{ value }} {% endfor %}{{ item.key }} {{ item.value.create_vdevs }}" - args: - creates: "{{ item.value.mountpoint }}" |