tree 5071323a0a0e15081c760b157e7f3ae10c3d54b0
parent a502de3d661acf95613d4e4d27c9611f2c8148ea
author Gunnar Mills <gmills@us.ibm.com> 1594261064 -0500
committer Sunitha Harish <sunharis@in.ibm.com> 1594618097 -0500

Move registries to v1_4_0.MessageRegistry

This implements the MessageSeverity property which tools and users
should use instead of the deprecated Severity property.

Since the registries use common infrastructure, easiest if just
bumped together and now allows grabbing the latest when implementing
a new registry, e.g. ResourceEvent.

Implement this new required property, MessageSeverity, in the openbmc
registry. Follow Redfish registries in having both MessageSeverity
and Severity.

Modified parse_registries.py to look at latest Base and
TaskEvent registries and ran parse_registries.py.

Tested: Built and validator passes. See new registries:
curl -k https://$bmc/redfish/v1/Registries/Base
{
  "@odata.id": "/redfish/v1/Registries/Base",
  "@odata.type": "#MessageRegistryFile.v1_1_0.MessageRegistryFile",
  "Description": "DMTF Base Message Registry File Location",
  "Id": "Base",
  "Languages": [
    "en"
  ],
  "Languages@odata.count": 1,
  "Location": [
    {
      "Language": "en",
      "PublicationUri": "https://redfish.dmtf.org/registries/Base.1.8.1.json",
      "Uri": "/redfish/v1/Registries/Base/Base"
    }
  ],
...

curl -k https://$bmc/redfish/v1/Registries/Base/Base
{
  "@Redfish.Copyright": "Copyright 2014-2020 DMTF. All rights reserved.",
  "@odata.type": "#MessageRegistry.v1_4_0.MessageRegistry",
  "Description": "This registry defines the base messages for Redfish",
  "Id": "Base.1.8.1",
  "Language": "en",
  "Messages": {
    "AccessDenied": {
      "Description": "Indicates that while attempting to access, connect to or transfer to/from another resource, the service denied access.",
      "Message": "While attempting to establish a connection to %1, the service denied access.",
      "MessageSeverity": "Critical",
      "NumberOfArgs": 1,
      "ParamTypes": [
        "string"
      ],
      "Resolution": "Attempt to ensure that the URI is correct and that the service has the appropriate credentials.",
      "
...

Change-Id: I6495af0e02036ea527036d942d6b6b5f55178bb2
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
