---
- set_fact:
    l_use_crio: "{{ openshift_docker_use_crio | default(false) }}"

- set_fact:
    l_service_name: "cri-o"
  when: l_use_crio

- set_fact:
    l_service_name: "{{ openshift.docker.service_name }}"
  when: not l_use_crio

- name: Pre-pull OpenVSwitch system container image
  command: >
    atomic pull --storage=ostree {{ 'docker:' if openshift.common.system_images_registry == 'docker' else openshift.common.system_images_registry + '/' }}{{ openshift.node.ovs_system_image }}:{{ openshift_image_tag }}
  register: pull_result
  changed_when: "'Pulling layer' in pull_result.stdout"

- name: Install or Update OpenVSwitch system container
  oc_atomic_container:
    name: openvswitch
    image: "{{ 'docker:' if openshift.common.system_images_registry == 'docker' else openshift.common.system_images_registry + '/' }}{{ openshift.node.ovs_system_image }}:{{ openshift_image_tag }}"
    state: latest
    values:
      - "DOCKER_SERVICE={{ l_service_name }}"
