---
- fail:
    msg: Flannel can not be used with openshift sdn, set openshift_use_openshift_sdn=false if you want to use flannel
  when: openshift_use_openshift_sdn | default(true) | bool and openshift_use_flannel | default(false) | bool

- fail:
   msg: Nuage sdn can not be used with openshift sdn, set openshift_use_openshift_sdn=false if you want to use nuage
  when: openshift_use_openshift_sdn | default(true) | bool and openshift_use_nuage | default(false) | bool

- fail:
   msg: Nuage sdn can not be used with flannel
  when: openshift_use_flannel | default(false) | bool and openshift_use_nuage | default(false) | bool

- fail:
    msg: openshift_hostname must be 64 characters or less
  when: openshift_hostname is defined and openshift_hostname | length > 64

- name: Set common Cluster facts
  openshift_facts:
    role: common
    local_facts:
      install_examples: "{{ openshift_install_examples | default(True) }}"
      use_openshift_sdn: "{{ openshift_use_openshift_sdn | default(None) }}"
      sdn_network_plugin_name: "{{ os_sdn_network_plugin_name | default(None) }}"
      use_flannel: "{{ openshift_use_flannel | default(None) }}"
      use_nuage: "{{ openshift_use_nuage | default(None) }}"
      use_manageiq: "{{ openshift_use_manageiq | default(None) }}"
      data_dir: "{{ openshift_data_dir | default(None) }}"
      use_dnsmasq: "{{ openshift_use_dnsmasq | default(None) }}"

- name: Install the base package for versioning
  action: "{{ ansible_pkg_mgr }} name={{ openshift.common.service_type }}{{ openshift_pkg_version | default('') | oo_image_tag_to_rpm_version(include_dash=True) }} state=present"
  when: not openshift.common.is_containerized | bool

- name: Set version facts
  openshift_facts:

# For enterprise versions < 3.1 and origin versions < 1.1 we want to set the
# hostname by default.
- set_fact:
    set_hostname_default: "{{ not openshift.common.version_gte_3_1_or_1_1 }}"

- name: Set hostname
  command: >
    hostnamectl set-hostname {{ openshift.common.hostname }}
  when: openshift_set_hostname | default(set_hostname_default) | bool

