Managers ID : Introduced variable to declare Managers ID in resource.robot and updated all the scripts in openbmc-test-automation

Changes:
    - Introduced ${MANAGER_ID} variable in resource.robot
    - Replaced all the Managers/bmc to Managers/${MANAGER_ID} across all the scripts
    - Also in data/variables.py updated chassis id for the few redfish uri.

Tested:
     - Ran All The Scripts Successfully

Change-Id: Iff3673aae27657e0799dec5cb94c1651a0cd5d18
Signed-off-by: ganesanb <ganesanb@ami.com>
Signed-off-by: George Keishing <gkeishin@in.ibm.com>
diff --git a/lib/bmc_network_utils.robot b/lib/bmc_network_utils.robot
index d2c3543..7c9ce49 100644
--- a/lib/bmc_network_utils.robot
+++ b/lib/bmc_network_utils.robot
@@ -424,7 +424,7 @@
     # Sample output:
     #{
     #  "@odata.context": "/redfish/v1/$metadata#EthernetInterface.EthernetInterface",
-    #  "@odata.id": "/redfish/v1/Managers/bmc/EthernetInterfaces/eth0",
+    #  "@odata.id": "/redfish/v1/Managers/${MANAGER_ID}/EthernetInterfaces/eth0",
     #  "@odata.type": "#EthernetInterface.v1_2_0.EthernetInterface",
     #  "Description": "Management Network Interface",
     #  "IPv4Addresses": [
diff --git a/lib/bmc_redfish.py b/lib/bmc_redfish.py
index 0e97af7..a7a70c4 100644
--- a/lib/bmc_redfish.py
+++ b/lib/bmc_redfish.py
@@ -227,7 +227,7 @@
                 # JsonSchemas, SessionService or URLs containing # are not required in enumeration.
                 # Example: '/redfish/v1/JsonSchemas/' and sub resources.
                 #          '/redfish/v1/SessionService'
-                #          '/redfish/v1/Managers/bmc#/Oem'
+                #          '/redfish/v1/Managers/${MANAGER_ID}#/Oem'
                 if (
                     ("JsonSchemas" in resource)
                     or ("SessionService" in resource)
diff --git a/lib/bmc_redfish_utils.py b/lib/bmc_redfish_utils.py
index e93eee3..e240d94 100644
--- a/lib/bmc_redfish_utils.py
+++ b/lib/bmc_redfish_utils.py
@@ -297,7 +297,7 @@
                 # required in enumeration.
                 # Example: '/redfish/v1/JsonSchemas/' and sub resources.
                 #          '/redfish/v1/SessionService'
-                #          '/redfish/v1/Managers/bmc#/Oem'
+                #          '/redfish/v1/Managers/${MANAGER_ID}#/Oem'
                 if (
                     ("JsonSchemas" in resource)
                     or ("SessionService" in resource)
diff --git a/lib/bmc_redfish_utils.robot b/lib/bmc_redfish_utils.robot
index c95f7f5..3bc107c 100644
--- a/lib/bmc_redfish_utils.robot
+++ b/lib/bmc_redfish_utils.robot
@@ -48,10 +48,10 @@
     #    "GracefulRestart",
     #    "ForceRestart"
     #  ],
-    #  "target": "/redfish/v1/Managers/bmc/Actions/Manager.Reset"
+    #  "target": "/redfish/v1/Managers/${MANAGER_ID}/Actions/Manager.Reset"
     # }
 
-    ${target}=  redfish_utils.Get Target Actions  /redfish/v1/Managers/bmc/  Manager.Reset
+    ${target}=  redfish_utils.Get Target Actions  /redfish/v1/Managers/${MANAGER_ID}/  Manager.Reset
     ${payload}=  Create Dictionary  ResetType=${reset_type}
     Redfish.Post  ${target}  body=&{payload}
 
@@ -359,6 +359,6 @@
 Get BMC Last Reset Time
     [Documentation]  Return BMC LastResetTime.
 
-    ${last_reset_time}=  Redfish.Get Attribute  /redfish/v1/Managers/bmc  LastResetTime
+    ${last_reset_time}=  Redfish.Get Attribute  /redfish/v1/Managers/${MANAGER_ID}  LastResetTime
 
     [Return]  ${last_reset_time}
diff --git a/lib/certificate_utils.robot b/lib/certificate_utils.robot
index 961178c..60dcb27 100755
--- a/lib/certificate_utils.robot
+++ b/lib/certificate_utils.robot
@@ -164,7 +164,7 @@
 
 Delete All CA Certificate Via Redfish
     [Documentation]  Delete all CA certificate via Redfish.
-    ${cert_list}=  Redfish_Utils.Get Member List  /redfish/v1/Managers/bmc/Truststore/Certificates
+    ${cert_list}=  Redfish_Utils.Get Member List  /redfish/v1/Managers/${MANAGER_ID}/Truststore/Certificates
     FOR  ${cert}  IN  @{cert_list}
       Redfish.Delete  ${cert}  valid_status_codes=[${HTTP_NO_CONTENT}]
       Log To Console  Wait Time started in seconds ${wait_time}
@@ -318,5 +318,5 @@
 
     # NTP network takes few seconds to restart.
     Wait Until Keyword Succeeds  30 sec  10 sec
-    ...  Redfish.Patch  ${REDFISH_BASE_URI}Managers/bmc  body={'DateTime': '${new_time}'}
+    ...  Redfish.Patch  ${REDFISH_BASE_URI}Managers/${MANAGER_ID}  body={'DateTime': '${new_time}'}
     ...  valid_status_codes=[${HTTP_OK}]
diff --git a/lib/common_utils.robot b/lib/common_utils.robot
index 26300da..afe6f80 100755
--- a/lib/common_utils.robot
+++ b/lib/common_utils.robot
@@ -857,7 +857,7 @@
 Redfish Get BMC Version
     [Documentation]  Get BMC version via Redfish.
 
-    ${output}=  Redfish.Get Attribute  ${REDFISH_BASE_URI}Managers/bmc  FirmwareVersion
+    ${output}=  Redfish.Get Attribute  ${REDFISH_BASE_URI}Managers/${MANAGER_ID}  FirmwareVersion
     [Return]  ${output}
 
 Redfish Get Host Version
diff --git a/lib/dump_utils.robot b/lib/dump_utils.robot
index bcd190e..cc26705 100644
--- a/lib/dump_utils.robot
+++ b/lib/dump_utils.robot
@@ -162,17 +162,17 @@
     # Description of Argument(s):
     # dump_id  An integer value that identifies a particular dump (e.g. 1, 3).
 
-    Redfish.Delete  /redfish/v1/Managers/bmc/LogServices/Dump/Entries/${dump_id}
+    Redfish.Delete  /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Entries/${dump_id}
 
 
 Redfish Delete All BMC Dumps
     [Documentation]  Delete all BMC dumps via Redfish.
 
     # Check if dump entries exist, if not return.
-    ${resp}=  Redfish.Get  /redfish/v1/Managers/bmc/LogServices/Dump/Entries
+    ${resp}=  Redfish.Get  /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Entries
     Return From Keyword If  ${resp.dict["Members@odata.count"]} == ${0}
 
-    Redfish.Post  /redfish/v1/Managers/bmc/LogServices/Dump/Actions/LogService.ClearLog
+    Redfish.Post  /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Actions/LogService.ClearLog
 
 
 Get Redfish BMC Dump Log Entries
@@ -262,7 +262,7 @@
 
      ${payload}=  Create Dictionary  DiagnosticDataType=Manager
      ${resp}=  Redfish.Post
-     ...  /redfish/v1/Managers/bmc/LogServices/Dump/Actions/LogService.CollectDiagnosticData
+     ...  /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Actions/LogService.CollectDiagnosticData
      ...  body=${payload}  valid_status_codes=[${HTTP_ACCEPTED}]
 
      # Example of response from above Redfish POST request.
@@ -286,7 +286,7 @@
     #                               initiating BMC dump and returns dump task id.
 
     ${payload}=  Create Dictionary  DiagnosticDataType=Manager
-    ${resp}=  Redfish.Post  /redfish/v1/Managers/bmc/LogServices/Dump/Actions/LogService.CollectDiagnosticData
+    ${resp}=  Redfish.Post  /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Actions/LogService.CollectDiagnosticData
     ...  body=${payload}  valid_status_codes=[${HTTP_ACCEPTED}]
 
     # Example of response from above Redfish POST request.
@@ -310,11 +310,11 @@
     #      "Connection: Keep-Alive",
     #      "Accept: */*",
     #      "Content-Length: 33",
-    #      "Location: /redfish/v1/Managers/bmc/LogServices/Dump/Entries/2"]
+    #      "Location: /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Entries/2"]
     #    ],
     #    "HttpOperation": "POST",
     #    "JsonBody": "{\"DiagnosticDataType\":\"Manager\"}",
-    #     "TargetUri": "/redfish/v1/Managers/bmc/LogServices/Dump/Actions/LogService.CollectDiagnosticData"
+    #     "TargetUri": "/redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Actions/LogService.CollectDiagnosticData"
     # }
 
     [Return]  ${task_dict["Payload"]["HttpHeaders"][-1].split("/")[-1]}
@@ -369,12 +369,12 @@
     #      "Connection: Keep-Alive",
     #      "Accept: */*",
     #      "Content-Length: 33",
-    #      "Location: /redfish/v1/Managers/bmc/LogServices/Dump/Entries/2"]
+    #      "Location: /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Entries/2"]
     #    ],
     #    "HttpOperation": "POST",
     #    "JsonBody": "{\"DiagnosticDataType\":\"Manager\"}",
     #     "TargetUri":
-    # "/redfish/v1/Managers/bmc/LogServices/Dump/Actions/LogService.CollectDiagnosticData"
+    # "/redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Actions/LogService.CollectDiagnosticData"
     # }
 
     ${task_dict}=  Redfish.Get Properties  /redfish/v1/TaskService/Tasks/${task_id}
@@ -419,7 +419,7 @@
     ...  the task instance Id and response object (e.g., "5").
 
     ${payload}=  Create Dictionary  DiagnosticDataType=Manager
-    ${resp}=  Redfish.Post  /redfish/v1/Managers/bmc/LogServices/Dump/Actions/LogService.CollectDiagnosticData
+    ${resp}=  Redfish.Post  /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Actions/LogService.CollectDiagnosticData
     ...  body=${payload}  valid_status_codes=[${HTTP_ACCEPTED}]
 
     ${ip_resp}=  Evaluate  json.loads(r'''${resp.text}''')  json
diff --git a/lib/protocol_setting_utils.robot b/lib/protocol_setting_utils.robot
index 46617fb..3242533 100644
--- a/lib/protocol_setting_utils.robot
+++ b/lib/protocol_setting_utils.robot
@@ -45,7 +45,7 @@
 
     # Sample output:
     # {
-    #   "@odata.id": "/redfish/v1/Managers/bmc/NetworkProtocol",
+    #   "@odata.id": "/redfish/v1/Managers/${MANAGER_ID}/NetworkProtocol",
     #   "@odata.type": "#ManagerNetworkProtocol.v1_5_0.ManagerNetworkProtocol",
     #   "Description": "Manager Network Service",
     #   "FQDN": "bmc",
@@ -55,7 +55,7 @@
     #  },
     #  "HTTPS": {
     #    "Certificates": {
-    #      "@odata.id": "/redfish/v1/Managers/bmc/NetworkProtocol/HTTPS/Certificates"
+    #      "@odata.id": "/redfish/v1/Managers/${MANAGER_ID}/NetworkProtocol/HTTPS/Certificates"
     #    },
     #    "Port": xxx,
     #    "ProtocolEnabled": true
diff --git a/lib/redfish_code_update_utils.robot b/lib/redfish_code_update_utils.robot
index 5210c9b..8a55005 100644
--- a/lib/redfish_code_update_utils.robot
+++ b/lib/redfish_code_update_utils.robot
@@ -22,7 +22,7 @@
 
     ${sw_functional}=  Run Keyword If
     ...   '${image_info["Description"]}' == 'BMC image' or '${image_info["Description"]}' == 'BMC update'
-    ...    Redfish.Get Attribute  /redfish/v1/Managers/bmc  FirmwareVersion
+    ...    Redfish.Get Attribute  /redfish/v1/Managers/${MANAGER_ID}  FirmwareVersion
     ...  ELSE
     ...    Redfish.Get Attribute  /redfish/v1/Systems/system  BiosVersion
 
@@ -53,7 +53,7 @@
     # "ActiveSoftwareImage": {
     #         "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/5ca9fec0"
     #     },
-    ${active_sw_img}=  Redfish.Get Attribute  /redfish/v1/Managers/bmc  Links
+    ${active_sw_img}=  Redfish.Get Attribute  /redfish/v1/Managers/${MANAGER_ID}  Links
 
     ${active_id}=  Set Variable  ${active_sw_img["ActiveSoftwareImage"]["@odata.id"].split("/")[-1]}
 
@@ -281,7 +281,7 @@
    ...  Set Variable  /redfish/v1/UpdateService/FirmwareInventory/${nonfunctional_sw_inv['image_id']}
 
    # Below URI, change to backup image and reset the BMC.
-   Redfish.Patch  /redfish/v1/Managers/bmc
+   Redfish.Patch  /redfish/v1/Managers/${MANAGER_ID}
    ...  body={'Links': {'ActiveSoftwareImage': {'@odata.id': '${firmware_inv_path}'}}}
 
 
diff --git a/lib/redfish_plus.py b/lib/redfish_plus.py
index 2cc7531..c33895a 100755
--- a/lib/redfish_plus.py
+++ b/lib/redfish_plus.py
@@ -95,7 +95,7 @@
 
         From a python program:
 
-        response = bmc_redfish.get("/redfish/v1/Managers/bmc/EthernetInterfaces", [200, 201])
+        response = bmc_redfish.get("/redfish/v1/Managers/${MANAGER_ID}/EthernetInterfaces", [200, 201])
 
         If this call to the get method generates a response.status equal to anything other than 200 or 201,
         an exception will be raised.
@@ -103,7 +103,7 @@
         From a robot program:
 
         BMC_Redfish.logout
-        ${response}=  BMC_Redfish.Get  /redfish/v1/Managers/bmc/EthernetInterfaces  valid_status_codes=[401]
+        ${response}=  BMC_Redfish.Get  /redfish/v1/Managers/${MANAGER_ID}/EthernetInterfaces  valid_status_codes=[401]
 
         As part of a robot test, the programmer has logged out to verify that the get request will generate a
         status code of 401 (i.e. "Unauthorized").
diff --git a/lib/redfish_request.py b/lib/redfish_request.py
index da455a3..64463cf 100644
--- a/lib/redfish_request.py
+++ b/lib/redfish_request.py
@@ -383,8 +383,8 @@
 
         'Actions' : {
         '#Manager.Reset' : {
-        '@Redfish.ActionInfo' : '/redfish/v1/Managers/bmc/ResetActionInfo',
-        'target' : '/redfish/v1/Managers/bmc/Actions/Manager.Reset'
+        '@Redfish.ActionInfo' : '/redfish/v1/Managers/${MANAGER_ID}/ResetActionInfo',
+        'target' : '/redfish/v1/Managers/${MANAGER_ID}/Actions/Manager.Reset'
         }
         }
         """
diff --git a/lib/resource.robot b/lib/resource.robot
index 947f3fe..c343f86 100755
--- a/lib/resource.robot
+++ b/lib/resource.robot
@@ -37,6 +37,7 @@
 # For users privilege admin or sudo.
 ${USER_TYPE}          ${EMPTY}
 
+${MANAGER_ID}  bmc
 ${CHASSIS_ID}  chassis
 
 # MTLS_ENABLED indicates whether mTLS is enabled.
diff --git a/lib/utils.robot b/lib/utils.robot
index 7567ea5..212dc04 100755
--- a/lib/utils.robot
+++ b/lib/utils.robot
@@ -904,7 +904,7 @@
     #    "State": "Enabled"
     # },
 
-    ${status}=  Redfish.Get Attribute  /redfish/v1/Managers/bmc  Status
+    ${status}=  Redfish.Get Attribute  /redfish/v1/Managers/${MANAGER_ID}  Status
     [Return]  ${status["State"]}