--- - hosts: undercloud vars: metadata: name: Check if ceph-ansible is installed on the undercloud description: > Prints a message if ceph-ansible isn't installed groups: - pre-deployment fail_without_ceph_ansible: false ceph_ansible_repo: "centos-ceph-nautilus" tasks: - include_tasks: tasks/deprecation.yaml - name: Check if ceph-ansible is installed shell: rpm -q ceph-ansible || true args: warn: no changed_when: False ignore_errors: True register: ceph_ansible_installed - name: Warn about missing ceph-ansible warn: msg: If planning to use Ceph, it is necessary to install the ceph-ansible package on the undercloud when: - ceph_ansible_installed.stdout.find('is not installed') != -1 - not fail_without_ceph_ansible|default(false)|bool - name: Fail if ceph-ansible is missing fail: msg: If planning to use Ceph, it is necessary to install the ceph-ansible package on the undercloud when: - ceph_ansible_installed.stdout.find('is not installed') != -1 - fail_without_ceph_ansible|default(false)|bool - name: Get ceph-ansible repository shell: "yum info ceph-ansible | awk '/From repo/ {print $4}'" register: repo changed_when: False - name: Fail if ceph-ansible doesn't belong to the specified repo fail: msg: "Make sure ceph-ansible package is installed from {{ ceph_ansible_repo }}" when: - (repo.stdout | length == 0 or repo.stdout != "{{ ceph_ansible_repo }}") - fail_without_ceph_ansible|default(false)|bool