#  Copyright 2021 Dell Inc. or its subsidiaries. All Rights Reserved.
#
#  Licensed under the Apache License, Version 2.0 (the "License");
#  you may not use this file except in compliance with the License.
#  You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
#  Unless required by applicable law or agreed to in writing, software
#  distributed under the License is distributed on an "AS IS" BASIS,
#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#  See the License for the specific language governing permissions and
#  limitations under the License.
---

# Tasks file for infiniband

- name: Check if IB switch is supported
  block:
    - name: Check infiniband_container status on machine
      include_tasks: check_prerequisites.yml

    - name: Include common variables
      include_vars:  ../../control_plane_common/vars/main.yml
      when: not infiniband_container_status

    - name: Internet validation
      include_tasks:  ../../control_plane_common/tasks/internet_validation.yml
      when: not infiniband_container_status

    - name: Include variable file base_vars.yml
      include_vars: "{{ base_file }}"

    - name: Dhcp Configuration
      import_tasks: dhcp_configure.yml
      when: (not infiniband_container_image_status) or ( infiniband_backup_map_status == true)

    #- name: Mapping file validation
    #  import_tasks: mapping_file.yml
    #  when: (not infiniband_container_image_status) and (mapping_file == true) or ( backup_map_status == true)

    - name: infiniband_container image creation
      import_tasks: infiniband_container_image.yml
      when: not infiniband_container_status

    - name: infiniband_container configuration
      import_tasks: configure_infiniband_container.yml

    - name: infiniband_container container status message
      block:
        - debug:
            msg: "{{ infiniband_message_skipped }}"
            verbosity: 2
          when: infiniband_container_status
        - debug:
            msg: "{{ infiniband_message_installed }}"
            verbosity: 2
          when: not infiniband_container_status
      tags: install

  when: ib_switch_support