--- - name: fail on unsupported system fail: msg: "System not supported {{ ansible_system }}" when: ansible_system not in ['Linux'] - name: fail on unsupported architecture fail: msg: "Architecture not supported {{ ansible_architecture }}" when: ansible_architecture not in ['x86_64', 'ppc64le', 'armv7l', 'aarch64'] - name: fail on unsupported distribution fail: msg: "Distribution not supported {{ ansible_os_family }}" when: ansible_os_family not in ['Debian', 'RedHat', 'ClearLinux', 'Suse'] - name: red hat based systems tasks when: - ceph_repository == 'rhcs' - ansible_distribution == 'Red Hat Enterprise Linux' block: - name: fail on unsupported distribution for red hat ceph storage fail: msg: "Distribution not supported {{ ansible_distribution_version }} by Red Hat Ceph Storage, only RHEL >= 7.3" when: ansible_distribution_version | version_compare('7.3', '<') - name: subscription manager related tasks when: ceph_repository_type == 'cdn' block: - name: determine if node is registered with subscription-manager command: subscription-manager identity register: subscription changed_when: false failed_when: false check_mode: no - name: fail on unregistered red hat rhcs linux fail: msg: "You must register your machine with subscription-manager" when: subscription.rc != '0' - name: fail on unsupported distribution for ubuntu cloud archive fail: msg: "Distribution not supported by Ubuntu Cloud Archive: {{ ansible_distribution }}" when: - ceph_repository == 'uca' - ansible_distribution != 'Ubuntu' - name: fail on unsupported openSUSE distribution fail: msg: "Distribution not supported: {{ ansible_distribution }}" when: - ansible_distribution == 'openSUSE Leap' - ansible_distribution_version is version_compare('42.3', '<') - name: fail on unsupported ansible version (1.X) fail: msg: "Ansible version must be >= 2.8.x, please update!" when: ansible_version.major|int < 2 - name: fail on unsupported ansible version fail: msg: "Ansible version must be 2.8!" when: - ansible_version.major|int == 2 - ansible_version.minor|int != 8 - name: fail if systemd is not present fail: msg: "Systemd must be present" when: ansible_service_mgr != 'systemd' - name: check if iscsi gateways is target on supported distros and versions block: - name: fail on unsupported distribution for iscsi gateways fail: msg: "iSCSI gateways can only be deployed on Red Hat Enterprise Linux, CentOS or Fedora" when: ansible_distribution not in ['RedHat', 'CentOS', 'Fedora'] - name: fail on unsupported distribution version for iscsi gateways command: 'grep -q {{ item }}=m {% if is_atomic|bool %}/usr/lib/ostree-boot{% else %}/boot{% endif %}/config-{{ ansible_kernel }}' register: iscsi_kernel changed_when: false failed_when: iscsi_kernel.rc != 0 loop: - CONFIG_TARGET_CORE - CONFIG_TCM_USER2 - CONFIG_ISCSI_TARGET when: ansible_distribution in ['RedHat', 'CentOS'] when: iscsi_gw_group_name in group_names