---
# These tasks dispatch to the proper set of docker tasks based on the
# inventory:openshift_docker_use_system_container variable

- include: udev_workaround.yml
  when: docker_udev_workaround | default(False) | bool

- set_fact:
    l_use_system_container: "{{ openshift.docker.use_system_container | default(False) }}"
    l_use_crio: "{{ openshift_use_crio | default(False) }}"
    l_use_crio_only: "{{ openshift_use_crio_only | default(False) }}"

- name: Add enterprise registry, if necessary
  set_fact:
    l2_docker_additional_registries: "{{ l2_docker_additional_registries + [openshift_docker_ent_reg] }}"
  when:
    - openshift.common.deployment_type == 'openshift-enterprise'
    - openshift_docker_ent_reg != ''
    - openshift_docker_ent_reg not in l2_docker_additional_registries
    - not l_use_crio_only

- name: Use Package Docker if Requested
  include: package_docker.yml
  when:
    - not l_use_system_container
    - not l_use_crio_only

- name: Use System Container Docker if Requested
  include: systemcontainer_docker.yml
  when:
    - l_use_system_container
    - not l_use_crio_only

- name: Add CRI-O usage Requested
  include: systemcontainer_crio.yml
  when:
    - l_use_crio
    - openshift_docker_is_node_or_master | bool