mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
added hpe thermal config and fan percent min (#6208)
* added hpe thermal config and fan percent min * typo fixed * Create 6208-hpe-thermal-fan-percent.yaml * fixed changelog fragment * Update 6208-hpe-thermal-fan-percent.yaml
This commit is contained in:
parent
e96552396e
commit
33ccabed13
3 changed files with 55 additions and 1 deletions
2
changelogs/fragments/6208-hpe-thermal-fan-percent.yaml
Normal file
2
changelogs/fragments/6208-hpe-thermal-fan-percent.yaml
Normal file
|
@ -0,0 +1,2 @@
|
|||
minor_changes:
|
||||
- redfish_info - adds commands to retrieve the HPE ThermalConfiguration and FanPercentMinimum settings from iLO (https://github.com/ansible-collections/community.general/pull/6208).
|
|
@ -3217,3 +3217,35 @@ class RedfishUtils(object):
|
|||
body["SecureBootEnable"] = True
|
||||
|
||||
return self.patch_request(self.root_uri + secure_boot_url, body, check_pyld=True)
|
||||
|
||||
def get_hpe_thermal_config(self):
|
||||
result = {}
|
||||
key = "Thermal"
|
||||
# Go through list
|
||||
for chassis_uri in self.chassis_uri_list:
|
||||
response = self.get_request(self.root_uri + chassis_uri)
|
||||
if response['ret'] is False:
|
||||
return response
|
||||
result['ret'] = True
|
||||
data = response['data']
|
||||
oem = data.get['Oem']
|
||||
hpe = oem.get['Hpe']
|
||||
thermal_config = hpe.get('ThermalConfiguration')
|
||||
result["current_thermal_config"] = thermal_config
|
||||
return result
|
||||
|
||||
def get_hpe_fan_percent_min(self):
|
||||
result = {}
|
||||
key = "Thermal"
|
||||
# Go through list
|
||||
for chassis_uri in self.chassis_uri_list:
|
||||
response = self.get_request(self.root_uri + chassis_uri)
|
||||
if response['ret'] is False:
|
||||
return response
|
||||
result['ret'] = True
|
||||
data = response['data']
|
||||
oem = data.get['Oem']
|
||||
hpe = oem.get['Hpe']
|
||||
fan_percent_min_config = hpe.get('FanPercentMinimum')
|
||||
result["fan_percent_min"] = fan_percent_min_config
|
||||
return result
|
||||
|
|
|
@ -321,6 +321,22 @@ EXAMPLES = '''
|
|||
baseuri: "{{ baseuri }}"
|
||||
username: "{{ username }}"
|
||||
password: "{{ password }}"
|
||||
|
||||
- name: Get HPE Thermal Config
|
||||
community.general.redfish_info:
|
||||
category: Chassis
|
||||
command: GetHPEThermalConfig
|
||||
baseuri: "{{ baseuri }}"
|
||||
username: "{{ username }}"
|
||||
password: "{{ password }}"
|
||||
|
||||
- name: Get HPE Fan Percent Minimum
|
||||
community.general.redfish_info:
|
||||
category: Chassis
|
||||
command: GetHPEFanPercentMin
|
||||
baseuri: "{{ baseuri }}"
|
||||
username: "{{ username }}"
|
||||
password: "{{ password }}"
|
||||
'''
|
||||
|
||||
RETURN = '''
|
||||
|
@ -340,7 +356,7 @@ CATEGORY_COMMANDS_ALL = {
|
|||
"GetStorageControllerInventory", "GetDiskInventory", "GetVolumeInventory",
|
||||
"GetBiosAttributes", "GetBootOrder", "GetBootOverride", "GetVirtualMedia"],
|
||||
"Chassis": ["GetFanInventory", "GetPsuInventory", "GetChassisPower",
|
||||
"GetChassisThermals", "GetChassisInventory", "GetHealthReport"],
|
||||
"GetChassisThermals", "GetChassisInventory", "GetHealthReport", "GetHPEThermalConfig", "GetHPEFanPercentMin"],
|
||||
"Accounts": ["ListUsers"],
|
||||
"Sessions": ["GetSessions"],
|
||||
"Update": ["GetFirmwareInventory", "GetFirmwareUpdateCapabilities", "GetSoftwareInventory",
|
||||
|
@ -482,6 +498,10 @@ def main():
|
|||
result["chassis"] = rf_utils.get_chassis_inventory()
|
||||
elif command == "GetHealthReport":
|
||||
result["health_report"] = rf_utils.get_multi_chassis_health_report()
|
||||
elif command == "GetHPEThermalConfig":
|
||||
result["hpe_thermal_config"] = rf_utils.get_hpe_thermal_config()
|
||||
elif command == "GetHPEFanPercentMin":
|
||||
result["hpe_fan_percent_min"] = rf_utils.get_hpe_fan_percent_min()
|
||||
|
||||
elif category == "Accounts":
|
||||
# execute only if we find an Account service resource
|
||||
|
|
Loading…
Reference in a new issue