summaryrefslogtreecommitdiffstats
path: root/roles/openshift_sanitize_inventory/tasks/unsupported.yml
blob: 1c4984467c2b82c6fd953caaceb0e0b2e7e2ca94 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
---
# This task list checks for unsupported configurations. Values here should yield
# a partially functioning cluster but would not be supported for production use.

- name: Ensure that openshift_use_dnsmasq is true
  when:
  - not openshift_use_dnsmasq | default(true) | bool
  fail:
    msg: |-
      Starting in 3.6 openshift_use_dnsmasq must be true or critical features
      will not function. This also means that NetworkManager must be installed
      enabled and responsible for management of the primary interface.

- name: Ensure that openshift_node_dnsmasq_install_network_manager_hook is true
  when:
  - not openshift_node_dnsmasq_install_network_manager_hook | default(true) | bool
  fail:
    msg: |-
      The NetworkManager hook is considered a critical part of the DNS
      infrastructure.

- set_fact:
    __using_dynamic: True
  when:
  - hostvars[inventory_hostname][item] in ['dynamic']
  with_items:
  - "{{ hostvars[inventory_hostname] | vars_with_pattern(pattern='openshift_.*_storage_kind') }}"

- name: Ensure that dynamic provisioning is set if using dynamic storage
  when:
  - dynamic_volumes_check | default(true) | bool
  - not openshift_master_dynamic_provisioning_enabled | default(false) | bool
  - not openshift_cloudprovider_kind is defined
  - __using_dynamic is defined and __using_dynamic | bool
  fail:
    msg: |-
      Using a storage kind of 'dynamic' without enabling dynamic provisioning nor
      setting a cloud provider will cause generated PVCs to not be able to bind as
      intended. Either update to not use a dynamic storage or set
      openshift_master_dynamic_provisioning_enabled to True and set an
      openshift_cloudprovider_kind. You can disable this check with
      'dynamic_volumes_check=False'.

#if we have registry backend as glusterfs, and we have clashing configuration.
- name: Ensure the hosted registry's GlusterFS storage is configured correctly
  when:
  - openshift_hosted_registry_storage_kind | default(none) in ['glusterfs']
  - openshift_hosted_registry_storage_glusterfs_ips is defined and openshift_hosted_registry_storage_glusterfs_ips != ''
  - "'glusterfs_registry' in groups | default([])"
  fail:
    msg: |-
      Configuring a value for openshift_hosted_registry_storage_glusterfs_ips and with a glusterfs_registry host group is not allowed.
      Specifying a glusterfs_registry host group indicates that a new GlusterFS cluster should be configured, whereas
      specifying openshift_hosted_registry_storage_glusterfs_ips indicates wanting to use a pre-configured GlusterFS cluster for the registry storage.

#if we have registry backend as glusterfs and no gluster specified.
- name: Ensure the hosted registry's GlusterFS storage is configured correctly
  when:
  - openshift_hosted_registry_storage_kind | default(none) in ['glusterfs']
  - not openshift_hosted_registry_storage_glusterfs_ips is defined
  - not 'glusterfs_registry' in groups | default([])
  - not 'glusterfs' in groups | default([])
  fail:
    msg: |-
      Configuring a value for openshift_hosted_registry_storage_kind=glusterfs without a any glusterfs option is not allowed.
      Specify either openshift_hosted_registry_storage_glusterfs_ips variable or glusterfs, glusterfs_registry host groups.