Change SystemCollection from list to dict
- Change systems_list to systems_dict["<index>"] . The systems_dict will contain system objects, <index> is the redfish <index> as reported inside url.
This commit is contained in:
parent
2bfff304ed
commit
a2cafc9802
@ -43,48 +43,48 @@ except redfish.exception.RedfishException as e:
|
||||
print ("Redfish API version : %s \n" % remote_mgmt.get_api_version())
|
||||
|
||||
# Uncomment following line to reset the blade !!!
|
||||
# remote_mgmt.Systems.systems_list[0].reset_system()
|
||||
# remote_mgmt.Systems.systems_dict["1"].reset_system()
|
||||
|
||||
# TODO : create an attribute to link the managed system directly
|
||||
# and avoid systems_list[0]
|
||||
# and avoid systems_dict["1"]
|
||||
# --> will be something like :
|
||||
# remote_mgmt.Systems.systems_list[0] = remote_mgmt.Systems.managed_system
|
||||
# remote_mgmt.Systems.systems_dict["1"] = remote_mgmt.Systems.managed_system
|
||||
|
||||
print("Bios version : {}\n".format(remote_mgmt.Systems.systems_list[0].get_bios_version()))
|
||||
print("Serial Number : {}\n".format(remote_mgmt.Systems.systems_list[0].get_serial_number()))
|
||||
print("Power State : {}\n".format(remote_mgmt.Systems.systems_list[0].get_power()))
|
||||
print("Parameter 'SystemType' : {}\n".format(remote_mgmt.Systems.systems_list[0].get_parameter("SystemType")))
|
||||
print("Bios version : {}\n".format(remote_mgmt.Systems.systems_dict["1"].get_bios_version()))
|
||||
print("Serial Number : {}\n".format(remote_mgmt.Systems.systems_dict["1"].get_serial_number()))
|
||||
print("Power State : {}\n".format(remote_mgmt.Systems.systems_dict["1"].get_power()))
|
||||
print("Parameter 'SystemType' : {}\n".format(remote_mgmt.Systems.systems_dict["1"].get_parameter("SystemType")))
|
||||
|
||||
print("Get bios parameters : {}\n".format(remote_mgmt.Systems.systems_list[0].bios.get_parameters()))
|
||||
print("Get boot parameters : {}\n".format(remote_mgmt.Systems.systems_list[0].bios.boot.get_parameters()))
|
||||
print("Get bios parameters : {}\n".format(remote_mgmt.Systems.systems_dict["1"].bios.get_parameters()))
|
||||
print("Get boot parameters : {}\n".format(remote_mgmt.Systems.systems_dict["1"].bios.boot.get_parameters()))
|
||||
|
||||
|
||||
#print("Get bios parameter 'AdminPhone' : {}\n".format(remote_mgmt.Systems.systems_list[0].bios.get_parameter("AdminPhone")))
|
||||
#print("Set bios parameter 'AdminPhone' to '' : {}\n".format(remote_mgmt.Systems.systems_list[0].bios.set_parameter("AdminPhone","")))
|
||||
#print("Get bios parameter 'AdminPhone' : {}\n".format(remote_mgmt.Systems.systems_dict["1"].bios.get_parameter("AdminPhone")))
|
||||
#print("Set bios parameter 'AdminPhone' to '' : {}\n".format(remote_mgmt.Systems.systems_dict["1"].bios.set_parameter("AdminPhone","")))
|
||||
|
||||
|
||||
#Boot server with script
|
||||
#remote_mgmt.Systems.systems_list[0].bios.set_parameter("Dhcpv4","Enabled")
|
||||
#remote_mgmt.Systems.systems_dict["1"].bios.set_parameter("Dhcpv4","Enabled")
|
||||
|
||||
remote_mgmt.Systems.systems_list[0].bios.set_parameter("PreBootNetwork", "Auto")
|
||||
remote_mgmt.Systems.systems_list[0].bios.set_parameter("UefiShellStartup", "Enabled")
|
||||
remote_mgmt.Systems.systems_list[0].bios.set_parameter("UefiShellStartupLocation", "NetworkLocation")
|
||||
remote_mgmt.Systems.systems_list[0].bios.set_parameter("UefiShellStartupUrl", "http://10.3.222.88/deploy/startup.nsh")
|
||||
remote_mgmt.Systems.systems_dict["1"].bios.set_parameter("PreBootNetwork", "Auto")
|
||||
remote_mgmt.Systems.systems_dict["1"].bios.set_parameter("UefiShellStartup", "Enabled")
|
||||
remote_mgmt.Systems.systems_dict["1"].bios.set_parameter("UefiShellStartupLocation", "NetworkLocation")
|
||||
remote_mgmt.Systems.systems_dict["1"].bios.set_parameter("UefiShellStartupUrl", "http://10.3.222.88/deploy/startup.nsh")
|
||||
|
||||
#remote_mgmt.Systems.systems_list[0].set_parameter_json('{"Boot": {"BootSourceOverrideTarget": "UefiShell"}}')
|
||||
# remote_mgmt.Systems.systems_list[0].set_parameter_json('{"Boot": {"BootSourceOverrideEnabled" : "Continuous"}}')
|
||||
#remote_mgmt.Systems.systems_list[0].set_parameter_json('{"Boot": {"BootSourceOverrideEnabled" : "Once"}}')
|
||||
#remote_mgmt.Systems.systems_dict["1"].set_parameter_json('{"Boot": {"BootSourceOverrideTarget": "UefiShell"}}')
|
||||
# remote_mgmt.Systems.systems_dict["1"].set_parameter_json('{"Boot": {"BootSourceOverrideEnabled" : "Continuous"}}')
|
||||
#remote_mgmt.Systems.systems_dict["1"].set_parameter_json('{"Boot": {"BootSourceOverrideEnabled" : "Once"}}')
|
||||
|
||||
mySystem = remote_mgmt.Systems.systems_list[0]
|
||||
mySystem = remote_mgmt.Systems.systems_dict["1"]
|
||||
mySystem.set_boot_source_override("None","Disabled")
|
||||
#Uncomment the next line to reset the server
|
||||
#mySystem.reset_system()
|
||||
|
||||
|
||||
print("Get manager firmware version : {}\n".format(remote_mgmt.Managers.managers_list[0].get_firmware_version()))
|
||||
print("Get system Bios version : {}\n".format(remote_mgmt.Systems.systems_list[0].get_bios_version()))
|
||||
print("Get manager firmware version : {}\n".format(remote_mgmt.Managers.managers_dict["1"].get_firmware_version()))
|
||||
print("Get system Bios version : {}\n".format(remote_mgmt.Systems.systems_dict["1"].get_bios_version()))
|
||||
|
||||
#Reset of the system is required to apply the changes
|
||||
#remote_mgmt.Systems.systems_list[0].reset_system()
|
||||
#remote_mgmt.Systems.systems_dict["1"].reset_system()
|
||||
|
||||
remote_mgmt.logout()
|
||||
|
@ -43,7 +43,7 @@ except redfish.exception.RedfishException as e:
|
||||
print("Redfish API version : {} \n".format(remote_mgmt.get_api_version()))
|
||||
print("UUID : {} \n".format(remote_mgmt.Root.get_api_UUID()))
|
||||
print("System 1 :\n")
|
||||
print("Bios version : {}\n".format(remote_mgmt.Systems.systems_list[0].get_bios_version()))
|
||||
print("Bios version : {}\n".format(remote_mgmt.Systems.systems_dict["1"].get_bios_version()))
|
||||
print("System 2 :\n")
|
||||
print("Bios version : {}\n".format(remote_mgmt.Systems.systems_list[1].get_parameter("SerialNumber")))
|
||||
print("Bios version : {}\n".format(remote_mgmt.Systems.systems_dict["2"].get_parameter("SerialNumber")))
|
||||
#print remoteMgmt.get_api_link_to_server()
|
||||
|
@ -247,8 +247,6 @@ class RedfishConnection(object):
|
||||
self.connection_parameters
|
||||
)
|
||||
|
||||
#for system in self.Systems.systems_list:
|
||||
#config.logger.debug(system.data.links.ManagedBy)
|
||||
# self.Chassis
|
||||
|
||||
# self.EventService
|
||||
|
@ -428,11 +428,12 @@ class SystemsCollection(BaseCollection):
|
||||
'''Class to manage redfish SystemsCollection data.'''
|
||||
def __init__(self, url, connection_parameters):
|
||||
super(SystemsCollection, self).__init__(url, connection_parameters)
|
||||
|
||||
self.systems_list = []
|
||||
|
||||
|
||||
self.systems_dict = {}
|
||||
|
||||
for link in self.links:
|
||||
self.systems_list.append(Systems(link, connection_parameters))
|
||||
index = re.search(r'Systems/(\w+)', link)
|
||||
self.systems_dict[index.group(1)] = Systems(link, connection_parameters)
|
||||
|
||||
|
||||
class Bios(Base):
|
||||
|
Loading…
Reference in New Issue
Block a user