Update Redfish schemas to 2019.2
Note, the DMTF changed the format of the schema file pack yet again, so
the script changes now to compensate for that.
Tested:
Ran schema validator. One unrelated failure in LogEntry, and 4 new
warnings in PCIe devices (we're using a deprecated property). All other
endpoints pass.
Signed-off-by: Ed Tanous <ed.tanous@intel.com>
Change-Id: I81c030a7c5a6a32cc12a5e7e02a9441b7891bc5d
diff --git a/static/redfish/v1/JsonSchemas/Certificate/Certificate.json b/static/redfish/v1/JsonSchemas/Certificate/Certificate.json
index a74383d..8c4cac8 100644
--- a/static/redfish/v1/JsonSchemas/Certificate/Certificate.json
+++ b/static/redfish/v1/JsonSchemas/Certificate/Certificate.json
@@ -1,15 +1,15 @@
{
- "$id": "http://redfish.dmtf.org/schemas/v1/Certificate.v1_0_0.json",
+ "$id": "http://redfish.dmtf.org/schemas/v1/Certificate.v1_1_1.json",
"$ref": "#/definitions/Certificate",
"$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
- "copyright": "Copyright 2014-2018 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
+ "copyright": "Copyright 2014-2019 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
"definitions": {
"Actions": {
"additionalProperties": false,
- "description": "The available actions for this resource.",
- "longDescription": "This type shall contain the available actions for this resource.",
+ "description": "The available actions for this Resource.",
+ "longDescription": "This type shall contain the available actions for this Resource.",
"patternProperties": {
- "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_.]+$": {
+ "^([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",
@@ -23,20 +23,26 @@
}
},
"properties": {
+ "#Certificate.Rekey": {
+ "$ref": "#/definitions/Rekey"
+ },
+ "#Certificate.Renew": {
+ "$ref": "#/definitions/Renew"
+ },
"Oem": {
"$ref": "#/definitions/OemActions",
- "description": "This property contains the available OEM specific actions for this resource.",
- "longDescription": "This property shall contain any additional OEM actions for this resource."
+ "description": "The available OEM-specific actions for this Resource.",
+ "longDescription": "This property shall contain the available OEM-specific actions for this Resource."
}
},
"type": "object"
},
"Certificate": {
"additionalProperties": false,
- "description": "The Certificate resource describes a certificate used to prove the identify of a component, account, or service.",
- "longDescription": "This resource shall be used to represent a Certificate for a Redfish implementation.",
+ "description": "The Certificate schema describes a certificate that proves the identify of a component, account, or service.",
+ "longDescription": "This Resource contains a certificate for a Redfish implementation.",
"patternProperties": {
- "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_.]+$": {
+ "^([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",
@@ -51,25 +57,25 @@
},
"properties": {
"@odata.context": {
- "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.json#/definitions/context"
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
},
"@odata.etag": {
- "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.json#/definitions/etag"
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
},
"@odata.id": {
- "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.json#/definitions/id"
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
},
"@odata.type": {
- "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.json#/definitions/type"
+ "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
},
"Actions": {
"$ref": "#/definitions/Actions",
- "description": "The available actions for this resource.",
- "longDescription": "The Actions property shall contain the available actions for this resource."
+ "description": "The available actions for this Resource.",
+ "longDescription": "This property shall contain the available actions for this Resource."
},
"CertificateString": {
"description": "The string for the certificate.",
- "longDescription": "The value of this property shall be the string of the certificate, and the format shall follow the requirements specified by the value of the CertificateType property. If the certificate contains any private keys, they shall be removed from the string on GET requests. If the private key for the certificate is not known by the service and is needed to use the certificate, the client shall provide the private key as part of the string in the POST request.",
+ "longDescription": "This property shall contain the certificate, and the format shall follow the requirements specified by the CertificateType property value. If the certificate contains any private keys, they shall be removed from the string in responses. If the service does not know the private key for the certificate and is needed to use the certificate, the client shall provide the private key as part of the string in the POST request.",
"readonly": true,
"type": [
"string",
@@ -107,10 +113,10 @@
"Issuer": {
"$ref": "#/definitions/Identifier",
"description": "The issuer of the certificate.",
- "longDescription": "The value of this property shall be an object containing information about the issuer of the certificate."
+ "longDescription": "This property shall contain an object containing information about the issuer of the certificate."
},
"KeyUsage": {
- "description": "The usage of the key contained in the certificate.",
+ "description": "The key usage extension, which defines the purpose of the public keys in this certificate.",
"items": {
"anyOf": [
{
@@ -121,7 +127,7 @@
}
]
},
- "longDescription": "This property shall contain the usage of the key contained in the certificate.",
+ "longDescription": "This property shall contain the key usage extension, which defines the purpose of the public keys in this certificate.",
"readonly": true,
"type": "array"
},
@@ -131,25 +137,25 @@
},
"Oem": {
"$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
- "description": "This is the manufacturer/provider specific extension moniker used to divide the Oem object into sections.",
- "longDescription": "The value of this string shall be of the format for the reserved word *Oem*."
+ "description": "The OEM extension property.",
+ "longDescription": "This property shall contain the OEM extensions. All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
},
"Subject": {
"$ref": "#/definitions/Identifier",
"description": "The subject of the certificate.",
- "longDescription": "The value of this property shall be an object containing information about the subject of the certificate."
+ "longDescription": "This property shall contain an object containing information about the subject of the certificate."
},
"ValidNotAfter": {
"description": "The date when the certificate is no longer valid.",
"format": "date-time",
- "longDescription": "The value of this property shall indicate the date on which the certificate validity period ends.",
+ "longDescription": "This property shall contain the date when the certificate validity period ends.",
"readonly": true,
"type": "string"
},
"ValidNotBefore": {
"description": "The date when the certificate becomes valid.",
"format": "date-time",
- "longDescription": "The value of this property shall indicate the date on which the certificate validity period begins.",
+ "longDescription": "This property shall contain the date when the certificate validity period begins.",
"readonly": true,
"type": "string"
}
@@ -169,9 +175,9 @@
"Identifier": {
"additionalProperties": false,
"description": "The identifier information about a certificate.",
- "longDescription": "This type shall contain the properties used to identify the issuer or subject of a certificate.",
+ "longDescription": "This type shall contain the properties that identifies the issuer or subject of a certificate.",
"patternProperties": {
- "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_.]+$": {
+ "^([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",
@@ -199,7 +205,7 @@
},
"Country": {
"description": "The country of the organization of the entity.",
- "longDescription": "This property shall contain the two letter ISO code for the country of the organization of the entity.",
+ "longDescription": "This property shall contain the two-letter ISO code for the country of the organization of the entity.",
"readonly": true,
"type": "string"
},
@@ -235,10 +241,10 @@
},
"OemActions": {
"additionalProperties": true,
- "description": "The available OEM specific actions for this resource.",
- "longDescription": "This type shall contain any additional OEM actions for this resource.",
+ "description": "The available OEM-specific actions for this Resource.",
+ "longDescription": "This type shall contain the available OEM-specific actions for this Resource.",
"patternProperties": {
- "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_.]+$": {
+ "^([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",
@@ -253,9 +259,188 @@
},
"properties": {},
"type": "object"
+ },
+ "Rekey": {
+ "actionResponse": {
+ "$ref": "#/definitions/RekeyResponse"
+ },
+ "additionalProperties": false,
+ "description": "This action generates a new key-pair for a certificate and produces a certificate signing request.",
+ "longDescription": "This action shall use the certificate data to generate a new key-pair for a certificate. The response shall contain a signing request that a certificate authority (CA) must sign. The Service should retain the private key that generated this request for installation of the certificate. The private key should not be part of the response. The private key should not be part of the response.",
+ "parameters": {
+ "ChallengePassword": {
+ "description": "The challenge password to apply to the certificate for revocation requests.",
+ "longDescription": "This property shall contain the challenge password to apply to the certificate for revocation requests as defined by the RFC2985 'challengePassword' attribute.",
+ "type": "string"
+ },
+ "KeyBitLength": {
+ "description": "The length of the key, in bits, if needed based on the KeyPairAlgorithm parameter value.",
+ "longDescription": "This parameter shall contain the length of the key, in bits, if needed based on the KeyPairAlgorithm parameter value.",
+ "type": "integer"
+ },
+ "KeyCurveId": {
+ "description": "The curve ID to use with the key, if needed based on the KeyPairAlgorithm parameter value.",
+ "longDescription": "This parameter shall contain the curve ID to use with the key, if needed based on the KeyPairAlgorithm parameter value. The allowable values for this parameter shall be the strings in the 'Name' field of the 'TPM_ECC_CURVE Constants' table within the 'Trusted Computing Group Algorithm Registry'.",
+ "type": "string"
+ },
+ "KeyPairAlgorithm": {
+ "description": "The type of key-pair for use with signing algorithms.",
+ "longDescription": "This parameter shall contain the type of key-pair for use with signing algorithms. The allowable values for this parameter shall be the strings in the 'Algorithm Name' field of the 'TPM_ALG_ID Constants' table within the 'Trusted Computing Group Algorithm Registry'.",
+ "type": "string"
+ }
+ },
+ "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": {
+ "target": {
+ "description": "Link to invoke action",
+ "format": "uri-reference",
+ "type": "string"
+ },
+ "title": {
+ "description": "Friendly action name",
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "versionAdded": "v1_1_0"
+ },
+ "RekeyResponse": {
+ "additionalProperties": false,
+ "description": "The response body for the Rekey action.",
+ "longDescription": "This type shall contain the properties found in the response body for the Rekey action.",
+ "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": {
+ "CSRString": {
+ "description": "The string for the certificate signing request.",
+ "longDescription": "This property shall contain the certificate signing request as a PEM-encoded string, containing structures specified by RFC2986. The private key should not be part of the string.",
+ "readonly": true,
+ "type": "string",
+ "versionAdded": "v1_1_0"
+ },
+ "Certificate": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Certificate.json#/definitions/Certificate",
+ "description": "The link to the certificate being rekeyed.",
+ "longDescription": "This property shall contain the URI of the Certificate Resource that is replaced after the certificate authority (CA) signs the certificate.",
+ "readonly": true,
+ "versionAdded": "v1_1_0"
+ }
+ },
+ "required": [
+ "Certificate",
+ "CSRString"
+ ],
+ "type": "object"
+ },
+ "Renew": {
+ "actionResponse": {
+ "$ref": "#/definitions/RenewResponse"
+ },
+ "additionalProperties": false,
+ "description": "This action generates a certificate signing request by using the existing information and key-pair of the certificate.",
+ "longDescription": "This action shall generate a certificate signing request using the existing information and key-pair of the certificate. The response shall contain a signing request that a certificate authority (CA) must sign. The Service should retain the private key that this request generates for when the certificate is installed. The private key should not be part of the response.",
+ "parameters": {
+ "ChallengePassword": {
+ "description": "The challenge password to apply to the certificate for revocation requests.",
+ "longDescription": "This property shall contain the challenge password to apply to the certificate for revocation requests as defined by the RFC2985 'challengePassword' attribute.",
+ "type": "string"
+ }
+ },
+ "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": {
+ "target": {
+ "description": "Link to invoke action",
+ "format": "uri-reference",
+ "type": "string"
+ },
+ "title": {
+ "description": "Friendly action name",
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "versionAdded": "v1_1_0"
+ },
+ "RenewResponse": {
+ "additionalProperties": false,
+ "description": "The response body for the Renew action.",
+ "longDescription": "This type shall contain the properties found in the response body for the Renew action.",
+ "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": {
+ "CSRString": {
+ "description": "The string for the certificate signing request.",
+ "longDescription": "This property shall contain the certificate signing request as a PEM-encoded string, containing structures specified by RFC2986. The private key should not be part of the string.",
+ "readonly": true,
+ "type": "string",
+ "versionAdded": "v1_1_0"
+ },
+ "Certificate": {
+ "$ref": "http://redfish.dmtf.org/schemas/v1/Certificate.json#/definitions/Certificate",
+ "description": "The link to the certificate being renewed.",
+ "longDescription": "This property shall contain the URI of the Certificate Resource that is replaced after the certificate authority (CA) signs the certificate.",
+ "readonly": true,
+ "versionAdded": "v1_1_0"
+ }
+ },
+ "required": [
+ "Certificate",
+ "CSRString"
+ ],
+ "type": "object"
}
},
"owningEntity": "DMTF",
- "release": "2018.3",
- "title": "#Certificate.v1_0_0.Certificate"
+ "release": "2019.1",
+ "title": "#Certificate.v1_1_1.Certificate"
}
\ No newline at end of file