From d56ad31f8252d8fc11ca97fc52ab94f220f4f5d5 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Wed, 22 Feb 2023 09:44:17 +0000 Subject: [PATCH 1/7] Autogenerate schemas --- .../Microsoft.ConfidentialLedger.json | 184 ---------- .../Microsoft.ConfidentialLedger.json | 180 ---------- .../Microsoft.ConfidentialLedger.json | 180 ---------- .../Microsoft.ConfidentialLedger.json | 321 ------------------ schemas/common/autogeneratedResources.json | 15 - 5 files changed, 880 deletions(-) delete mode 100644 schemas/2020-12-01-preview/Microsoft.ConfidentialLedger.json delete mode 100644 schemas/2021-05-13-preview/Microsoft.ConfidentialLedger.json delete mode 100644 schemas/2022-05-13/Microsoft.ConfidentialLedger.json delete mode 100644 schemas/2022-09-08-preview/Microsoft.ConfidentialLedger.json diff --git a/schemas/2020-12-01-preview/Microsoft.ConfidentialLedger.json b/schemas/2020-12-01-preview/Microsoft.ConfidentialLedger.json deleted file mode 100644 index 894b6a3a96..0000000000 --- a/schemas/2020-12-01-preview/Microsoft.ConfidentialLedger.json +++ /dev/null @@ -1,184 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2020-12-01-preview/Microsoft.ConfidentialLedger.json#", - "$schema": "http://json-schema.org/draft-04/schema#", - "title": "Microsoft.ConfidentialLedger", - "description": "Microsoft ConfidentialLedger Resource Types", - "resourceDefinitions": { - "ledgers": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-12-01-preview" - ] - }, - "location": { - "type": "string", - "description": "The Azure location where the Confidential Ledger is running." - }, - "name": { - "oneOf": [ - { - "type": "string", - "pattern": "^[a-zA-Z0-9]" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Name of the Confidential Ledger" - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/LedgerProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Additional Confidential Ledger properties." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Additional tags for Confidential Ledger" - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ConfidentialLedger/ledgers" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ConfidentialLedger/ledgers" - } - }, - "definitions": { - "AADBasedSecurityPrincipal": { - "type": "object", - "properties": { - "ledgerRoleName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Reader", - "Contributor", - "Administrator" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "principalId": { - "type": "string", - "description": "UUID/GUID based Principal Id of the Security Principal" - }, - "tenantId": { - "type": "string", - "description": "UUID/GUID based Tenant Id of the Security Principal" - } - }, - "description": "AAD based security principal with associated Ledger RoleName" - }, - "CertBasedSecurityPrincipal": { - "type": "object", - "properties": { - "cert": { - "type": "string", - "description": "Public key of the user cert (.pem or .cer)" - }, - "ledgerRoleName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Reader", - "Contributor", - "Administrator" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "description": "Cert based security principal with Ledger RoleName" - }, - "LedgerProperties": { - "type": "object", - "properties": { - "aadBasedSecurityPrincipals": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/AADBasedSecurityPrincipal" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Array of all AAD based Security Principals." - }, - "certBasedSecurityPrincipals": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/CertBasedSecurityPrincipal" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Array of all cert based Security Principals." - }, - "ledgerStorageAccount": { - "type": "string", - "description": "Name of the Blob Storage Account for saving ledger files" - }, - "ledgerType": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Unknown", - "Public", - "Private" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Type of Confidential Ledger." - } - }, - "description": "Additional Confidential Ledger properties." - } - } -} \ No newline at end of file diff --git a/schemas/2021-05-13-preview/Microsoft.ConfidentialLedger.json b/schemas/2021-05-13-preview/Microsoft.ConfidentialLedger.json deleted file mode 100644 index 6ebf801353..0000000000 --- a/schemas/2021-05-13-preview/Microsoft.ConfidentialLedger.json +++ /dev/null @@ -1,180 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2021-05-13-preview/Microsoft.ConfidentialLedger.json#", - "$schema": "http://json-schema.org/draft-04/schema#", - "title": "Microsoft.ConfidentialLedger", - "description": "Microsoft ConfidentialLedger Resource Types", - "resourceDefinitions": { - "ledgers": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2021-05-13-preview" - ] - }, - "location": { - "type": "string", - "description": "The Azure location where the Confidential Ledger is running." - }, - "name": { - "oneOf": [ - { - "type": "string", - "pattern": "^[a-zA-Z0-9]" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Name of the Confidential Ledger" - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/LedgerProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Additional Confidential Ledger properties." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Additional tags for Confidential Ledger" - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ConfidentialLedger/ledgers" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ConfidentialLedger/ledgers" - } - }, - "definitions": { - "AADBasedSecurityPrincipal": { - "type": "object", - "properties": { - "ledgerRoleName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Reader", - "Contributor", - "Administrator" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "principalId": { - "type": "string", - "description": "UUID/GUID based Principal Id of the Security Principal" - }, - "tenantId": { - "type": "string", - "description": "UUID/GUID based Tenant Id of the Security Principal" - } - }, - "description": "AAD based security principal with associated Ledger RoleName" - }, - "CertBasedSecurityPrincipal": { - "type": "object", - "properties": { - "cert": { - "type": "string", - "description": "Public key of the user cert (.pem or .cer)" - }, - "ledgerRoleName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Reader", - "Contributor", - "Administrator" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "description": "Cert based security principal with Ledger RoleName" - }, - "LedgerProperties": { - "type": "object", - "properties": { - "aadBasedSecurityPrincipals": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/AADBasedSecurityPrincipal" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Array of all AAD based Security Principals." - }, - "certBasedSecurityPrincipals": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/CertBasedSecurityPrincipal" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Array of all cert based Security Principals." - }, - "ledgerType": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Unknown", - "Public", - "Private" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Type of Confidential Ledger." - } - }, - "description": "Additional Confidential Ledger properties." - } - } -} \ No newline at end of file diff --git a/schemas/2022-05-13/Microsoft.ConfidentialLedger.json b/schemas/2022-05-13/Microsoft.ConfidentialLedger.json deleted file mode 100644 index 5a02bac663..0000000000 --- a/schemas/2022-05-13/Microsoft.ConfidentialLedger.json +++ /dev/null @@ -1,180 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2022-05-13/Microsoft.ConfidentialLedger.json#", - "$schema": "http://json-schema.org/draft-04/schema#", - "title": "Microsoft.ConfidentialLedger", - "description": "Microsoft ConfidentialLedger Resource Types", - "resourceDefinitions": { - "ledgers": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2022-05-13" - ] - }, - "location": { - "type": "string", - "description": "The Azure location where the Confidential Ledger is running." - }, - "name": { - "oneOf": [ - { - "type": "string", - "pattern": "^[a-zA-Z0-9]" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Name of the Confidential Ledger" - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/LedgerProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Additional Confidential Ledger properties." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Additional tags for Confidential Ledger" - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ConfidentialLedger/ledgers" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ConfidentialLedger/ledgers" - } - }, - "definitions": { - "AADBasedSecurityPrincipal": { - "type": "object", - "properties": { - "ledgerRoleName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Reader", - "Contributor", - "Administrator" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "principalId": { - "type": "string", - "description": "UUID/GUID based Principal Id of the Security Principal" - }, - "tenantId": { - "type": "string", - "description": "UUID/GUID based Tenant Id of the Security Principal" - } - }, - "description": "AAD based security principal with associated Ledger RoleName" - }, - "CertBasedSecurityPrincipal": { - "type": "object", - "properties": { - "cert": { - "type": "string", - "description": "Public key of the user cert (.pem or .cer)" - }, - "ledgerRoleName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Reader", - "Contributor", - "Administrator" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "description": "Cert based security principal with Ledger RoleName" - }, - "LedgerProperties": { - "type": "object", - "properties": { - "aadBasedSecurityPrincipals": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/AADBasedSecurityPrincipal" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Array of all AAD based Security Principals." - }, - "certBasedSecurityPrincipals": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/CertBasedSecurityPrincipal" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Array of all cert based Security Principals." - }, - "ledgerType": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Unknown", - "Public", - "Private" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Type of Confidential Ledger." - } - }, - "description": "Additional Confidential Ledger properties." - } - } -} \ No newline at end of file diff --git a/schemas/2022-09-08-preview/Microsoft.ConfidentialLedger.json b/schemas/2022-09-08-preview/Microsoft.ConfidentialLedger.json deleted file mode 100644 index 9f8b858949..0000000000 --- a/schemas/2022-09-08-preview/Microsoft.ConfidentialLedger.json +++ /dev/null @@ -1,321 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2022-09-08-preview/Microsoft.ConfidentialLedger.json#", - "$schema": "http://json-schema.org/draft-04/schema#", - "title": "Microsoft.ConfidentialLedger", - "description": "Microsoft ConfidentialLedger Resource Types", - "resourceDefinitions": { - "ledgers": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2022-09-08-preview" - ] - }, - "location": { - "type": "string", - "description": "The Azure location where the Confidential Ledger is running." - }, - "name": { - "oneOf": [ - { - "type": "string", - "pattern": "^[a-zA-Z0-9]" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Name of the Confidential Ledger" - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/LedgerProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Additional Confidential Ledger properties." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Additional tags for Confidential Ledger" - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ConfidentialLedger/ledgers" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ConfidentialLedger/ledgers" - }, - "managedCCFs": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2022-09-08-preview" - ] - }, - "location": { - "type": "string", - "description": "The geo-location where the resource lives" - }, - "name": { - "oneOf": [ - { - "type": "string", - "pattern": "^[a-zA-Z0-9]" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Name of the Managed CCF" - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ManagedCCFProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Additional Managed CCF properties." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ConfidentialLedger/managedCCFs" - ] - } - }, - "required": [ - "apiVersion", - "location", - "name", - "properties", - "type" - ], - "description": "Microsoft.ConfidentialLedger/managedCCFs" - } - }, - "definitions": { - "AADBasedSecurityPrincipal": { - "type": "object", - "properties": { - "ledgerRoleName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Reader", - "Contributor", - "Administrator" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "principalId": { - "type": "string", - "description": "UUID/GUID based Principal Id of the Security Principal" - }, - "tenantId": { - "type": "string", - "description": "UUID/GUID based Tenant Id of the Security Principal" - } - }, - "description": "AAD based security principal with associated Ledger RoleName" - }, - "CertBasedSecurityPrincipal": { - "type": "object", - "properties": { - "cert": { - "type": "string", - "description": "Public key of the user cert (.pem or .cer)" - }, - "ledgerRoleName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Reader", - "Contributor", - "Administrator" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "description": "Cert based security principal with Ledger RoleName" - }, - "DeploymentType": { - "type": "object", - "properties": { - "appSourceUri": { - "type": "string", - "description": "Source Uri containing ManagedCCF code" - }, - "languageRuntime": { - "oneOf": [ - { - "type": "string", - "enum": [ - "CPP", - "JS" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Unique name for the Managed CCF." - } - }, - "description": "Object representing DeploymentType for Managed CCF." - }, - "LedgerProperties": { - "type": "object", - "properties": { - "aadBasedSecurityPrincipals": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/AADBasedSecurityPrincipal" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Array of all AAD based Security Principals." - }, - "certBasedSecurityPrincipals": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/CertBasedSecurityPrincipal" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Array of all cert based Security Principals." - }, - "ledgerType": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Unknown", - "Public", - "Private" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Type of Confidential Ledger." - } - }, - "description": "Additional Confidential Ledger properties." - }, - "ManagedCCFProperties": { - "type": "object", - "properties": { - "deploymentType": { - "oneOf": [ - { - "$ref": "#/definitions/DeploymentType" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Object representing DeploymentType for Managed CCF." - }, - "memberIdentityCertificates": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/MemberIdentityCertificate" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of member identity certificates for Managed CCF" - } - }, - "description": "Additional Managed CCF properties." - }, - "MemberIdentityCertificate": { - "type": "object", - "properties": { - "certificate": { - "type": "string", - "description": "Member Identity Certificate" - }, - "encryptionkey": { - "type": "string", - "description": "Member Identity Certificate Encryption Key" - }, - "tags": { - "type": "object", - "properties": {} - } - }, - "description": "Object representing MemberIdentityCertificate for Managed CCF." - } - } -} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index 8d8d1b8323..b5625675e5 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -5935,21 +5935,6 @@ { "$ref": "https://schema.management.azure.com/schemas/2022-11-01/Microsoft.Compute.json#/resourceDefinitions/virtualMachineScaleSets_virtualMachines_runCommands" }, - { - "$ref": "https://schema.management.azure.com/schemas/2020-12-01-preview/Microsoft.ConfidentialLedger.json#/resourceDefinitions/ledgers" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2021-05-13-preview/Microsoft.ConfidentialLedger.json#/resourceDefinitions/ledgers" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2022-05-13/Microsoft.ConfidentialLedger.json#/resourceDefinitions/ledgers" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2022-09-08-preview/Microsoft.ConfidentialLedger.json#/resourceDefinitions/ledgers" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2022-09-08-preview/Microsoft.ConfidentialLedger.json#/resourceDefinitions/managedCCFs" - }, { "$ref": "https://schema.management.azure.com/schemas/2020-03-01/Microsoft.Confluent.json#/resourceDefinitions/organizations" }, From e586740906f46a07b80983ff2acb82b9188dfb67 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Wed, 22 Feb 2023 09:44:49 +0000 Subject: [PATCH 2/7] Update resource list --- generator/resources.json | 9 --------- 1 file changed, 9 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index 3ffbaf94d8..c1b79d8a42 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -2735,15 +2735,6 @@ "2022-08-01", "2022-11-01" ], - "Microsoft.ConfidentialLedger/ledgers": [ - "2020-12-01-preview", - "2021-05-13-preview", - "2022-05-13", - "2022-09-08-preview" - ], - "Microsoft.ConfidentialLedger/managedCCFs": [ - "2022-09-08-preview" - ], "Microsoft.Confluent/agreements": [ "2020-03-01", "2020-03-01-preview", From e47f4dedf68d68316f240d75d4af82822af23701 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Wed, 22 Feb 2023 15:36:26 +0000 Subject: [PATCH 3/7] Autogenerate schemas --- .../Microsoft.Cache.Enterprise.json | 759 ++++++++++++++++++ schemas/common/autogeneratedResources.json | 9 + 2 files changed, 768 insertions(+) create mode 100644 schemas/2023-03-01-preview/Microsoft.Cache.Enterprise.json diff --git a/schemas/2023-03-01-preview/Microsoft.Cache.Enterprise.json b/schemas/2023-03-01-preview/Microsoft.Cache.Enterprise.json new file mode 100644 index 0000000000..3457bf34f9 --- /dev/null +++ b/schemas/2023-03-01-preview/Microsoft.Cache.Enterprise.json @@ -0,0 +1,759 @@ +{ + "id": "https://schema.management.azure.com/schemas/2023-03-01-preview/Microsoft.Cache.Enterprise.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.Cache", + "description": "Microsoft Cache Resource Types", + "resourceDefinitions": { + "redisEnterprise": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-03-01-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Managed service identity (system assigned and/or user assigned identities)" + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "The name of the RedisEnterprise cluster." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ClusterProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of RedisEnterprise clusters, as opposed to general resource properties like location, tags" + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/redisEnterprise_databases_childResource" + }, + { + "$ref": "#/definitions/redisEnterprise_privateEndpointConnections_childResource" + } + ] + } + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/Sku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "SKU parameters supplied to the create RedisEnterprise operation." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Cache/redisEnterprise" + ] + }, + "zones": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Availability Zones where this cluster will be deployed." + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "sku", + "type" + ], + "description": "Microsoft.Cache/redisEnterprise" + }, + "redisEnterprise_databases": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-03-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the database." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DatabaseProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of RedisEnterprise databases, as opposed to general resource properties like location, tags" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Cache/redisEnterprise/databases" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Cache/redisEnterprise/databases" + }, + "redisEnterprise_privateEndpointConnections": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-03-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the private endpoint connection associated with the Azure resource" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Cache/redisEnterprise/privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Cache/redisEnterprise/privateEndpointConnections" + } + }, + "definitions": { + "ClusterProperties": { + "type": "object", + "properties": { + "encryption": { + "oneOf": [ + { + "$ref": "#/definitions/ClusterPropertiesEncryption" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Encryption-at-rest configuration for the cluster." + }, + "minimumTlsVersion": { + "oneOf": [ + { + "type": "string", + "enum": [ + "1.0", + "1.1", + "1.2" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The minimum TLS version for the cluster to support, e.g. '1.2'." + } + }, + "description": "Properties of RedisEnterprise clusters, as opposed to general resource properties like location, tags" + }, + "ClusterPropertiesEncryption": { + "type": "object", + "properties": { + "customerManagedKeyEncryption": { + "oneOf": [ + { + "$ref": "#/definitions/ClusterPropertiesEncryptionCustomerManagedKeyEncryption" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "All Customer-managed key encryption properties for the resource. Set this to an empty object to use Microsoft-managed key encryption." + } + }, + "description": "Encryption-at-rest configuration for the cluster." + }, + "ClusterPropertiesEncryptionCustomerManagedKeyEncryption": { + "type": "object", + "properties": { + "keyEncryptionKeyIdentity": { + "oneOf": [ + { + "$ref": "#/definitions/ClusterPropertiesEncryptionCustomerManagedKeyEncryptionKeyEncryptionKeyIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "All identity configuration for Customer-managed key settings defining which identity should be used to auth to Key Vault." + }, + "keyEncryptionKeyUrl": { + "type": "string", + "description": "Key encryption key Url, versioned or unversioned. Ex: https://contosovault.vault.azure.net/keys/contosokek/562a4bb76b524a1493a6afe8e536ee78 or https://contosovault.vault.azure.net/keys/contosokek." + } + }, + "description": "All Customer-managed key encryption properties for the resource. Set this to an empty object to use Microsoft-managed key encryption." + }, + "ClusterPropertiesEncryptionCustomerManagedKeyEncryptionKeyEncryptionKeyIdentity": { + "type": "object", + "properties": { + "identityType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "systemAssignedIdentity", + "userAssignedIdentity" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Only userAssignedIdentity is supported in this API version; other types may be supported in the future." + }, + "userAssignedIdentityResourceId": { + "type": "string", + "description": "User assigned identity to use for accessing key encryption key Url. Ex: /subscriptions//resourceGroups//providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId." + } + }, + "description": "All identity configuration for Customer-managed key settings defining which identity should be used to auth to Key Vault." + }, + "DatabaseProperties": { + "type": "object", + "properties": { + "clientProtocol": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Encrypted", + "Plaintext" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies whether redis clients can connect using TLS-encrypted or plaintext redis protocols. Default is TLS-encrypted." + }, + "clusteringPolicy": { + "oneOf": [ + { + "type": "string", + "enum": [ + "EnterpriseCluster", + "OSSCluster" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Clustering policy - default is OSSCluster. Specified at create time." + }, + "evictionPolicy": { + "oneOf": [ + { + "type": "string", + "enum": [ + "AllKeysLFU", + "AllKeysLRU", + "AllKeysRandom", + "VolatileLRU", + "VolatileLFU", + "VolatileTTL", + "VolatileRandom", + "NoEviction" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Redis eviction policy - default is VolatileLRU." + }, + "geoReplication": { + "oneOf": [ + { + "$ref": "#/definitions/DatabasePropertiesGeoReplication" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Optional set of properties to configure geo replication for this database." + }, + "modules": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Module" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Optional set of redis modules to enable in this database - modules can only be added at creation time." + }, + "persistence": { + "oneOf": [ + { + "$ref": "#/definitions/Persistence" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Persistence-related configuration for the RedisEnterprise database" + }, + "port": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "TCP port of the database endpoint. Specified at create time. Defaults to an available port." + } + }, + "description": "Properties of RedisEnterprise databases, as opposed to general resource properties like location, tags" + }, + "DatabasePropertiesGeoReplication": { + "type": "object", + "properties": { + "groupNickname": { + "type": "string", + "description": "Name for the group of linked database resources" + }, + "linkedDatabases": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/LinkedDatabase" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of database resources to link with this database" + } + }, + "description": "Optional set of properties to configure geo replication for this database." + }, + "LinkedDatabase": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID of a database resource to link with this database." + } + }, + "description": "Specifies details of a linked database resource." + }, + "ManagedServiceIdentity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "systemAssignedIdentity", + "userAssignedIdentity" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "userAssignedIdentities": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentity" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests." + } + }, + "required": [ + "type" + ], + "description": "Managed service identity (system assigned and/or user assigned identities)" + }, + "Module": { + "type": "object", + "properties": { + "args": { + "type": "string", + "description": "Configuration options for the module, e.g. 'ERROR_RATE 0.01 INITIAL_SIZE 400'." + }, + "name": { + "type": "string", + "description": "The name of the module, e.g. 'RedisBloom', 'RediSearch', 'RedisTimeSeries'" + } + }, + "required": [ + "name" + ], + "description": "Specifies configuration of a redis module" + }, + "Persistence": { + "type": "object", + "properties": { + "aofEnabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sets whether AOF is enabled." + }, + "aofFrequency": { + "oneOf": [ + { + "type": "string", + "enum": [ + "1s", + "always" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sets the frequency at which data is written to disk." + }, + "rdbEnabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sets whether RDB is enabled." + }, + "rdbFrequency": { + "oneOf": [ + { + "type": "string", + "enum": [ + "1h", + "6h", + "12h" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sets the frequency at which a snapshot of the database is created." + } + }, + "description": "Persistence-related configuration for the RedisEnterprise database" + }, + "PrivateEndpoint": { + "type": "object", + "properties": {}, + "description": "The Private Endpoint resource." + }, + "PrivateEndpointConnectionProperties": { + "type": "object", + "properties": { + "privateEndpoint": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpoint" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Private Endpoint resource." + }, + "privateLinkServiceConnectionState": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateLinkServiceConnectionState" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The provisioning state of the private endpoint connection resource." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateLinkServiceConnectionState": { + "type": "object", + "properties": { + "actionsRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Pending", + "Approved", + "Rejected" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "redisEnterprise_databases_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-03-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the database." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DatabaseProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of RedisEnterprise databases, as opposed to general resource properties like location, tags" + }, + "type": { + "type": "string", + "enum": [ + "databases" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Cache/redisEnterprise/databases" + }, + "redisEnterprise_privateEndpointConnections_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-03-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the private endpoint connection associated with the Azure resource" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "type": { + "type": "string", + "enum": [ + "privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Cache/redisEnterprise/privateEndpointConnections" + }, + "Sku": { + "type": "object", + "properties": { + "capacity": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The size of the RedisEnterprise cluster. Defaults to 2 or 3 depending on SKU. Valid values are (2, 4, 6, ...) for Enterprise SKUs and (3, 9, 15, ...) for Flash SKUs." + }, + "name": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enterprise_E10", + "Enterprise_E20", + "Enterprise_E50", + "Enterprise_E100", + "EnterpriseFlash_F300", + "EnterpriseFlash_F700", + "EnterpriseFlash_F1500" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of RedisEnterprise cluster to deploy. Possible values: (Enterprise_E10, EnterpriseFlash_F300 etc.)." + } + }, + "required": [ + "name" + ], + "description": "SKU parameters supplied to the create RedisEnterprise operation." + }, + "UserAssignedIdentity": { + "type": "object", + "properties": {}, + "description": "User assigned identity properties" + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index b5625675e5..ab65f28be0 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -4300,6 +4300,15 @@ { "$ref": "https://schema.management.azure.com/schemas/2022-11-01-preview/Microsoft.Cache.Enterprise.json#/resourceDefinitions/redisEnterprise_privateEndpointConnections" }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-03-01-preview/Microsoft.Cache.Enterprise.json#/resourceDefinitions/redisEnterprise" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-03-01-preview/Microsoft.Cache.Enterprise.json#/resourceDefinitions/redisEnterprise_databases" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-03-01-preview/Microsoft.Cache.Enterprise.json#/resourceDefinitions/redisEnterprise_privateEndpointConnections" + }, { "$ref": "https://schema.management.azure.com/schemas/2015-08-01/Microsoft.Cache.json#/resourceDefinitions/Redis" }, From 00c191a0f7dd929c38c7e4499186e62bc3c02218 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Wed, 22 Feb 2023 15:36:55 +0000 Subject: [PATCH 4/7] Update resource list --- generator/resources.json | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index c1b79d8a42..6ff3d64ae2 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -2088,7 +2088,8 @@ "2021-03-01", "2021-08-01", "2022-01-01", - "2022-11-01-preview" + "2022-11-01-preview", + "2023-03-01-preview" ], "Microsoft.Cache/redisEnterprise/databases": [ "2020-10-01-preview", @@ -2096,7 +2097,8 @@ "2021-03-01", "2021-08-01", "2022-01-01", - "2022-11-01-preview" + "2022-11-01-preview", + "2023-03-01-preview" ], "Microsoft.Cache/redisEnterprise/privateEndpointConnections": [ "2020-10-01-preview", @@ -2104,7 +2106,8 @@ "2021-03-01", "2021-08-01", "2022-01-01", - "2022-11-01-preview" + "2022-11-01-preview", + "2023-03-01-preview" ], "Microsoft.Capacity/autoQuotaIncrease": [ "2019-07-19-preview" From 70759b9fb822a7917a890ac6549bd1baa97131e9 Mon Sep 17 00:00:00 2001 From: Jorge Cotillo Date: Fri, 24 Feb 2023 16:08:22 -0800 Subject: [PATCH 5/7] Revert "Autogenerate schemas" This reverts commit d56ad31f8252d8fc11ca97fc52ab94f220f4f5d5. --- .../Microsoft.ConfidentialLedger.json | 184 ++++++++++ .../Microsoft.ConfidentialLedger.json | 180 ++++++++++ .../Microsoft.ConfidentialLedger.json | 180 ++++++++++ .../Microsoft.ConfidentialLedger.json | 321 ++++++++++++++++++ schemas/common/autogeneratedResources.json | 15 + 5 files changed, 880 insertions(+) create mode 100644 schemas/2020-12-01-preview/Microsoft.ConfidentialLedger.json create mode 100644 schemas/2021-05-13-preview/Microsoft.ConfidentialLedger.json create mode 100644 schemas/2022-05-13/Microsoft.ConfidentialLedger.json create mode 100644 schemas/2022-09-08-preview/Microsoft.ConfidentialLedger.json diff --git a/schemas/2020-12-01-preview/Microsoft.ConfidentialLedger.json b/schemas/2020-12-01-preview/Microsoft.ConfidentialLedger.json new file mode 100644 index 0000000000..894b6a3a96 --- /dev/null +++ b/schemas/2020-12-01-preview/Microsoft.ConfidentialLedger.json @@ -0,0 +1,184 @@ +{ + "id": "https://schema.management.azure.com/schemas/2020-12-01-preview/Microsoft.ConfidentialLedger.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.ConfidentialLedger", + "description": "Microsoft ConfidentialLedger Resource Types", + "resourceDefinitions": { + "ledgers": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-12-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The Azure location where the Confidential Ledger is running." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Name of the Confidential Ledger" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/LedgerProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional Confidential Ledger properties." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional tags for Confidential Ledger" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ConfidentialLedger/ledgers" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ConfidentialLedger/ledgers" + } + }, + "definitions": { + "AADBasedSecurityPrincipal": { + "type": "object", + "properties": { + "ledgerRoleName": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Reader", + "Contributor", + "Administrator" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "principalId": { + "type": "string", + "description": "UUID/GUID based Principal Id of the Security Principal" + }, + "tenantId": { + "type": "string", + "description": "UUID/GUID based Tenant Id of the Security Principal" + } + }, + "description": "AAD based security principal with associated Ledger RoleName" + }, + "CertBasedSecurityPrincipal": { + "type": "object", + "properties": { + "cert": { + "type": "string", + "description": "Public key of the user cert (.pem or .cer)" + }, + "ledgerRoleName": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Reader", + "Contributor", + "Administrator" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "description": "Cert based security principal with Ledger RoleName" + }, + "LedgerProperties": { + "type": "object", + "properties": { + "aadBasedSecurityPrincipals": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/AADBasedSecurityPrincipal" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Array of all AAD based Security Principals." + }, + "certBasedSecurityPrincipals": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/CertBasedSecurityPrincipal" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Array of all cert based Security Principals." + }, + "ledgerStorageAccount": { + "type": "string", + "description": "Name of the Blob Storage Account for saving ledger files" + }, + "ledgerType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Unknown", + "Public", + "Private" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of Confidential Ledger." + } + }, + "description": "Additional Confidential Ledger properties." + } + } +} \ No newline at end of file diff --git a/schemas/2021-05-13-preview/Microsoft.ConfidentialLedger.json b/schemas/2021-05-13-preview/Microsoft.ConfidentialLedger.json new file mode 100644 index 0000000000..6ebf801353 --- /dev/null +++ b/schemas/2021-05-13-preview/Microsoft.ConfidentialLedger.json @@ -0,0 +1,180 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-05-13-preview/Microsoft.ConfidentialLedger.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.ConfidentialLedger", + "description": "Microsoft ConfidentialLedger Resource Types", + "resourceDefinitions": { + "ledgers": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-05-13-preview" + ] + }, + "location": { + "type": "string", + "description": "The Azure location where the Confidential Ledger is running." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Name of the Confidential Ledger" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/LedgerProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional Confidential Ledger properties." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional tags for Confidential Ledger" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ConfidentialLedger/ledgers" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ConfidentialLedger/ledgers" + } + }, + "definitions": { + "AADBasedSecurityPrincipal": { + "type": "object", + "properties": { + "ledgerRoleName": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Reader", + "Contributor", + "Administrator" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "principalId": { + "type": "string", + "description": "UUID/GUID based Principal Id of the Security Principal" + }, + "tenantId": { + "type": "string", + "description": "UUID/GUID based Tenant Id of the Security Principal" + } + }, + "description": "AAD based security principal with associated Ledger RoleName" + }, + "CertBasedSecurityPrincipal": { + "type": "object", + "properties": { + "cert": { + "type": "string", + "description": "Public key of the user cert (.pem or .cer)" + }, + "ledgerRoleName": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Reader", + "Contributor", + "Administrator" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "description": "Cert based security principal with Ledger RoleName" + }, + "LedgerProperties": { + "type": "object", + "properties": { + "aadBasedSecurityPrincipals": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/AADBasedSecurityPrincipal" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Array of all AAD based Security Principals." + }, + "certBasedSecurityPrincipals": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/CertBasedSecurityPrincipal" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Array of all cert based Security Principals." + }, + "ledgerType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Unknown", + "Public", + "Private" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of Confidential Ledger." + } + }, + "description": "Additional Confidential Ledger properties." + } + } +} \ No newline at end of file diff --git a/schemas/2022-05-13/Microsoft.ConfidentialLedger.json b/schemas/2022-05-13/Microsoft.ConfidentialLedger.json new file mode 100644 index 0000000000..5a02bac663 --- /dev/null +++ b/schemas/2022-05-13/Microsoft.ConfidentialLedger.json @@ -0,0 +1,180 @@ +{ + "id": "https://schema.management.azure.com/schemas/2022-05-13/Microsoft.ConfidentialLedger.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.ConfidentialLedger", + "description": "Microsoft ConfidentialLedger Resource Types", + "resourceDefinitions": { + "ledgers": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-05-13" + ] + }, + "location": { + "type": "string", + "description": "The Azure location where the Confidential Ledger is running." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Name of the Confidential Ledger" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/LedgerProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional Confidential Ledger properties." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional tags for Confidential Ledger" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ConfidentialLedger/ledgers" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ConfidentialLedger/ledgers" + } + }, + "definitions": { + "AADBasedSecurityPrincipal": { + "type": "object", + "properties": { + "ledgerRoleName": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Reader", + "Contributor", + "Administrator" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "principalId": { + "type": "string", + "description": "UUID/GUID based Principal Id of the Security Principal" + }, + "tenantId": { + "type": "string", + "description": "UUID/GUID based Tenant Id of the Security Principal" + } + }, + "description": "AAD based security principal with associated Ledger RoleName" + }, + "CertBasedSecurityPrincipal": { + "type": "object", + "properties": { + "cert": { + "type": "string", + "description": "Public key of the user cert (.pem or .cer)" + }, + "ledgerRoleName": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Reader", + "Contributor", + "Administrator" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "description": "Cert based security principal with Ledger RoleName" + }, + "LedgerProperties": { + "type": "object", + "properties": { + "aadBasedSecurityPrincipals": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/AADBasedSecurityPrincipal" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Array of all AAD based Security Principals." + }, + "certBasedSecurityPrincipals": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/CertBasedSecurityPrincipal" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Array of all cert based Security Principals." + }, + "ledgerType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Unknown", + "Public", + "Private" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of Confidential Ledger." + } + }, + "description": "Additional Confidential Ledger properties." + } + } +} \ No newline at end of file diff --git a/schemas/2022-09-08-preview/Microsoft.ConfidentialLedger.json b/schemas/2022-09-08-preview/Microsoft.ConfidentialLedger.json new file mode 100644 index 0000000000..9f8b858949 --- /dev/null +++ b/schemas/2022-09-08-preview/Microsoft.ConfidentialLedger.json @@ -0,0 +1,321 @@ +{ + "id": "https://schema.management.azure.com/schemas/2022-09-08-preview/Microsoft.ConfidentialLedger.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.ConfidentialLedger", + "description": "Microsoft ConfidentialLedger Resource Types", + "resourceDefinitions": { + "ledgers": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-09-08-preview" + ] + }, + "location": { + "type": "string", + "description": "The Azure location where the Confidential Ledger is running." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Name of the Confidential Ledger" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/LedgerProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional Confidential Ledger properties." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional tags for Confidential Ledger" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ConfidentialLedger/ledgers" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ConfidentialLedger/ledgers" + }, + "managedCCFs": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-09-08-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Name of the Managed CCF" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedCCFProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional Managed CCF properties." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ConfidentialLedger/managedCCFs" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.ConfidentialLedger/managedCCFs" + } + }, + "definitions": { + "AADBasedSecurityPrincipal": { + "type": "object", + "properties": { + "ledgerRoleName": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Reader", + "Contributor", + "Administrator" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "principalId": { + "type": "string", + "description": "UUID/GUID based Principal Id of the Security Principal" + }, + "tenantId": { + "type": "string", + "description": "UUID/GUID based Tenant Id of the Security Principal" + } + }, + "description": "AAD based security principal with associated Ledger RoleName" + }, + "CertBasedSecurityPrincipal": { + "type": "object", + "properties": { + "cert": { + "type": "string", + "description": "Public key of the user cert (.pem or .cer)" + }, + "ledgerRoleName": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Reader", + "Contributor", + "Administrator" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "description": "Cert based security principal with Ledger RoleName" + }, + "DeploymentType": { + "type": "object", + "properties": { + "appSourceUri": { + "type": "string", + "description": "Source Uri containing ManagedCCF code" + }, + "languageRuntime": { + "oneOf": [ + { + "type": "string", + "enum": [ + "CPP", + "JS" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Unique name for the Managed CCF." + } + }, + "description": "Object representing DeploymentType for Managed CCF." + }, + "LedgerProperties": { + "type": "object", + "properties": { + "aadBasedSecurityPrincipals": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/AADBasedSecurityPrincipal" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Array of all AAD based Security Principals." + }, + "certBasedSecurityPrincipals": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/CertBasedSecurityPrincipal" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Array of all cert based Security Principals." + }, + "ledgerType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Unknown", + "Public", + "Private" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of Confidential Ledger." + } + }, + "description": "Additional Confidential Ledger properties." + }, + "ManagedCCFProperties": { + "type": "object", + "properties": { + "deploymentType": { + "oneOf": [ + { + "$ref": "#/definitions/DeploymentType" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Object representing DeploymentType for Managed CCF." + }, + "memberIdentityCertificates": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/MemberIdentityCertificate" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of member identity certificates for Managed CCF" + } + }, + "description": "Additional Managed CCF properties." + }, + "MemberIdentityCertificate": { + "type": "object", + "properties": { + "certificate": { + "type": "string", + "description": "Member Identity Certificate" + }, + "encryptionkey": { + "type": "string", + "description": "Member Identity Certificate Encryption Key" + }, + "tags": { + "type": "object", + "properties": {} + } + }, + "description": "Object representing MemberIdentityCertificate for Managed CCF." + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index ab65f28be0..4e1b9023e9 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -5944,6 +5944,21 @@ { "$ref": "https://schema.management.azure.com/schemas/2022-11-01/Microsoft.Compute.json#/resourceDefinitions/virtualMachineScaleSets_virtualMachines_runCommands" }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-12-01-preview/Microsoft.ConfidentialLedger.json#/resourceDefinitions/ledgers" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-05-13-preview/Microsoft.ConfidentialLedger.json#/resourceDefinitions/ledgers" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-05-13/Microsoft.ConfidentialLedger.json#/resourceDefinitions/ledgers" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-09-08-preview/Microsoft.ConfidentialLedger.json#/resourceDefinitions/ledgers" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-09-08-preview/Microsoft.ConfidentialLedger.json#/resourceDefinitions/managedCCFs" + }, { "$ref": "https://schema.management.azure.com/schemas/2020-03-01/Microsoft.Confluent.json#/resourceDefinitions/organizations" }, From cfcbc591bf3991765aca9667be1648b72f9c7141 Mon Sep 17 00:00:00 2001 From: Jorge Cotillo Date: Fri, 24 Feb 2023 16:08:53 -0800 Subject: [PATCH 6/7] Revert "Update resource list" This reverts commit e586740906f46a07b80983ff2acb82b9188dfb67. --- generator/resources.json | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/generator/resources.json b/generator/resources.json index 6ff3d64ae2..ef6c02c255 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -2738,6 +2738,15 @@ "2022-08-01", "2022-11-01" ], + "Microsoft.ConfidentialLedger/ledgers": [ + "2020-12-01-preview", + "2021-05-13-preview", + "2022-05-13", + "2022-09-08-preview" + ], + "Microsoft.ConfidentialLedger/managedCCFs": [ + "2022-09-08-preview" + ], "Microsoft.Confluent/agreements": [ "2020-03-01", "2020-03-01-preview", From 95d97a86dafa3ccf504cda5484a80be131e24b88 Mon Sep 17 00:00:00 2001 From: Jorge Cotillo Date: Fri, 24 Feb 2023 16:12:06 -0800 Subject: [PATCH 7/7] disable temporally Microsoft.ConfidentialLedger --- generator/autogenlist.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/generator/autogenlist.ts b/generator/autogenlist.ts index 80e4a668cb..4623484f20 100644 --- a/generator/autogenlist.ts +++ b/generator/autogenlist.ts @@ -99,6 +99,12 @@ const disabledProviders: AutoGenConfig[] = [ basePath: 'operationalinsights/resource-manager', namespace: 'Microsoft.OperationalInsights', disabledForAutogen: true, + }, + { + // Disabled temporally due to invalid tags failure + basePath: 'confidentialLedger/resource-manager', + namespace: 'Microsoft.ConfidentialLedger', + disabledForAutogen: true } ];