# it should exist we rc=0 and don't do anything unless we do something like --force
# As as a final word, I prefer to keep the partition check instead of running ceph-disk prepare with "failed_when: false"
# I believe it's safer
-- name: check if the device is a partition or a disk
- shell: "echo '{{ item }}' | egrep '/dev/[sd[a-z]{1,2}|hd[a-z]{1,2}|cciss/c[0-9]d[0-9]p|nvme[0-9]n[0-9]p][0-9]{1,2}$'"
+#
+# regex syntax uses (pat1|pat2|...|patN) for different families of device
+# names, but has a common expression for partition number at the end.
+# allow 2-digit partition numbers so fast SSDs can be shared by > 9 disks
+# for SSD journals.
+
+- name: check if the device is a partition
+ shell: "echo '{{ item }}' | egrep '/dev/(sd[a-z]{1,2}|hd[a-z]{1,2}|cciss/c[0-9]d[0-9]p|nvme[0-9]n[0-9]p)[0-9]{1,2}$'"
with_items: devices
changed_when: false
failed_when: false