Move to 2020.4

2020.4 contains a lot of new schemas.
New feature include: new power and thermal schemas, conditions,
and new account types.

For more information, see:
https://www.dmtf.org/sites/default/files/Redfish_Release_2020.4_Overview.pdf

Tested: Validator passes. Able to see new schemas.
Change-Id: I7fb860c84fa4cff80698dcb26a463b155e6faba7
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
diff --git a/static/redfish/v1/JsonSchemas/Redundancy/Redundancy.json b/static/redfish/v1/JsonSchemas/Redundancy/Redundancy.json
index 89e7fd1..e08cae8 100644
--- a/static/redfish/v1/JsonSchemas/Redundancy/Redundancy.json
+++ b/static/redfish/v1/JsonSchemas/Redundancy/Redundancy.json
@@ -1,5 +1,5 @@
 {
-    "$id": "http://redfish.dmtf.org/schemas/v1/Redundancy.v1_3_5.json",
+    "$id": "http://redfish.dmtf.org/schemas/v1/Redundancy.v1_4_0.json",
     "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
     "copyright": "Copyright 2014-2020 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
     "definitions": {
@@ -186,9 +186,111 @@
                 "NotRedundant": "v1_3_0"
             },
             "type": "string"
+        },
+        "RedundancyType": {
+            "enum": [
+                "Failover",
+                "NPlusM",
+                "Sharing",
+                "Sparing",
+                "NotRedundant"
+            ],
+            "enumDescriptions": {
+                "Failover": "Failure of one unit automatically causes a standby or offline unit in the redundancy set to take over its functions.",
+                "NPlusM": "Multiple units are available and active such that normal operation will continue if one or more units fail.",
+                "NotRedundant": "The subsystem is not configured in a redundancy mode, either due to configuration or the functionality has been disabled by the user.",
+                "Sharing": "Multiple units contribute or share such that operation will continue, but at a reduced capacity, if one or more units fail.",
+                "Sparing": "One or more spare units are available to take over the function of a failed unit, but takeover is not automatic."
+            },
+            "enumLongDescriptions": {
+                "Failover": "This value shall indicate that a failure of one unit automatically causes a standby or offline unit in the redundancy set to take over its functions.",
+                "NPlusM": "This value shall indicate that the capacity or services provided by the set of N+M devices can withstand failure of up to M units, with all units in the group normally providing capacity or service."
+            },
+            "type": "string"
+        },
+        "RedundantGroup": {
+            "additionalProperties": false,
+            "description": "The redundancy information for the devices in a redundancy group.",
+            "longDescription": "This type shall contain redundancy information for the set of devices in this redundancy group.",
+            "patternProperties": {
+                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
+                    "description": "This property shall specify a valid odata or Redfish property.",
+                    "type": [
+                        "array",
+                        "boolean",
+                        "integer",
+                        "number",
+                        "null",
+                        "object",
+                        "string"
+                    ]
+                }
+            },
+            "properties": {
+                "MaxSupportedInGroup": {
+                    "description": "The maximum number of devices supported in this redundancy group.",
+                    "longDescription": "This property shall contain the maximum number of devices allowed in the redundancy group.",
+                    "readonly": true,
+                    "type": [
+                        "integer",
+                        "null"
+                    ],
+                    "versionAdded": "v1_4_0"
+                },
+                "MinNeededInGroup": {
+                    "description": "The minimum number of devices needed for this group to be redundant.",
+                    "longDescription": "This property shall contain the minimum number of functional devices needed in the redundancy group for the current redundancy mode to be fault tolerant.",
+                    "readonly": true,
+                    "type": [
+                        "integer",
+                        "null"
+                    ],
+                    "versionAdded": "v1_4_0"
+                },
+                "RedundancyGroup": {
+                    "description": "The links to the devices included in this redundancy group.",
+                    "items": {
+                        "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Resource"
+                    },
+                    "longDescription": "This property shall contain the links to the resources that represent the devices that are part of this redundancy group.",
+                    "readonly": true,
+                    "type": "array",
+                    "versionAdded": "v1_4_0"
+                },
+                "RedundancyGroup@odata.count": {
+                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
+                },
+                "RedundancyType": {
+                    "anyOf": [
+                        {
+                            "$ref": "#/definitions/RedundancyType"
+                        },
+                        {
+                            "type": "null"
+                        }
+                    ],
+                    "description": "The redundancy mode of the group.",
+                    "longDescription": "This property shall contain the information about the redundancy mode of this redundancy group.",
+                    "readonly": true,
+                    "versionAdded": "v1_4_0"
+                },
+                "Status": {
+                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
+                    "description": "The status and health of the resource and its subordinate or dependent resources.",
+                    "longDescription": "This property shall contain any status or health properties of the resource.",
+                    "versionAdded": "v1_4_0"
+                }
+            },
+            "required": [
+                "RedundancyType",
+                "MinNeededInGroup",
+                "Status",
+                "RedundancyGroup"
+            ],
+            "type": "object"
         }
     },
     "owningEntity": "DMTF",
-    "release": "2017.3",
-    "title": "#Redundancy.v1_3_5"
+    "release": "2020.4",
+    "title": "#Redundancy.v1_4_0"
 }
\ No newline at end of file