aboutsummaryrefslogtreecommitdiffstats
path: root/hdv
diff options
context:
space:
mode:
authorShubham Mishra <shivam828787@gmail.com>2020-09-01 23:10:14 +0530
committerShubham Mishra <shivam828787@gmail.com>2020-09-10 11:04:19 +0530
commit7794bb28352a9f8140fa756c6d8ec7289aefbfc5 (patch)
tree0ff9344fbb2d696c08df382a465a42ba7b13daf9 /hdv
parentdcdd46fe975c13c56a246ba0a6c79516a6afda77 (diff)
add tests for HPE ILO 4 server
some servers sends '/' at the end of resources URI, while some doesn't. change the code to adapt both. Change-Id: I383513f30b3d41513c0ca38b65614413788f0d4e Signed-off-by: Shubham Mishra <shivam828787@gmail.com>
Diffstat (limited to 'hdv')
-rw-r--r--hdv/redfish/conf/cases.yaml40
-rw-r--r--hdv/redfish/hdv_redfish.py18
-rw-r--r--hdv/redfish/hpe6_conf/cases.yaml659
-rw-r--r--hdv/redfish/hpe6_conf/config.yaml4
4 files changed, 697 insertions, 24 deletions
diff --git a/hdv/redfish/conf/cases.yaml b/hdv/redfish/conf/cases.yaml
index 1fb53fe..93cb262 100644
--- a/hdv/redfish/conf/cases.yaml
+++ b/hdv/redfish/conf/cases.yaml
@@ -9,7 +9,7 @@
header: null
method: GET
request_body: null
- url: /redfish/v1/Systems/{system_id}
+ url: /redfish/v1/Systems/{system_id}/
key_flag_dict:
system_id: Members
@@ -25,7 +25,7 @@
header: null
method: GET
request_body: null
- url: /redfish/v1/Chassis/{chassis_id}
+ url: /redfish/v1/Chassis/{chassis_id}/
key_flag_dict:
chassis_id: Members
@@ -39,7 +39,7 @@
header: null
method: GET
request_body: null
- url: /redfish/v1/Systems/{system_id}/Processors
+ url: /redfish/v1/Systems/{system_id}/Processors/
key_flag_dict:
system_id: Members
@@ -63,7 +63,7 @@
header: null
method: GET
request_body: null
- url: /redfish/v1/Systems/{system_id}/Processors/{cpu_id}
+ url: /redfish/v1/Systems/{system_id}/Processors/{cpu_id}/
key_flag_dict:
system_id: Members
cpu_id: Members
@@ -78,7 +78,7 @@
header: null
method: PATCH
request_body: '{"AssetTag": "CM_cc@1234"}'
- url: /redfish/v1/Systems/{system_id}
+ url: /redfish/v1/Systems/{system_id}/
key_flag_dict:
system_id: Members
@@ -92,7 +92,7 @@
header: null
method: PATCH
request_body: '{"HostName": "NFV-RPZJHZ-01B"}'
- url: /redfish/v1/Systems/{system_id}
+ url: /redfish/v1/Systems/{system_id}/
key_flag_dict:
system_id: Members
@@ -106,7 +106,7 @@
header: null
method: GET
request_body: null
- url: /redfish/v1/Systems/{system_id}
+ url: /redfish/v1/Systems/{system_id}/
key_flag_dict:
system_id: Members
@@ -120,7 +120,7 @@
header: null
method: GET
request_body: null
- url: /redfish/v1/Systems/{system_id}
+ url: /redfish/v1/Systems/{system_id}/
key_flag_dict:
system_id: Members
@@ -134,7 +134,7 @@
header: null
method: GET
request_body: null
- url: /redfish/v1/Systems/{system_id}
+ url: /redfish/v1/Systems/{system_id}/
key_flag_dict:
system_id: Members
@@ -148,7 +148,7 @@
header: null
method: GET
request_body: null
- url: /redfish/v1/Systems/{system_id}
+ url: /redfish/v1/Systems/{system_id}/
key_flag_dict:
system_id: Members
@@ -164,7 +164,7 @@
header: null
method: GET
request_body: null
- url: /redfish/v1/Chassis/{chassis_id}
+ url: /redfish/v1/Chassis/{chassis_id}/
key_flag_dict:
chassis_id: Members
@@ -180,7 +180,7 @@
header: null
method: GET
request_body: null
- url: /redfish/v1/Chassis/{chassis_id}
+ url: /redfish/v1/Chassis/{chassis_id}/
key_flag_dict:
chassis_id: Members
@@ -194,7 +194,7 @@
header: null
method: GET
request_body: null
- url: /redfish/v1/Systems/{system_id}
+ url: /redfish/v1/Systems/{system_id}/
key_flag_dict:
system_id: Members
@@ -208,7 +208,7 @@
header: null
method: GET
request_body: null
- url: /redfish/v1/Systems/{system_id}/Processors
+ url: /redfish/v1/Systems/{system_id}/Processors/
key_flag_dict:
system_id: Member
@@ -232,7 +232,7 @@
header: null
method: GET
request_body: null
- url: /redfish/v1/Systems/{system_id}/Processors/{cpu_id}
+ url: /redfish/v1/Systems/{system_id}/Processors/{cpu_id}/
key_flag_dict:
system_id: Members
cpu_id: Members
@@ -247,7 +247,7 @@
header: null
method: GET
request_body: null
- url: /redfish/v1/Systems/{system_id}/Memory
+ url: /redfish/v1/Systems/{system_id}/Memory/
key_flag_dict:
system_id: Members
@@ -271,7 +271,7 @@
header: null
method: GET
request_body: null
- url: /redfish/v1/Systems/{system_id}/Memory/{memory_id}
+ url: /redfish/v1/Systems/{system_id}/Memory/{memory_id}/
key_flag_dict:
System_id: Members
memory_id: Members
@@ -385,7 +385,7 @@
header: null
method: GET
request_body: null
- url: /redfish/v1/Chassis/{chassis_id}/Thermal
+ url: /redfish/v1/Chassis/{chassis_id}/Thermal/
key_flag_dict:
chassis_id: Members
@@ -400,7 +400,7 @@
header: null
method: GET
request_body: null
- url: /redfish/v1/Chassis/{chassis_id}
+ url: /redfish/v1/Chassis/{chassis_id}/
key_flag_dict:
chassis_id: MemberId
# - case_name: check power detail info
@@ -453,7 +453,7 @@
header: null
method: GET
request_body: null
- url: /redfish/v1/Chassis/{chassis_id}/Thermal
+ url: /redfish/v1/Chassis/{chassis_id}/Thermal/
key_flag_dict:
chassis_id: Member
diff --git a/hdv/redfish/hdv_redfish.py b/hdv/redfish/hdv_redfish.py
index f0aaa4b..306c93b 100644
--- a/hdv/redfish/hdv_redfish.py
+++ b/hdv/redfish/hdv_redfish.py
@@ -95,7 +95,7 @@ def parse_data(exp_value, act_value):
case 2: list,dict type, then return updated exp_value
ERROR_CODE for unexpected case.
'''
- if isinstance(exp_value, (str, int)) and isinstance(act_value, (str, int)):
+ if isinstance(exp_value, (str, int, type(None))) and isinstance(act_value, (str, int, type(None))):
return (exp_value, act_value)
if isinstance(exp_value, list):
if not isinstance(act_value, list):
@@ -112,6 +112,7 @@ def parse_data(exp_value, act_value):
if key in act_value:
exp_value[key] = parse_data(val, act_value[key])
else:
+ exp_value[key] = (val, "Can't find key {} in return value".format(key))
LOGGER.error("%s,%s", ERROR_CODE['E500001'], key)
else:
LOGGER.error("%s,expected: %s , actual: %s",
@@ -127,6 +128,9 @@ def compare_data(value, flag):
compare value content
'''
if isinstance(value, tuple):
+ if value[1] is None:
+ if value[0] == 'N/A' or value[0] == None:
+ return "Success", flag
if value[1] is not None or value[1]:
if value[0] == 'N/A':
return "Success", flag
@@ -182,7 +186,6 @@ def create_real_url(url_value, id_dict, key_flag_dict, http_handler, bmc_ip):
pattern = re.compile(regexp, DT)
LOGGER.info("url_value %s", url_value)
matches = list(pattern.finditer(url_value))
-
for match in matches:
value = match.groupdict()
# stripping out value['var'] from end of the URL
@@ -198,6 +201,9 @@ def create_real_url(url_value, id_dict, key_flag_dict, http_handler, bmc_ip):
url_list.append(parent_url)
else:
for index in range(len(url_list)):
+ #Make sure link will not have merged with '//' two forward slashes
+ if parent_url[0] == '/' and url_list[index][-1] == '/':
+ parent_url = parent_url[1:]
url_list[index] = url_list[index] + parent_url
response_list = handle_depend_url(
@@ -224,7 +230,11 @@ def create_real_url(url_value, id_dict, key_flag_dict, http_handler, bmc_ip):
url_list.append(url_value)
for index in range(len(url_list)):
- url_list[index] = url_list[index] + url_value.split('}')[-1]
+ #Make sure link will not have merged with '//' two forward slashes
+ if(url_value.split('}')[-1][0] == '/' and url_list[index][-1] == '/'):
+ url_list[index] = url_list[index] + url_value.split('}')[-1][1:]
+ else:
+ url_list[index] = url_list[index] + url_value.split('}')[-1]
LOGGER.debug("created real url list is %s", url_list)
return url_list
@@ -540,7 +550,7 @@ def run(conf_file):
ACCOUNT_INFO.update({"UserName": bmc_user})
ACCOUNT_INFO.update({"Password": bmc_pwd})
- url = "{0}/redfish/v1/SessionService/Sessions".format(bmc_ip)
+ url = "{0}/redfish/v1/SessionService/Sessions/".format(bmc_ip)
x_auth_token = get_token(http_handler, url)
LOGGER.info("x_auth_token: %s", x_auth_token)
diff --git a/hdv/redfish/hpe6_conf/cases.yaml b/hdv/redfish/hpe6_conf/cases.yaml
new file mode 100644
index 0000000..786ea6a
--- /dev/null
+++ b/hdv/redfish/hpe6_conf/cases.yaml
@@ -0,0 +1,659 @@
+---
+- case_name: get asset code
+ case_sn: 1
+ enabled: true
+ expected_code: 200
+ expected_result:
+ AssetTag: ""
+ group: asset managment
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Systems/{system_id}/
+ key_flag_dict:
+ system_id: Members
+
+- case_name: check CPU info
+ case_sn: 2
+ enabled: true
+ expected_code: 200
+ expected_result:
+ count: 2
+ Manufacturer: ["x86-64", "Intel(R) Corporation"]
+ MaxSpeedMHz: 4000
+ Model: "Intel(R) Xeon(R) CPU E5-2699 v4 @ 2.20GHz"
+ ProcessorArchitecture: ["x86", "IA-64", "ARM", "MIPS", "OEM"]
+ Socket: ["Proc 1", "Proc 2"]
+ Status:
+ Health: OK
+ TotalCores: 22
+ TotalThreads: 44
+ group: compoment management
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Systems/{system_id}/Processors/{cpu_id}/
+ key_flag_dict:
+ system_id: Members
+ cpu_id: Members
+
+- case_name: check host name
+ case_sn: 4
+ enabled: true
+ expected_code: 200
+ expected_result:
+ HostName: ""
+ group: asset managment
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Systems/{system_id}/
+ key_flag_dict:
+ system_id: Members
+
+- case_name: check manufacturer
+ case_sn: 5
+ enabled: true
+ expected_code: 200
+ expected_result:
+ Manufacturer: "HPE"
+ group: asset managment
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Systems/{system_id}/
+ key_flag_dict:
+ system_id: Members
+
+- case_name: check model
+ case_sn: 6
+ enabled: true
+ expected_code: 200
+ expected_result:
+ Model: "ProLiant DL380 Gen9"
+ group: asset managment
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Systems/{system_id}/
+ key_flag_dict:
+ system_id: Members
+
+- case_name: check serial number
+ case_sn: 7
+ enabled: true
+ expected_code: 200
+ expected_result:
+ SerialNumber: N/A
+ group: asset managment
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Systems/{system_id}/
+ key_flag_dict:
+ system_id: Members
+
+- case_name: check main board name
+ case_sn: 8
+ enabled: false
+ expected_code: 200
+ expected_result:
+ Oem:
+ Mainboard:
+ BoardName: RS33M2C9S
+ group: asset managment
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Chassis/{chassis_id}/
+ key_flag_dict:
+ chassis_id: Members
+
+- case_name: check BIOS version
+ case_sn: 10
+ enabled: true
+ expected_code: 200
+ expected_result:
+ BiosVersion: "P89 v2.42 (04/25/2017)"
+ group: asset managment
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Systems/{system_id}/
+ key_flag_dict:
+ system_id: Members
+
+- case_name: check CPU amount
+ case_sn: 11
+ enabled: true
+ expected_code: 200
+ expected_result:
+ Members@odata.count: 2
+ group: compoment management
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Systems/{system_id}/Processors/
+ key_flag_dict:
+ system_id: Member
+
+- case_name: check memory mount
+ case_sn: 13
+ enabled: true
+ expected_code: 200
+ expected_result:
+ Members@odata.count: 16
+ group: compoment management
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Systems/{system_id}/Memory/
+ key_flag_dict:
+ system_id: Members
+
+- case_name: check memory information
+ case_sn: 14
+ enabled: true
+ expected_code: 200
+ expected_result:
+ count: 16
+ DIMMTechnology: RDIMM
+ SizeMB: 32768
+ Manufacturer: "HP "
+ DIMMType: DDR4
+ MaximumFrequencyMHz: 2400
+ PartNumber: "809083-091"
+ DIMMStatus: "GoodInUse"
+ group: compoment management
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Systems/{system_id}/Memory/{memory_id}/
+ key_flag_dict:
+ system_id: Members
+ memory_id: Members
+
+- case_name: check fans information
+ case_sn: 20
+ enabled: true
+ expected_code: 200
+ expected_result:
+ Fans:
+ - MemberId: N/A
+ CurrentReading: 9
+ Status:
+ Health: OK
+ State: Enabled
+ - MemberId: N/A
+ CurrentReading: 11
+ Status:
+ Health: OK
+ State: Enabled
+ - MemberId: N/A
+ CurrentReading: 11
+ Status:
+ Health: OK
+ State: Enabled
+ - MemberId: N/A
+ CurrentReading: 11
+ Status:
+ Health: OK
+ State: Enabled
+ - MemberId: N/A
+ CurrentReading: 11
+ Status:
+ Health: OK
+ State: Enabled
+ - MemberId: N/A
+ CurrentReading: 11
+ Status:
+ Health: OK
+ State: Enabled
+ group: compoment management
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Chassis/{chassis_id}/Thermal/
+ key_flag_dict:
+ chassis_id: Members
+
+- case_name: check power amount
+ case_sn: 21
+ enabled: true
+ expected_code: 200
+ expected_result:
+ Redundancy:
+ - MaxNumSupported: 2
+ group: compoment management
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Chassis/{chassis_id}/Power/
+ key_flag_dict:
+ chassis_id: MemberId
+
+- case_name: check cpu temperature
+ case_sn: 25
+ enabled: true
+ expected_code: 200
+ expected_result:
+ Temperatures:
+ - Name: 01-Inlet Ambient
+ ReadingCelsius: 23
+ - Name: 02-CPU 1
+ ReadingCelsius: 40
+ - Name: 03-CPU 2
+ ReadingCelsius: 40
+ group: sensor management
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Chassis/{chassis_id}/Thermal/
+ key_flag_dict:
+ chassis_id: Members
+
+- case_name: check server power state
+ case_sn: 26
+ enabled: true
+ expected_code: 200
+ expected_result:
+ PowerState: "On"
+ group: power management
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Systems/{system_id}/
+ key_flag_dict:
+ system_id: Members
+
+- case_name: check raid card information
+ case_sn: 16
+ enabled: true
+ expected_code: 200
+ expected_result:
+ count: 1
+ FirmwareVersion:
+ Current:
+ VersionString: "5.52"
+ Model: Smart Array P440ar Controller
+ Status:
+ Health: OK
+ State: Enabled
+ group: compoment management
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Systems/{system_id}/SmartStorage/ArrayControllers/{array_controllers_id}/
+ key_flag_dict:
+ system_id: Members
+ array_controllers_id: Members
+
+- case_name: check harddisk information
+ case_sn: 17
+ enabled: true
+ expected_code: 200
+ expected_result:
+ count: 5
+ CapacityMiB: [953869, 457862]
+ Location: ["1I:3:1", "1I:3:2", "1I:3:3", "1I:3:4", "2I:3:5"]
+ MediaType: "SSD"
+ Model: ["EDGE", "MK000480GWCEV"]
+ Status:
+ Health: OK
+ State: Enabled
+ group: compoment management
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Systems/{system_id}/SmartStorage/ArrayControllers/{array_controllers_id}/DiskDrives/{disk_drive_id}/
+ key_flag_dict:
+ system_id: Members
+ array_controllers_id: Members
+ disk_drive_id: Members
+
+- case_name: check network interface adapter information
+ case_sn: 18
+ enabled: true
+ expected_code: 200
+ expected_result:
+ count: 3
+ Type: BaseNetworkAdapter.1.1.0
+ Name: ["HPE Ethernet 10Gb 2-port 562FLR-SFP+ Adpt", "Intel(R) Ethernet Converged Network Adapter X710-4"]
+ group: compoment management
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Systems/{system_id}/NetworkAdapters/{networkadapters_id}/
+ key_flag_dict:
+ system_id: Members
+ networkadapters_id: Members
+
+- case_name: check network interface adapter port information
+ case_sn: 19
+ enabled: true
+ expected_code: 200
+ expected_result:
+ count: 3
+ PhysicalPorts:
+ - FullDuplex: false
+ IPv4Addresses:
+ - Address: "N/A"
+ IPv6Addresses:
+ - Address: "N/A"
+ - FullDuplex: false
+ IPv4Addresses:
+ - Address: "N/A"
+ IPv6Addresses:
+ - Address: "N/A"
+ group: compoment management
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Systems/{system_id}/NetworkAdapters/{networkadapters_id}/
+ key_flag_dict:
+ system_id: Members
+ networkadapters_id: Members
+
+- case_name: check power detail info
+ case_sn: 22
+ enabled: true
+ expected_code: 200
+ expected_result:
+ PowerControl:
+ - PowerConsumedWatts: N/A
+ PowerCapacityWatts: 1600
+ PowerSupplies:
+ - LineInputVoltage: N/A
+ PowerCapacityWatts: 800
+ Status:
+ Health: OK
+ State: Enabled
+ - LineInputVoltage: N/A
+ PowerCapacityWatts: 800
+ Status:
+ Health: OK
+ State: Enabled
+ group: compoment management
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Chassis/{chassis_id}/Power/
+ key_flag_dict:
+ chassis_id: Members
+
+- case_name: check server temperature air intake
+ case_sn: 24
+ enabled: true
+ expected_code: 200
+ expected_result:
+ Temperatures:
+ - Name: 01-Inlet Ambient
+ ReadingCelsius: N/A
+ group: sensor management
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Chassis/{chassis_id}/Thermal/
+ key_flag_dict:
+ chassis_id: Members
+
+- case_name: remote get CPU hyperthreading in disabled
+ case_sn: 31
+ enabled: false
+ expected_code: 200
+ expected_result:
+ ProcHyperthreading: Disabled
+ group: remote configure
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Systems/{system_id}/bios/
+ key_flag_dict:
+ system_id: Members
+
+- case_name: remote get CPU hyperthreading in enabled
+ case_sn: 32
+ enabled: true
+ expected_code: 200
+ expected_result:
+ ProcHyperthreading: Enabled
+ group: remote configure
+ header: null
+ method: GET
+ request_body: null
+ url: /redfish/v1/Systems/{system_id}/bios/
+ key_flag_dict:
+ system_id: Members
+
+- case_name: set asset code
+ case_sn: 1
+ enabled: false
+ expected_code: 200
+ expected_result:
+ AssetTag: CM_cc@1234
+ group: asset managment
+ header: null
+ method: PATCH
+ request_body: '{"AssetTag": "CM_cc@1234"}'
+ url: /redfish/v1/Systems/{system_id}/
+ key_flag_dict:
+ system_id: Members
+
+- case_name: set host name
+ case_sn: 3
+ enabled: false
+ expected_code: 200
+ expected_result:
+ HostName: NFV-RPZJHZ-01B
+ group: asset managment
+ header: null
+ method: PATCH
+ request_body: '{"HostName": "NFV-RPZJHZ-01B"}'
+ url: /redfish/v1/Systems/{system_id}/
+ key_flag_dict:
+ system_id: Members
+
+- case_name: remote power on server
+ case_sn: 27
+ enabled: false
+ expected_code: 200
+ expected_result: '{"error":{"@Message.ExtendedInfo": [{"Message": "Successfully
+ Completed Request", "Severity":"OK"}]}}'
+ group: power management
+ header: null
+ method: POST
+ request_body: '{"ResetType": "On"}'
+ url: /redfish/v1/Systems/{system_id}/Actions/ComputerSystem.Reset/
+ key_flag_dict:
+ system_id: Members
+
+- case_name: remote power off server
+ case_sn: 28
+ enabled: false
+ expected_code: 200
+ expected_result: '{"error":{"@Message.ExtendedInfo": [{"Message": "Successfully
+ Completed Request", "Severity":"OK"}]}}'
+ group: power management
+ header: null
+ method: POST
+ request_body: '{"ResetType": "GracefulShutdown"}'
+ url: /redfish/v1/Systems/{system_id}/Actions/ComputerSystem.Reset/
+ key_flag_dict:
+ system_id: Members
+
+- case_name: remote reset server
+ case_sn: 29
+ enabled: false
+ expected_code: 200
+ expected_result: '{"error":{"@Message.ExtendedInfo": [{"Message": "Successfully
+ Completed Request", "Severity":"OK"}]}}'
+ group: power management
+ header: null
+ method: POST
+ request_body: '{"ResetType": "ForceRestart"}'
+ url: /redfish/v1/Systems/{system_id}/Actions/ComputerSystem.Reset/
+ key_flag_dict:
+ system_id: Members
+
+- case_name: remote configure CPU in hyperthreading disabled
+ case_sn: 30
+ enabled: false
+ expected_code: 200
+ expected_result: '{"Attributes": {"ProcessorHyperThreading": "Disabled"}}'
+ group: remote configure
+ header: null
+ method: PATCH
+ request_body: '{ "Attributes": { "ProcessorHyperThreading": "Disabled" }}'
+ url: /redfish/v1/Systems/{system_id}/Bios/Settings/
+ key_flag_dict:
+ system_id: Members
+
+- case_name: remote configure CPU in hyperthreading enabled
+ case_sn: 32
+ enabled: false
+ expected_code: 200
+ expected_result: '{"Attributes": {"ProcessorHyperThreading": "Enabled"}}'
+ group: remote configure
+ header: null
+ method: PATCH
+ request_body: '{ "Attributes": { "ProcessorHyperThreading": "Enabled" }}'
+ url: /redfish/v1/Systems/{system_id}/Bios/Settings/
+ key_flag_dict:
+ system_id: Members
+
+- case_name: disable PXE mode
+ case_sn: 34
+ enabled: false
+ expected_code: 200
+ expected_result: '{ "Attributes": { "IPv4PXESupport": "Disabled" }}'
+ group: remote configure
+ header: null
+ method: PATCH
+ request_body: '{ "Attributes": { "IPv4PXESupport": "Disabled" }}'
+ url: /redfish/v1/Systems/{system_id}/Bios/Settings/
+ key_flag_dict:
+ system_id: Members
+
+- case_name: enable PXE mode
+ case_sn: 36
+ enabled: false
+ expected_code: 200
+ expected_result: '{ "Attributes": { "IPv4PXESupport": "Enabled" }}'
+ group: remote configure
+ header: null
+ method: PATCH
+ request_body: '{ "Attributes": { "IPv4PXESupport": "Enabled" }}'
+ url: /redfish/v1/Systems/{system_id}/Bios/Settings/
+ key_flag_dict:
+ system_id: Members
+
+- case_name: configure boot order
+ case_sn: 40
+ enabled: false
+ expected_code: 200
+ expected_result:
+ PersistentBootConfigOrder:
+ - "NIC.Slot.1.1.IPv4"
+ - "Unknown.Unknown.1"
+ - "HD.Emb.1.4"
+ - "HD.Emb.1.3"
+ - "Generic.USB.1.1"
+ - "NIC.FlexLOM.1.1.IPv4"
+ - "NIC.FlexLOM.1.1.IPv6"
+ - "NIC.Slot.4.1.IPv4"
+ - "NIC.Slot.1.1.IPv6"
+ - "NIC.Slot.4.1.IPv6"
+ - "HD.Emb.1.2"
+ group: remote interface management
+ header: null
+ method: PATCH
+ request_body:
+ '"PersistentBootConfigOrder": [
+ "NIC.Slot.1.1.IPv4",
+ "Unknown.Unknown.1",
+ "HD.Emb.1.4",
+ "HD.Emb.1.3",
+ "Generic.USB.1.1",
+ "NIC.FlexLOM.1.1.IPv4",
+ "NIC.FlexLOM.1.1.IPv6",
+ "NIC.Slot.4.1.IPv4",
+ "NIC.Slot.1.1.IPv6",
+ "NIC.Slot.4.1.IPv6",
+ "HD.Emb.1.2"
+ ]'
+ url: /redfish/v1/Systems/{system_id}/Bios/Boot/Settings/
+ key_flag_dict:
+ system_id: Members
+
+- case_name: change BMC account
+ case_sn: 45
+ enabled: false
+ expected_code: 200
+ expected_result: '{"UserName": "CM_cc@1234","RoleId": "Administrator",}'
+ group: remote interface management
+ header: null
+ method: PATCH
+ request_body: '{"UserName": "CM_cc@1234","Password": "1234@CM_cc","RoleId": "Administrator",}'
+ url: /redfish/v1/AccountService/Accounts/3/
+ key_flag_dict: {}
+
+- case_name: configure BMC ip in static, ipv4
+ case_sn: 46
+ enabled: false
+ expected_code: 200
+ expected_result: '{"count": 1, "IPv4Addresses": [ { "Address":
+ "192.168.66.120", "AddressOrigin": "Static", "Gateway":
+ "192.168.66.1", "SubnetMask": "255.255.255.128" } ]}'
+ group: remote interface management
+ header: null
+ method: PATCH
+ request_body: '{ "IPv4Addresses": [ { "Address": "192.168.66.120", "AddressOrigin":
+ "Static", "Gateway": "192.168.66.1", "SubnetMask": "255.255.255.128" } ]}'
+ url: /redfish/v1/Managers/{manager_id}/EthernetInterfaces/eth1/
+ key_flag_dict:
+ manager_id: Members
+
+- case_name: configure BMC ip in DHCP, gateway and subnet mask ipv4
+ case_sn: 47
+ enabled: false
+ expected_code: 200
+ expected_result: '{"count": 1, "IPv4Addresses": [ { "Address":
+ "192.168.66.120", "AddressOrigin": "DHCP", "Gateway": "192.168.66.1", "SubnetMask":
+ "255.255.255.128" } ]}'
+ group: remote interface management
+ header: null
+ method: PATCH
+ request_body: '{ "IPv4Addresses": [ { "AddressOrigin": "DHCP" } ]}'
+ url: /redfish/v1/Managers/{manager_id}/EthernetInterfaces/eth1/
+ key_flag_dict:
+ manager_id: Members
+
+- case_name: configure BMC ip in static, ipv4
+ case_sn: 48
+ enabled: false
+ expected_code: 200
+ expected_result: '{"count": 1, "IPv4Addresses": [ { "AddressOrigin":
+ "DHCP", } ]}'
+ group: remote interface management
+ header: null
+ method: PATCH
+ request_body: '{ "IPv4Addresses": [ { "AddressOrigin": "DHCP" } ]}'
+ url: /redfish/v1/Managers/{manager_id}/EthernetInterfaces/eth1/
+ key_flag_dict:
+ manager_id: Members
+
+- case_name: configure BMC ip in static, ipv6
+ case_sn: 49
+ enabled: false
+ expected_code: 200
+ expected_result: '{"count": 1, "IPv6Addresses": [ { "Address":
+ "N/A", "AddressOrigin": "N/A", "PrefixLength": 64 }, { "Address":
+ "2019::11", "AddressOrigin": "Static", "PrefixLength": 64 } ]}'
+ group: remote interface management
+ header: null
+ method: PATCH
+ request_body: '{ "IPv6Addresses": [ { "Address": "2019::11", "AddressOrigin":
+ "Static", "PrefixLength": 64 } ]}'
+ url: /redfish/v1/Managers/{manager_id}/EthernetInterfaces/eth1/
+ key_flag_dict:
+ manager_id: Members \ No newline at end of file
diff --git a/hdv/redfish/hpe6_conf/config.yaml b/hdv/redfish/hpe6_conf/config.yaml
new file mode 100644
index 0000000..a98bfbd
--- /dev/null
+++ b/hdv/redfish/hpe6_conf/config.yaml
@@ -0,0 +1,4 @@
+---
+bmc_ip: https://10.10.99.40
+bmc_user: OPNFV
+bmc_pwd: OLfILvLdxjzPH5C