--- # NOTE (leseb): current behavior of ceph-disk is to fail when the device is mounted "stderr: ceph-disk: Error: Device is mounted: /dev/sdb1" # the return code is 1, which makes sense, however ideally if ceph-disk will detect a ceph partition # 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 "ignore_errors: true" # I believe it's safer - name: check if the device is a partition or a disk shell: "echo '{{ item }}' | egrep '/dev/(([a-z]{3,4}[0-9]$)|(cciss/c[0-9]{1}d[0-9]{1}p[0-9]$))'" with_items: devices changed_when: false ignore_errors: true register: ispartition - name: if partition named 'ceph' exists shell: "parted --script {{ item }} print | egrep -sq '^ 1.*ceph'" with_items: devices changed_when: false ignore_errors: true register: parted