---
- name: Get container facts
  kolla_container_facts:
    name:
      - cinder_api
  register: container_facts

- name: Checking free port for Cinder API
  wait_for:
    host: "{{ api_interface_address }}"
    port: "{{ cinder_api_port }}"
    connect_timeout: 1
    timeout: 1
    state: stopped
  when:
    - container_facts['cinder_api'] is not defined
    - inventory_hostname in groups['cinder-api']

- name: Checking at least one valid backend is enabled for Cinder
  run_once: True
  local_action: fail msg="Please enable at least one backend when enabling Cinder"
  when:
    - not enable_cinder_backend_hnas_iscsi | bool
    - not enable_cinder_backend_hnas_nfs | bool
    - not enable_cinder_backend_iscsi | bool
    - not enable_cinder_backend_lvm | bool
    - not enable_cinder_backend_nfs | bool
    - not cinder_backend_ceph | bool
    - not cinder_backend_vmwarevc_vmdk | bool
    - not enable_cinder_backend_zfssa_iscsi | bool

- name: Checking LVM volume group exists for Cinder
  command: "vgs {{ cinder_volume_group }}"
  register: result
  changed_when: false
  failed_when: result | failed
  when:
    - enable_cinder | bool
    - enable_cinder_backend_lvm | bool
    - inventory_hostname in groups['cinder-volume']
