|
@@ -42,30 +42,6 @@
|
|
|
- name: Set management_station_ip
|
|
|
set_fact:
|
|
|
management_station_ip: "{{ fetch_ip.stdout }}"
|
|
|
-
|
|
|
-- name: Check NFS share access
|
|
|
- idrac_server_config_profile:
|
|
|
- idrac_ip: "{{ inventory_hostname }}"
|
|
|
- idrac_user: "{{ idrac_username }}"
|
|
|
- idrac_password: "{{ idrac_password }}"
|
|
|
- share_name: "{{ management_station_ip }}:{{ nfs_share_offline_repo }}"
|
|
|
- command: "export"
|
|
|
- scp_components: "BIOS"
|
|
|
- scp_file: "{{ nfs_check_file }}"
|
|
|
- export_format: XML
|
|
|
- export_use: Default
|
|
|
- job_wait: true
|
|
|
- register: nfs_check
|
|
|
- ignore_errors: true
|
|
|
- until: not nfs_check.failed
|
|
|
- retries: 3
|
|
|
-
|
|
|
-- name: Missing entries in nfs exports
|
|
|
- fail:
|
|
|
- msg: "{{ missing_exports_fail_msg }}"
|
|
|
- when:
|
|
|
- - nfs_check_key in nfs_check.msg or
|
|
|
- nfs_check_key in nfs_check.scp_status.Status
|
|
|
|
|
|
- name: Initialize variables
|
|
|
set_fact:
|
|
@@ -77,6 +53,8 @@
|
|
|
datacenter_license: false
|
|
|
provision_status: false
|
|
|
model_status: false
|
|
|
+ idrac_license_name: ""
|
|
|
+ deploy_os_status: false
|
|
|
|
|
|
- block:
|
|
|
- name: Check tower_cli.cfg is encrypted
|
|
@@ -192,6 +170,7 @@
|
|
|
- name: Set enterprise license status
|
|
|
set_fact:
|
|
|
enterprise_license: true
|
|
|
+ idrac_license_name: "{{ idrac_info.system_info.License[my_idx1].LicenseDescription }}"
|
|
|
with_items: "{{ idrac_info.system_info.License }}"
|
|
|
when:
|
|
|
- '"iDRAC" in idrac_info.system_info.License[my_idx1].LicenseDescription'
|
|
@@ -204,6 +183,7 @@
|
|
|
- name: Set datacenter license status
|
|
|
set_fact:
|
|
|
datacenter_license: true
|
|
|
+ idrac_license_name: "{{ idrac_info.system_info.License[my_idx1].LicenseDescription }}"
|
|
|
with_items: "{{ idrac_info.system_info.License }}"
|
|
|
when:
|
|
|
- '"iDRAC" in idrac_info.system_info.License[my_idx2].LicenseDescription'
|
|
@@ -212,4 +192,47 @@
|
|
|
- '"Healthy" in idrac_info.system_info.License[my_idx2].PrimaryStatus'
|
|
|
loop_control:
|
|
|
index_var: my_idx2
|
|
|
- when: not provision_status
|
|
|
+
|
|
|
+ - name: Change provision mode in absence of license
|
|
|
+ set_fact:
|
|
|
+ provision_method: "pxe"
|
|
|
+ when: not (enterprise_license or datacenter_license)
|
|
|
+
|
|
|
+ - name: Firmware version of iDRAC9 not supported
|
|
|
+ debug:
|
|
|
+ msg: "{{ idrac9_firmware_not_supported_msg }}"
|
|
|
+ when:
|
|
|
+ - '"iDRAC9" in idrac_license_name'
|
|
|
+ - idrac_info.system_info.iDRAC[0].FirmwareVersion < idrac9_supported_version
|
|
|
+
|
|
|
+ - name: Firmware version of iDRAC8 not supported
|
|
|
+ debug:
|
|
|
+ msg: "{{ idrac8_firmware_not_supported_msg }}"
|
|
|
+ when:
|
|
|
+ - '"iDRAC8" in idrac_license_name'
|
|
|
+ - idrac_info.system_info.iDRAC[0].FirmwareVersion < idrac8_supported_version
|
|
|
+
|
|
|
+ - name: Check NFS share access
|
|
|
+ dellemc.openmanage.idrac_server_config_profile:
|
|
|
+ idrac_ip: "{{ inventory_hostname }}"
|
|
|
+ idrac_user: "{{ idrac_username }}"
|
|
|
+ idrac_password: "{{ idrac_password }}"
|
|
|
+ share_name: "{{ management_station_ip }}:{{ nfs_share_offline_repo }}"
|
|
|
+ command: "export"
|
|
|
+ scp_components: "BIOS"
|
|
|
+ scp_file: "{{ nfs_check_file }}"
|
|
|
+ export_format: XML
|
|
|
+ export_use: Default
|
|
|
+ job_wait: true
|
|
|
+ register: nfs_check
|
|
|
+ ignore_errors: true
|
|
|
+ until: not nfs_check.failed
|
|
|
+ retries: "{{ retries_count }}"
|
|
|
+
|
|
|
+ - name: Missing entries in nfs exports
|
|
|
+ fail:
|
|
|
+ msg: "{{ missing_exports_fail_msg }}"
|
|
|
+ when:
|
|
|
+ - nfs_check_key in nfs_check.msg or
|
|
|
+ nfs_check_key in nfs_check.scp_status.Status
|
|
|
+ when: not provision_status
|