From e38e48fb221c8865e8e35f43881fa66507f57945 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Sat, 19 Feb 2022 10:39:07 +0000 Subject: [PATCH 01/29] Autogenerate schemas --- .../Microsoft.MobileNetwork.json | 2698 +++++++++++++++++ schemas/common/autogeneratedResources.json | 30 + 2 files changed, 2728 insertions(+) create mode 100644 schemas/2022-01-01-preview/Microsoft.MobileNetwork.json diff --git a/schemas/2022-01-01-preview/Microsoft.MobileNetwork.json b/schemas/2022-01-01-preview/Microsoft.MobileNetwork.json new file mode 100644 index 0000000000..3b39df1fd6 --- /dev/null +++ b/schemas/2022-01-01-preview/Microsoft.MobileNetwork.json @@ -0,0 +1,2698 @@ +{ + "id": "https://schema.management.azure.com/schemas/2022-01-01-preview/Microsoft.MobileNetwork.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.MobileNetwork", + "description": "Microsoft MobileNetwork Resource Types", + "resourceDefinitions": { + "mobileNetworks": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]*$", + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the mobile network." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MobileNetworkPropertiesFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Mobile network properties." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/mobileNetworks_dataNetworks_childResource" + }, + { + "$ref": "#/definitions/mobileNetworks_sites_childResource" + }, + { + "$ref": "#/definitions/mobileNetworks_services_childResource" + }, + { + "$ref": "#/definitions/mobileNetworks_simPolicies_childResource" + }, + { + "$ref": "#/definitions/mobileNetworks_slices_childResource" + } + ] + } + }, + "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.MobileNetwork/mobileNetworks" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.MobileNetwork/mobileNetworks" + }, + "mobileNetworks_dataNetworks": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]([a-zA-Z0-9-]*[a-zA-Z0-9])*(\\.[a-zA-Z0-9]([a-zA-Z0-9-]*[a-zA-Z0-9])*)*$", + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the mobile network dataNetwork." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DataNetworkPropertiesFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Data network 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.MobileNetwork/mobileNetworks/dataNetworks" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.MobileNetwork/mobileNetworks/dataNetworks" + }, + "mobileNetworks_services": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^(?!(default|requested|service)$)[a-zA-Z0-9][a-zA-Z0-9_-]*$", + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the service. You must not use any of the following reserved strings - `default`, `requested` or `service`" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ServicePropertiesFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Service 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.MobileNetwork/mobileNetworks/services" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.MobileNetwork/mobileNetworks/services" + }, + "mobileNetworks_simPolicies": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]*$", + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the SIM policy." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SimPolicyPropertiesFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "SimPolicy 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.MobileNetwork/mobileNetworks/simPolicies" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.MobileNetwork/mobileNetworks/simPolicies" + }, + "mobileNetworks_sites": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]*$", + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the mobile network site." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SitePropertiesFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Site 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.MobileNetwork/mobileNetworks/sites" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.MobileNetwork/mobileNetworks/sites" + }, + "mobileNetworks_slices": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]*$", + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the mobile network slice." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SlicePropertiesFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Network slice 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.MobileNetwork/mobileNetworks/slices" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.MobileNetwork/mobileNetworks/slices" + }, + "packetCoreControlPlanes": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]*$", + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the packet core control plane." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PacketCoreControlPlanePropertiesFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "PacketCoreControlPlane properties." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/packetCoreControlPlanes_packetCoreDataPlanes_childResource" + } + ] + } + }, + "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.MobileNetwork/packetCoreControlPlanes" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.MobileNetwork/packetCoreControlPlanes" + }, + "packetCoreControlPlanes_packetCoreDataPlanes": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]*$", + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the packet core data plane." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PacketCoreDataPlanePropertiesFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "PacketCoreDataPlane properties." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/packetCoreControlPlanes_packetCoreDataPlanes_attachedDataNetworks_childResource" + } + ] + } + }, + "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.MobileNetwork/packetCoreControlPlanes/packetCoreDataPlanes" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.MobileNetwork/packetCoreControlPlanes/packetCoreDataPlanes" + }, + "packetCoreControlPlanes_packetCoreDataPlanes_attachedDataNetworks": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]([a-zA-Z0-9-]*[a-zA-Z0-9])*(\\.[a-zA-Z0-9]([a-zA-Z0-9-]*[a-zA-Z0-9])*)*$", + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the attached data network." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/AttachedDataNetworkPropertiesFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Data network 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.MobileNetwork/packetCoreControlPlanes/packetCoreDataPlanes/attachedDataNetworks" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.MobileNetwork/packetCoreControlPlanes/packetCoreDataPlanes/attachedDataNetworks" + }, + "sims": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]*$", + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the SIM." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SimPropertiesFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sim 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.MobileNetwork/sims" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.MobileNetwork/sims" + } + }, + "definitions": { + "Ambr": { + "type": "object", + "properties": { + "downlink": { + "oneOf": [ + { + "type": "string", + "pattern": "^\\d+(\\.\\d+)? (bps|Kbps|Mbps|Gbps|Tbps)$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Bit rate." + }, + "uplink": { + "oneOf": [ + { + "type": "string", + "pattern": "^\\d+(\\.\\d+)? (bps|Kbps|Mbps|Gbps|Tbps)$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Bit rate." + } + }, + "required": [ + "downlink", + "uplink" + ], + "description": "Aggregate Maximum Bit Rate." + }, + "AttachedDataNetworkPropertiesFormat": { + "type": "object", + "properties": { + "naptConfiguration": { + "oneOf": [ + { + "$ref": "#/definitions/NaptConfiguration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Network Address and Port Translation settings to use for the attached data network." + }, + "userEquipmentAddressPoolPrefix": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The user equipment address pool prefixes for the attached data network that are dynamically assigned by the core to UEs when they set up a PDU session.\nAt least one of userEquipmentAddressPoolPrefix and userEquipmentStaticAddressPoolPrefix must be defined. If both are defined then they must be the same size." + }, + "userEquipmentStaticAddressPoolPrefix": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The user equipment address pool prefixes for the attached data network that are statically assigned by the core to UEs when they set up a PDU session.\nThe mapping of static IP to sim is configured in staticIpConfiguration on the sim resource.\nAt least one of userEquipmentAddressPoolPrefix and userEquipmentStaticAddressPoolPrefix must be defined. If both are defined then they must be the same size." + }, + "userPlaneDataInterface": { + "oneOf": [ + { + "$ref": "#/definitions/InterfaceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Interface properties" + } + }, + "required": [ + "userPlaneDataInterface" + ], + "description": "Data network properties." + }, + "AttachedDataNetworkResourceId": { + "type": "object", + "properties": { + "id": { + "oneOf": [ + { + "type": "string", + "pattern": "^/[sS][uU][bB][sS][cC][rR][iI][pP][tT][iI][oO][nN][sS]/[^/?#]+/[rR][eE][sS][oO][uU][rR][cC][eE][gG][rR][oO][uU][pP][sS]/[^/?#]+/[pP][rR][oO][vV][iI][dD][eE][rR][sS]/[mM][iI][cC][rR][oO][sS][oO][fF][tT]\\.[mM][oO][bB][iI][lL][eE][nN][eE][tT][wW][oO][rR][kK]/[pP][aA][cC][kK][eE][tT][cC][oO][rR][eE][cC][oO][nN][tT][rR][oO][lL][pP][lL][aA][nN][eE][sS]/[^/?#]+/[pP][aA][cC][kK][eE][tT][cC][oO][rR][eE][dD][aA][tT][aA][pP][lL][aA][nN][eE][sS]/[^/?#]+/[aA][tT][tT][aA][cC][hH][eE][dD][dD][aA][tT][aA][nN][eE][tT][wW][oO][rR][kK][sS]/[^/?#]+$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Attached Data Network resource ID." + } + }, + "required": [ + "id" + ], + "description": "Reference to an Attached Data Network resource." + }, + "CustomLocationResourceId": { + "type": "object", + "properties": { + "id": { + "oneOf": [ + { + "type": "string", + "pattern": "^/[sS][uU][bB][sS][cC][rR][iI][pP][tT][iI][oO][nN][sS]/[^/?#]+/[rR][eE][sS][oO][uU][rR][cC][eE][gG][rR][oO][uU][pP][sS]/[^/?#]+/[pP][rR][oO][vV][iI][dD][eE][rR][sS]/[mM][iI][cC][rR][oO][sS][oO][fF][tT]\\.[eE][xX][tT][eE][nN][dD][eE][dD][lL][oO][cC][aA][tT][iI][oO][nN]/[cC][uU][sS][tT][oO][mM][lL][oO][cC][aA][tT][iI][oO][nN][sS]/[^/?#]+$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Azure ARC custom location resource ID." + } + }, + "required": [ + "id" + ], + "description": "Reference to an Azure ARC custom location resource." + }, + "DataNetworkConfiguration": { + "type": "object", + "properties": { + "5qi": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 127 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "5G QoS Identifier priority level." + }, + "additionalAllowedSessionTypes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "IPv4", + "IPv6" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Allowed session types in addition to the default session type. Must not duplicate the default session type." + }, + "allocationAndRetentionPriorityLevel": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 15 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "ARP priority level." + }, + "allowedServices": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceResourceId" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of Services that can be used as part of this Sim Policy. The list must not contain duplicate items and must contain at least one item." + }, + "dataNetwork": { + "oneOf": [ + { + "$ref": "#/definitions/DataNetworkResourceId" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Reference to a Data Network resource." + }, + "defaultSessionType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "IPv4", + "IPv6" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The default PDU session type, which is used if the UE does not request a specific session type." + }, + "preemptionCapability": { + "oneOf": [ + { + "type": "string", + "enum": [ + "NotPreempt", + "MayPreempt" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Default QoS Flow preemption capability. The Preemption Capability of a QoS Flow controls whether it can preempt another QoS Flow with a lower priority level. See 3GPP TS23.501 section 5.7.2.2 for a full description of the ARP parameters." + }, + "preemptionVulnerability": { + "oneOf": [ + { + "type": "string", + "enum": [ + "NotPreemptable", + "Preemptable" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Default QoS Flow preemption vulnerability. The Preemption Vulnerability of a QoS Flow controls whether it can be preempted by QoS Flow with a higher priority level. See 3GPP TS23.501 section 5.7.2.2 for a full description of the ARP parameters." + }, + "sessionAmbr": { + "oneOf": [ + { + "$ref": "#/definitions/Ambr" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Aggregate Maximum Bit Rate." + } + }, + "required": [ + "allowedServices", + "dataNetwork", + "sessionAmbr" + ], + "description": "Settings controlling Data Network use" + }, + "DataNetworkPropertiesFormat": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "An optional description for this data network." + } + }, + "description": "Data network properties." + }, + "DataNetworkResourceId": { + "type": "object", + "properties": { + "id": { + "oneOf": [ + { + "type": "string", + "pattern": "^/[sS][uU][bB][sS][cC][rR][iI][pP][tT][iI][oO][nN][sS]/[^/?#]+/[rR][eE][sS][oO][uU][rR][cC][eE][gG][rR][oO][uU][pP][sS]/[^/?#]+/[pP][rR][oO][vV][iI][dD][eE][rR][sS]/[mM][iI][cC][rR][oO][sS][oO][fF][tT]\\.[mM][oO][bB][iI][lL][eE][nN][eE][tT][wW][oO][rR][kK]/[mM][oO][bB][iI][lL][eE][nN][eE][tT][wW][oO][rR][kK][sS]/[^/?#]+/[dD][aA][tT][aA][nN][eE][tT][wW][oO][rR][kK][sS]/[^/?#]+$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Data Network resource ID." + } + }, + "required": [ + "id" + ], + "description": "Reference to a Data Network resource." + }, + "InterfaceProperties": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The logical name for this interface. This should match one of the interfaces configured on your Azure Stack Edge machine." + } + }, + "required": [ + "name" + ], + "description": "Interface properties" + }, + "MobileNetworkPropertiesFormat": { + "type": "object", + "properties": { + "publicLandMobileNetworkIdentifier": { + "oneOf": [ + { + "$ref": "#/definitions/PlmnId" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Public Land Mobile Network (PLMN) ID." + } + }, + "required": [ + "publicLandMobileNetworkIdentifier" + ], + "description": "Mobile network properties." + }, + "MobileNetworkResourceId": { + "type": "object", + "properties": { + "id": { + "oneOf": [ + { + "type": "string", + "pattern": "^/[sS][uU][bB][sS][cC][rR][iI][pP][tT][iI][oO][nN][sS]/[^/?#]+/[rR][eE][sS][oO][uU][rR][cC][eE][gG][rR][oO][uU][pP][sS]/[^/?#]+/[pP][rR][oO][vV][iI][dD][eE][rR][sS]/[mM][iI][cC][rR][oO][sS][oO][fF][tT]\\.[mM][oO][bB][iI][lL][eE][nN][eE][tT][wW][oO][rR][kK]/[mM][oO][bB][iI][lL][eE][nN][eE][tT][wW][oO][rR][kK][sS]/[^/?#]+$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Mobile Network resource ID." + } + }, + "required": [ + "id" + ], + "description": "Reference to a Mobile Network resource." + }, + "mobileNetworks_dataNetworks_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]([a-zA-Z0-9-]*[a-zA-Z0-9])*(\\.[a-zA-Z0-9]([a-zA-Z0-9-]*[a-zA-Z0-9])*)*$", + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the mobile network dataNetwork." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DataNetworkPropertiesFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Data network 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": [ + "dataNetworks" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.MobileNetwork/mobileNetworks/dataNetworks" + }, + "mobileNetworks_services_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^(?!(default|requested|service)$)[a-zA-Z0-9][a-zA-Z0-9_-]*$", + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the service. You must not use any of the following reserved strings - `default`, `requested` or `service`" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ServicePropertiesFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Service 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": [ + "services" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.MobileNetwork/mobileNetworks/services" + }, + "mobileNetworks_simPolicies_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]*$", + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the SIM policy." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SimPolicyPropertiesFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "SimPolicy 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": [ + "simPolicies" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.MobileNetwork/mobileNetworks/simPolicies" + }, + "mobileNetworks_sites_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]*$", + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the mobile network site." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SitePropertiesFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Site 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": [ + "sites" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.MobileNetwork/mobileNetworks/sites" + }, + "mobileNetworks_slices_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]*$", + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the mobile network slice." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SlicePropertiesFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Network slice 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": [ + "slices" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.MobileNetwork/mobileNetworks/slices" + }, + "NaptConfiguration": { + "type": "object", + "properties": { + "enabled": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether NAPT is enabled for connections to this attachedDataNetwork." + }, + "pinholeLimits": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 65536, + "default": "65536" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Maximum number of UDP and TCP pinholes that can be open simultaneously on the core interface." + }, + "pinholeTimeouts": { + "oneOf": [ + { + "$ref": "#/definitions/PinholeTimeouts" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Expiry times of inactive NAPT pinholes, in seconds. All timers must be at least 1 second." + }, + "portRange": { + "oneOf": [ + { + "$ref": "#/definitions/PortRange" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Range of port numbers to use as translated ports on each translated address.\nIf not specified and NAPT is enabled, this range defaults to 1,024 - 65,535. (Ports under 1,024 should not be used because these are special purpose ports reserved by IANA.)" + }, + "portReuseHoldTime": { + "oneOf": [ + { + "$ref": "#/definitions/PortReuseHoldTimes" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The minimum time (in seconds) that will pass before a port that was used by a closed pinhole can be recycled for use by another pinhole. All hold times must be minimum 1 second." + } + }, + "description": "The Network Address and Port Translation settings to use for the attached data network." + }, + "PacketCoreControlPlanePropertiesFormat": { + "type": "object", + "properties": { + "controlPlaneAccessInterface": { + "oneOf": [ + { + "$ref": "#/definitions/InterfaceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Interface properties" + }, + "coreNetworkTechnology": { + "oneOf": [ + { + "type": "string", + "enum": [ + "5GC", + "EPC" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The core network technology generation." + }, + "customLocation": { + "oneOf": [ + { + "$ref": "#/definitions/CustomLocationResourceId" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Reference to an Azure ARC custom location resource." + }, + "mobileNetwork": { + "oneOf": [ + { + "$ref": "#/definitions/MobileNetworkResourceId" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Reference to a Mobile Network resource." + }, + "version": { + "type": "string", + "description": "The version of the packet core software that is deployed." + } + }, + "required": [ + "controlPlaneAccessInterface", + "mobileNetwork" + ], + "description": "PacketCoreControlPlane properties." + }, + "packetCoreControlPlanes_packetCoreDataPlanes_attachedDataNetworks_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]([a-zA-Z0-9-]*[a-zA-Z0-9])*(\\.[a-zA-Z0-9]([a-zA-Z0-9-]*[a-zA-Z0-9])*)*$", + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the attached data network." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/AttachedDataNetworkPropertiesFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Data network 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": [ + "attachedDataNetworks" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.MobileNetwork/packetCoreControlPlanes/packetCoreDataPlanes/attachedDataNetworks" + }, + "packetCoreControlPlanes_packetCoreDataPlanes_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]*$", + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the packet core data plane." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PacketCoreDataPlanePropertiesFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "PacketCoreDataPlane 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": [ + "packetCoreDataPlanes" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.MobileNetwork/packetCoreControlPlanes/packetCoreDataPlanes" + }, + "PacketCoreDataPlanePropertiesFormat": { + "type": "object", + "properties": { + "userPlaneAccessInterface": { + "oneOf": [ + { + "$ref": "#/definitions/InterfaceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Interface properties" + } + }, + "required": [ + "userPlaneAccessInterface" + ], + "description": "PacketCoreDataPlane properties." + }, + "PccRuleConfiguration": { + "type": "object", + "properties": { + "ruleName": { + "oneOf": [ + { + "type": "string", + "pattern": "^(?!(default|requested|service)$)[a-zA-Z0-9][a-zA-Z0-9_-]*$", + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the rule. This must be unique within the parent Service. You must not use any of the following reserved strings - `default`, `requested` or `service`." + }, + "rulePrecedence": { + "oneOf": [ + { + "type": "integer", + "minimum": 0, + "maximum": 255 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A precedence value that is used to decide between PCC Rules when identifying the QoS values to use for a particular Sim. A lower value means a higher priority. This value should be unique among all PCC Rules configured in the Mobile Network." + }, + "ruleQosPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/PccRuleQosPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "PCC rule QoS policy" + }, + "serviceDataFlowTemplates": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceDataFlowTemplate" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The set of service data flow templates to use for this PCC Rule." + }, + "trafficControl": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Blocked" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Determines whether flows that match this PCC Rule are permitted." + } + }, + "required": [ + "ruleName", + "rulePrecedence", + "serviceDataFlowTemplates" + ], + "description": "PCC rule configuration" + }, + "PccRuleQosPolicy": { + "type": "object", + "properties": { + "5qi": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 127 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "5G QoS Identifier priority level." + }, + "allocationAndRetentionPriorityLevel": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 15 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "ARP priority level." + }, + "guaranteedBitRate": { + "oneOf": [ + { + "$ref": "#/definitions/Ambr" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Aggregate Maximum Bit Rate." + }, + "maximumBitRate": { + "oneOf": [ + { + "$ref": "#/definitions/Ambr" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Aggregate Maximum Bit Rate." + }, + "preemptionCapability": { + "oneOf": [ + { + "type": "string", + "enum": [ + "NotPreempt", + "MayPreempt" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "QoS Flow preemption capability. The Preemption Capability of a QoS Flow controls whether it can preempt another QoS Flow with a lower priority level. See 3GPP TS23.501 section 5.7.2.2 for a full description of the ARP parameters." + }, + "preemptionVulnerability": { + "oneOf": [ + { + "type": "string", + "enum": [ + "NotPreemptable", + "Preemptable" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "QoS Flow preemption vulnerability. The Preemption Vulnerability of a QoS Flow controls whether it can be preempted by QoS Flow with a higher priority level. See 3GPP TS23.501 section 5.7.2.2 for a full description of the ARP parameters." + } + }, + "required": [ + "maximumBitRate" + ], + "description": "PCC rule QoS policy" + }, + "PinholeTimeouts": { + "type": "object", + "properties": { + "icmp": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "default": "60" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Pinhole timeout for ICMP pinholes in seconds. Default for ICMP Echo is 60 seconds per RFC 5508 section 3.2." + }, + "tcp": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "default": "7440" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Pinhole timeout for TCP pinholes in seconds. Default for TCP is 2 hours 4 minutes per RFC 5382 section 5." + }, + "udp": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "default": "300" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Pinhole timeout for UDP pinholes in seconds. Default for UDP is 5 minutes per RFC 4787 section 4.3." + } + }, + "description": "Expiry times of inactive NAPT pinholes, in seconds. All timers must be at least 1 second." + }, + "PlmnId": { + "type": "object", + "properties": { + "mcc": { + "oneOf": [ + { + "type": "string", + "pattern": "^\\d{3}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Mobile Country Code." + }, + "mnc": { + "oneOf": [ + { + "type": "string", + "pattern": "^\\d{2,3}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Mobile Network Code." + } + }, + "required": [ + "mcc", + "mnc" + ], + "description": "Public Land Mobile Network (PLMN) ID." + }, + "PortRange": { + "type": "object", + "properties": { + "maxPort": { + "oneOf": [ + { + "type": "integer", + "minimum": 1024, + "maximum": 65535, + "default": "65535" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum port number" + }, + "minPort": { + "oneOf": [ + { + "type": "integer", + "minimum": 1024, + "maximum": 65535, + "default": "1024" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The minimum port number" + } + }, + "description": "Range of port numbers to use as translated ports on each translated address.\nIf not specified and NAPT is enabled, this range defaults to 1,024 - 65,535. (Ports under 1,024 should not be used because these are special purpose ports reserved by IANA.)" + }, + "PortReuseHoldTimes": { + "type": "object", + "properties": { + "tcp": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "default": "120" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Minimum time in seconds that will pass before a TCP port that was used by a closed pinhole can be reused. Default for TCP is 2 minutes." + }, + "udp": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "default": "60" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Minimum time in seconds that will pass before a UDP port that was used by a closed pinhole can be reused. Default for UDP is 1 minute." + } + }, + "description": "The minimum time (in seconds) that will pass before a port that was used by a closed pinhole can be recycled for use by another pinhole. All hold times must be minimum 1 second." + }, + "QosPolicy": { + "type": "object", + "properties": { + "5qi": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 127 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "5G QoS Identifier priority level." + }, + "allocationAndRetentionPriorityLevel": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 15 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "ARP priority level." + }, + "maximumBitRate": { + "oneOf": [ + { + "$ref": "#/definitions/Ambr" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Aggregate Maximum Bit Rate." + }, + "preemptionCapability": { + "oneOf": [ + { + "type": "string", + "enum": [ + "NotPreempt", + "MayPreempt" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "QoS Flow preemption capability. The Preemption Capability of a QoS Flow controls whether it can preempt another QoS Flow with a lower priority level. See 3GPP TS23.501 section 5.7.2.2 for a full description of the ARP parameters." + }, + "preemptionVulnerability": { + "oneOf": [ + { + "type": "string", + "enum": [ + "NotPreemptable", + "Preemptable" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "QoS Flow preemption vulnerability. The Preemption Vulnerability of a QoS Flow controls whether it can be preempted by QoS Flow with a higher priority level. See 3GPP TS23.501 section 5.7.2.2 for a full description of the ARP parameters." + } + }, + "required": [ + "maximumBitRate" + ], + "description": "QoS policy" + }, + "ServiceDataFlowTemplate": { + "type": "object", + "properties": { + "direction": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Uplink", + "Downlink", + "Bidirectional" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The direction of this flow." + }, + "ports": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The port(s) to which UEs will connect for this flow. You can specify zero or more ports or port ranges. If you specify one or more ports or port ranges then you must specify a value other than `ip` in the `protocol` field. This is an optional setting. If you do not specify it then connections will be allowed on all ports. Port ranges must be specified as -. For example: [`8080`, `8082-8085`]." + }, + "protocol": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A list of the allowed protocol(s) for this flow. If you want this flow to be able to use any protocol within the internet protocol suite, use the value `ip`. If you only want to allow a selection of protocols, you must use the corresponding IANA Assigned Internet Protocol Number for each protocol, as described in https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml. For example, for UDP, you must use 17. If you use the value `ip` then you must leave the field `port` unspecified." + }, + "remoteIpList": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The remote IP address(es) to which UEs will connect for this flow. If you want to allow connections on any IP address, use the value `any`. Otherwise, you must provide each of the remote IP addresses to which Fusion Core will connect for this flow. You must provide each IP address in CIDR notation, including the netmask (for example, 192.0.2.54/24)." + }, + "templateName": { + "oneOf": [ + { + "type": "string", + "pattern": "^(?!(default|requested|service)$)[a-zA-Z0-9][a-zA-Z0-9_-]*$", + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the SDF template. This must be unique within the parent PccRuleConfiguration. You must not use any of the following reserved strings - `default`, `requested` or `service`." + } + }, + "required": [ + "direction", + "protocol", + "remoteIpList", + "templateName" + ], + "description": "Service data flow (SDF) template" + }, + "ServicePropertiesFormat": { + "type": "object", + "properties": { + "pccRules": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/PccRuleConfiguration" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The set of PCC Rules that make up this service." + }, + "provisioningState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Unknown", + "Succeeded", + "Accepted", + "Deleting", + "Failed", + "Canceled", + "Deleted" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The provisioning state of the service resource." + }, + "servicePrecedence": { + "oneOf": [ + { + "type": "integer", + "minimum": 0, + "maximum": 255 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A precedence value that is used to decide between services when identifying the QoS values to use for a particular Sim. A lower value means a higher priority. This value should be unique among all services configured in the Mobile Network." + }, + "serviceQosPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/QosPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "QoS policy" + } + }, + "required": [ + "pccRules", + "servicePrecedence" + ], + "description": "Service properties." + }, + "ServiceResourceId": { + "type": "object", + "properties": { + "id": { + "oneOf": [ + { + "type": "string", + "pattern": "^/[sS][uU][bB][sS][cC][rR][iI][pP][tT][iI][oO][nN][sS]/[^/?#]+/[rR][eE][sS][oO][uU][rR][cC][eE][gG][rR][oO][uU][pP][sS]/[^/?#]+/[pP][rR][oO][vV][iI][dD][eE][rR][sS]/[mM][iI][cC][rR][oO][sS][oO][fF][tT]\\.[mM][oO][bB][iI][lL][eE][nN][eE][tT][wW][oO][rR][kK]/[mM][oO][bB][iI][lL][eE][nN][eE][tT][wW][oO][rR][kK][sS]/[^/?#]+/[sS][eE][rR][vV][iI][cC][eE][sS]/[^/?#]+$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Service resource ID." + } + }, + "required": [ + "id" + ], + "description": "Reference to a Service resource." + }, + "SimPolicyPropertiesFormat": { + "type": "object", + "properties": { + "defaultSlice": { + "oneOf": [ + { + "$ref": "#/definitions/SliceResourceId" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Reference to a Slice resource." + }, + "provisioningState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Unknown", + "Succeeded", + "Accepted", + "Deleting", + "Failed", + "Canceled", + "Deleted" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The provisioning state of the sim policy resource." + }, + "registrationTimer": { + "oneOf": [ + { + "type": "integer", + "minimum": 30, + "default": "3240" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Interval for the UE periodic registration update procedure, in seconds." + }, + "rfspIndex": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 256 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "RAT/Frequency Selection Priority Index" + }, + "sliceConfigurations": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/SliceConfiguration" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The allowed slices and the settings to use for them. The list must not contain duplicate items and must contain at least one item." + }, + "ueAmbr": { + "oneOf": [ + { + "$ref": "#/definitions/Ambr" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Aggregate Maximum Bit Rate." + } + }, + "required": [ + "defaultSlice", + "sliceConfigurations", + "ueAmbr" + ], + "description": "SimPolicy properties." + }, + "SimPolicyResourceId": { + "type": "object", + "properties": { + "id": { + "oneOf": [ + { + "type": "string", + "pattern": "^/[sS][uU][bB][sS][cC][rR][iI][pP][tT][iI][oO][nN][sS]/[^/?#]+/[rR][eE][sS][oO][uU][rR][cC][eE][gG][rR][oO][uU][pP][sS]/[^/?#]+/[pP][rR][oO][vV][iI][dD][eE][rR][sS]/[mM][iI][cC][rR][oO][sS][oO][fF][tT]\\.[mM][oO][bB][iI][lL][eE][nN][eE][tT][wW][oO][rR][kK]/[mM][oO][bB][iI][lL][eE][nN][eE][tT][wW][oO][rR][kK][sS]/[^/?#]+/[sS][iI][mM][pP][oO][lL][iI][cC][iI][eE][sS]/[^/?#]+$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "SIM Policy resource ID." + } + }, + "required": [ + "id" + ], + "description": "Reference to a SIM Policy resource." + }, + "SimPropertiesFormat": { + "type": "object", + "properties": { + "authenticationKey": { + "oneOf": [ + { + "type": "string", + "pattern": "^[0-9a-fA-F]{32}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The ki value for the sim." + }, + "deviceType": { + "type": "string", + "description": "An optional free-form text field that can be used to record the device type this sim is associated with, for example 'Video camera'. The Azure portal allows Sims to be grouped and filtered based on this value." + }, + "integratedCircuitCardIdentifier": { + "oneOf": [ + { + "type": "string", + "pattern": "^89[0-9]{17,18}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Integrated Circuit Card ID (ICC Id) for the sim." + }, + "internationalMobileSubscriberIdentity": { + "oneOf": [ + { + "type": "string", + "pattern": "^[0-9]{5,15}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The International Mobile Subscriber Identity (IMSI) for the sim." + }, + "mobileNetwork": { + "oneOf": [ + { + "$ref": "#/definitions/MobileNetworkResourceId" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Reference to a Mobile Network resource." + }, + "operatorKeyCode": { + "oneOf": [ + { + "type": "string", + "pattern": "^[0-9a-fA-F]{32}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Opc value for the sim." + }, + "simPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/SimPolicyResourceId" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Reference to a SIM Policy resource." + }, + "staticIpConfiguration": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/SimStaticIpProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A list of static IP addresses assigned to this sim. Each address is assigned at a defined network scope, made up of {attached data network, slice}." + } + }, + "required": [ + "internationalMobileSubscriberIdentity" + ], + "description": "Sim properties." + }, + "SimStaticIpProperties": { + "type": "object", + "properties": { + "attachedDataNetwork": { + "oneOf": [ + { + "$ref": "#/definitions/AttachedDataNetworkResourceId" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Reference to an Attached Data Network resource." + }, + "slice": { + "oneOf": [ + { + "$ref": "#/definitions/SliceResourceId" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Reference to a Slice resource." + }, + "staticIp": { + "oneOf": [ + { + "$ref": "#/definitions/SimStaticIpPropertiesStaticIp" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The static IP configuration for the sim to use at the defined network scope." + } + }, + "description": "Static IP configuration for a sim, scoped to a particular attached data network and slice." + }, + "SimStaticIpPropertiesStaticIp": { + "type": "object", + "properties": { + "ipv4Address": { + "oneOf": [ + { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "IPv4 address." + } + }, + "description": "The static IP configuration for the sim to use at the defined network scope." + }, + "SitePropertiesFormat": { + "type": "object", + "properties": { + "networkFunctions": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "An array of ids of the network functions deployed on the site, maintained by the user." + } + }, + "description": "Site properties." + }, + "SliceConfiguration": { + "type": "object", + "properties": { + "dataNetworkConfigurations": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/DataNetworkConfiguration" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The allowed data networks and the settings to use for them. The list must not contain duplicate items and must contain at least one item." + }, + "defaultDataNetwork": { + "oneOf": [ + { + "$ref": "#/definitions/DataNetworkResourceId" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Reference to a Data Network resource." + }, + "slice": { + "oneOf": [ + { + "$ref": "#/definitions/SliceResourceId" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Reference to a Slice resource." + } + }, + "required": [ + "dataNetworkConfigurations", + "defaultDataNetwork", + "slice" + ], + "description": "Per-slice settings" + }, + "SlicePropertiesFormat": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "An optional description for this network slice." + }, + "snssai": { + "oneOf": [ + { + "$ref": "#/definitions/Snssai" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Single-Network Slice Selection Assistance Information (S-NSSAI)." + } + }, + "required": [ + "snssai" + ], + "description": "Network slice properties." + }, + "SliceResourceId": { + "type": "object", + "properties": { + "id": { + "oneOf": [ + { + "type": "string", + "pattern": "^/[sS][uU][bB][sS][cC][rR][iI][pP][tT][iI][oO][nN][sS]/[^/?#]+/[rR][eE][sS][oO][uU][rR][cC][eE][gG][rR][oO][uU][pP][sS]/[^/?#]+/[pP][rR][oO][vV][iI][dD][eE][rR][sS]/[mM][iI][cC][rR][oO][sS][oO][fF][tT]\\.[mM][oO][bB][iI][lL][eE][nN][eE][tT][wW][oO][rR][kK]/[mM][oO][bB][iI][lL][eE][nN][eE][tT][wW][oO][rR][kK][sS]/[^/?#]+/[sS][lL][iI][cC][eE][sS]/[^/?#]+$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Slice resource ID." + } + }, + "required": [ + "id" + ], + "description": "Reference to a Slice resource." + }, + "Snssai": { + "type": "object", + "properties": { + "sd": { + "oneOf": [ + { + "type": "string", + "pattern": "^[A-Fa-f0-9]{6}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Slice Differentiator (SD)." + }, + "sst": { + "oneOf": [ + { + "type": "integer", + "minimum": 0, + "maximum": 255 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Slice/Service Type (SST)." + } + }, + "required": [ + "sst" + ], + "description": "Single-Network Slice Selection Assistance Information (S-NSSAI)." + }, + "SubResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + }, + "required": [ + "id" + ], + "description": "Reference to another sub resource." + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index 7f41790e66..5ff5b6f828 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -10078,6 +10078,36 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-03-01-preview/Microsoft.MixedReality.json#/resourceDefinitions/spatialAnchorsAccounts" }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01-preview/Microsoft.MobileNetwork.json#/resourceDefinitions/mobileNetworks" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01-preview/Microsoft.MobileNetwork.json#/resourceDefinitions/mobileNetworks_dataNetworks" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01-preview/Microsoft.MobileNetwork.json#/resourceDefinitions/mobileNetworks_services" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01-preview/Microsoft.MobileNetwork.json#/resourceDefinitions/mobileNetworks_simPolicies" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01-preview/Microsoft.MobileNetwork.json#/resourceDefinitions/mobileNetworks_sites" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01-preview/Microsoft.MobileNetwork.json#/resourceDefinitions/mobileNetworks_slices" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01-preview/Microsoft.MobileNetwork.json#/resourceDefinitions/packetCoreControlPlanes" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01-preview/Microsoft.MobileNetwork.json#/resourceDefinitions/packetCoreControlPlanes_packetCoreDataPlanes" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01-preview/Microsoft.MobileNetwork.json#/resourceDefinitions/packetCoreControlPlanes_packetCoreDataPlanes_attachedDataNetworks" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01-preview/Microsoft.MobileNetwork.json#/resourceDefinitions/sims" + }, { "$ref": "https://schema.management.azure.com/schemas/2017-08-15/Microsoft.NetApp.json#/resourceDefinitions/netAppAccounts" }, From 45eb5dadb6a8edb7bda2d0519af00455cd983d5a Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Sat, 19 Feb 2022 10:39:22 +0000 Subject: [PATCH 02/29] Update resource list --- generator/resources.json | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/generator/resources.json b/generator/resources.json index f8581e78cc..4f2ef3b8c3 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -5075,6 +5075,36 @@ "2021-01-01", "2021-03-01-preview" ], + "Microsoft.MobileNetwork/mobileNetworks": [ + "2022-01-01-preview" + ], + "Microsoft.MobileNetwork/mobileNetworks/dataNetworks": [ + "2022-01-01-preview" + ], + "Microsoft.MobileNetwork/mobileNetworks/services": [ + "2022-01-01-preview" + ], + "Microsoft.MobileNetwork/mobileNetworks/simPolicies": [ + "2022-01-01-preview" + ], + "Microsoft.MobileNetwork/mobileNetworks/sites": [ + "2022-01-01-preview" + ], + "Microsoft.MobileNetwork/mobileNetworks/slices": [ + "2022-01-01-preview" + ], + "Microsoft.MobileNetwork/packetCoreControlPlanes": [ + "2022-01-01-preview" + ], + "Microsoft.MobileNetwork/packetCoreControlPlanes/packetCoreDataPlanes": [ + "2022-01-01-preview" + ], + "Microsoft.MobileNetwork/packetCoreControlPlanes/packetCoreDataPlanes/attachedDataNetworks": [ + "2022-01-01-preview" + ], + "Microsoft.MobileNetwork/sims": [ + "2022-01-01-preview" + ], "Microsoft.NetApp/netAppAccounts": [ "2017-08-15", "2019-05-01", From 116f19086ad7797c53e0156eb536d8ea401896a0 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Sun, 20 Feb 2022 09:30:35 +0000 Subject: [PATCH 03/29] Autogenerate schemas --- .../2022-01-01/Microsoft.DataProtection.json | 1606 +++++++++++++++++ schemas/common/autogeneratedResources.json | 12 + 2 files changed, 1618 insertions(+) create mode 100644 schemas/2022-01-01/Microsoft.DataProtection.json diff --git a/schemas/2022-01-01/Microsoft.DataProtection.json b/schemas/2022-01-01/Microsoft.DataProtection.json new file mode 100644 index 0000000000..2dbe3f83c3 --- /dev/null +++ b/schemas/2022-01-01/Microsoft.DataProtection.json @@ -0,0 +1,1606 @@ +{ + "id": "https://schema.management.azure.com/schemas/2022-01-01/Microsoft.DataProtection.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.DataProtection", + "description": "Microsoft DataProtection Resource Types", + "resourceDefinitions": { + "backupVaults": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "eTag": { + "type": "string", + "description": "Optional ETag." + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/DppIdentityDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity details" + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "type": "string", + "description": "The name of the backup vault." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BackupVault" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup Vault" + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/backupVaults_backupPolicies_childResource" + }, + { + "$ref": "#/definitions/backupVaults_backupInstances_childResource" + } + ] + } + }, + "systemData": { + "oneOf": [ + { + "$ref": "#/definitions/SystemData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata pertaining to creation and last modification of the resource." + }, + "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.DataProtection/backupVaults" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataProtection/backupVaults" + }, + "backupVaults_backupInstances": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the backup instance" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BackupInstance" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup Instance" + }, + "systemData": { + "oneOf": [ + { + "$ref": "#/definitions/SystemData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata pertaining to creation and last modification of the resource." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataProtection/backupVaults/backupInstances" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataProtection/backupVaults/backupInstances" + }, + "backupVaults_backupPolicies": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "name": { + "type": "string", + "description": "Name of the policy" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BaseBackupPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "BackupPolicy base" + }, + "systemData": { + "oneOf": [ + { + "$ref": "#/definitions/SystemData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata pertaining to creation and last modification of the resource." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataProtection/backupVaults/backupPolicies" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataProtection/backupVaults/backupPolicies" + }, + "resourceGuards": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "eTag": { + "type": "string", + "description": "Optional ETag." + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/DppIdentityDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity details" + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "type": "string", + "description": "The name of ResourceGuard" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ResourceGuard" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "systemData": { + "oneOf": [ + { + "$ref": "#/definitions/SystemData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata pertaining to creation and last modification of the resource." + }, + "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.DataProtection/resourceGuards" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataProtection/resourceGuards" + } + }, + "definitions": { + "AbsoluteDeleteOption": { + "type": "object", + "properties": { + "objectType": { + "type": "string", + "enum": [ + "AbsoluteDeleteOption" + ] + } + }, + "required": [ + "objectType" + ], + "description": "Delete option with duration" + }, + "AdhocBasedTaggingCriteria": { + "type": "object", + "properties": { + "tagInfo": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionTag" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention tag" + } + }, + "description": "Adhoc backup tagging criteria" + }, + "AdhocBasedTriggerContext": { + "type": "object", + "properties": { + "objectType": { + "type": "string", + "enum": [ + "AdhocBasedTriggerContext" + ] + }, + "taggingCriteria": { + "oneOf": [ + { + "$ref": "#/definitions/AdhocBasedTaggingCriteria" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Adhoc backup tagging criteria" + } + }, + "required": [ + "objectType", + "taggingCriteria" + ], + "description": "Adhoc trigger context" + }, + "AuthCredentials": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/SecretStoreBasedAuthCredentials" + } + ], + "properties": {}, + "description": "Base class for different types of authentication credentials." + }, + "AzureBackupParams": { + "type": "object", + "properties": { + "backupType": { + "type": "string", + "description": "BackupType ; Full/Incremental etc" + }, + "objectType": { + "type": "string", + "enum": [ + "AzureBackupParams" + ] + } + }, + "required": [ + "backupType", + "objectType" + ], + "description": "Azure backup parameters" + }, + "AzureBackupRule": { + "type": "object", + "properties": { + "backupParameters": { + "oneOf": [ + { + "$ref": "#/definitions/BackupParameters" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "BackupParameters base" + }, + "dataStore": { + "oneOf": [ + { + "$ref": "#/definitions/DataStoreInfoBase" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "DataStoreInfo base" + }, + "objectType": { + "type": "string", + "enum": [ + "AzureBackupRule" + ] + }, + "trigger": { + "oneOf": [ + { + "$ref": "#/definitions/TriggerContext" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Trigger context" + } + }, + "required": [ + "dataStore", + "objectType", + "trigger" + ], + "description": "Azure backup rule" + }, + "AzureOperationalStoreParameters": { + "type": "object", + "properties": { + "objectType": { + "type": "string", + "enum": [ + "AzureOperationalStoreParameters" + ] + }, + "resourceGroupId": { + "type": "string", + "description": "Gets or sets the Snapshot Resource Group Uri." + } + }, + "required": [ + "objectType" + ], + "description": "Parameters for Operational-Tier DataStore" + }, + "AzureRetentionRule": { + "type": "object", + "properties": { + "isDefault": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "lifecycles": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/SourceLifeCycle" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "objectType": { + "type": "string", + "enum": [ + "AzureRetentionRule" + ] + } + }, + "required": [ + "lifecycles", + "objectType" + ], + "description": "Azure retention rule" + }, + "BackupCriteria": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/ScheduleBasedBackupCriteria" + } + ], + "properties": {}, + "description": "BackupCriteria base class" + }, + "BackupInstance": { + "type": "object", + "properties": { + "datasourceAuthCredentials": { + "oneOf": [ + { + "$ref": "#/definitions/AuthCredentials" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for different types of authentication credentials." + }, + "dataSourceInfo": { + "oneOf": [ + { + "$ref": "#/definitions/Datasource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Datasource to be backed up" + }, + "dataSourceSetInfo": { + "oneOf": [ + { + "$ref": "#/definitions/DatasourceSet" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "DatasourceSet details of datasource to be backed up" + }, + "friendlyName": { + "type": "string", + "description": "Gets or sets the Backup Instance friendly name." + }, + "objectType": { + "type": "string" + }, + "policyInfo": { + "oneOf": [ + { + "$ref": "#/definitions/PolicyInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Policy Info in backupInstance" + }, + "validationType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "ShallowValidation", + "DeepValidation" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies the type of validation. In case of DeepValidation, all validations from /validateForBackup API will run again." + } + }, + "required": [ + "dataSourceInfo", + "objectType", + "policyInfo" + ], + "description": "Backup Instance" + }, + "BackupParameters": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureBackupParams" + } + ], + "properties": {}, + "description": "BackupParameters base" + }, + "BackupPolicy": { + "type": "object", + "properties": { + "objectType": { + "type": "string", + "enum": [ + "BackupPolicy" + ] + }, + "policyRules": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/BasePolicyRule" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Policy rule dictionary that contains rules for each backuptype i.e Full/Incremental/Logs etc" + } + }, + "required": [ + "objectType", + "policyRules" + ], + "description": "Rule based backup policy" + }, + "BackupSchedule": { + "type": "object", + "properties": { + "repeatingTimeIntervals": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "ISO 8601 repeating time interval format" + }, + "timeZone": { + "type": "string", + "description": "Time zone for a schedule. Example: Pacific Standard Time" + } + }, + "required": [ + "repeatingTimeIntervals" + ], + "description": "Schedule for backup" + }, + "BackupVault": { + "type": "object", + "properties": { + "storageSettings": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/StorageSetting" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Storage Settings" + } + }, + "required": [ + "storageSettings" + ], + "description": "Backup Vault" + }, + "backupVaults_backupInstances_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the backup instance" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BackupInstance" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup Instance" + }, + "systemData": { + "oneOf": [ + { + "$ref": "#/definitions/SystemData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata pertaining to creation and last modification of the resource." + }, + "type": { + "type": "string", + "enum": [ + "backupInstances" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataProtection/backupVaults/backupInstances" + }, + "backupVaults_backupPolicies_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "name": { + "type": "string", + "description": "Name of the policy" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BaseBackupPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "BackupPolicy base" + }, + "systemData": { + "oneOf": [ + { + "$ref": "#/definitions/SystemData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata pertaining to creation and last modification of the resource." + }, + "type": { + "type": "string", + "enum": [ + "backupPolicies" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataProtection/backupVaults/backupPolicies" + }, + "BaseBackupPolicy": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/BackupPolicy" + } + ], + "properties": { + "datasourceTypes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of datasource for the backup management" + } + }, + "required": [ + "datasourceTypes" + ], + "description": "BackupPolicy base" + }, + "BasePolicyRule": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureBackupRule" + }, + { + "$ref": "#/definitions/AzureRetentionRule" + } + ], + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ], + "description": "BasePolicy Rule" + }, + "CopyOnExpiryOption": { + "type": "object", + "properties": { + "objectType": { + "type": "string", + "enum": [ + "CopyOnExpiryOption" + ] + } + }, + "required": [ + "objectType" + ], + "description": "Copy on Expiry Option" + }, + "CopyOption": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/CopyOnExpiryOption" + }, + { + "$ref": "#/definitions/CustomCopyOption" + }, + { + "$ref": "#/definitions/ImmediateCopyOption" + } + ], + "properties": {}, + "description": "Options to copy" + }, + "CustomCopyOption": { + "type": "object", + "properties": { + "duration": { + "type": "string", + "description": "Data copied after given timespan" + }, + "objectType": { + "type": "string", + "enum": [ + "CustomCopyOption" + ] + } + }, + "required": [ + "objectType" + ], + "description": "Duration based custom options to copy" + }, + "Datasource": { + "type": "object", + "properties": { + "datasourceType": { + "type": "string", + "description": "DatasourceType of the resource." + }, + "objectType": { + "type": "string", + "description": "Type of Datasource object, used to initialize the right inherited type" + }, + "resourceID": { + "type": "string", + "description": "Full ARM ID of the resource. For azure resources, this is ARM ID. For non azure resources, this will be the ID created by backup service via Fabric/Vault." + }, + "resourceLocation": { + "type": "string", + "description": "Location of datasource." + }, + "resourceName": { + "type": "string", + "description": "Unique identifier of the resource in the context of parent." + }, + "resourceType": { + "type": "string", + "description": "Resource Type of Datasource." + }, + "resourceUri": { + "type": "string", + "description": "Uri of the resource." + } + }, + "required": [ + "resourceID" + ], + "description": "Datasource to be backed up" + }, + "DatasourceSet": { + "type": "object", + "properties": { + "datasourceType": { + "type": "string", + "description": "DatasourceType of the resource." + }, + "objectType": { + "type": "string", + "description": "Type of Datasource object, used to initialize the right inherited type" + }, + "resourceID": { + "type": "string", + "description": "Full ARM ID of the resource. For azure resources, this is ARM ID. For non azure resources, this will be the ID created by backup service via Fabric/Vault." + }, + "resourceLocation": { + "type": "string", + "description": "Location of datasource." + }, + "resourceName": { + "type": "string", + "description": "Unique identifier of the resource in the context of parent." + }, + "resourceType": { + "type": "string", + "description": "Resource Type of Datasource." + }, + "resourceUri": { + "type": "string", + "description": "Uri of the resource." + } + }, + "required": [ + "resourceID" + ], + "description": "DatasourceSet details of datasource to be backed up" + }, + "DataStoreInfoBase": { + "type": "object", + "properties": { + "dataStoreType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "OperationalStore", + "VaultStore", + "ArchiveStore" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "type of datastore; Operational/Vault/Archive." + }, + "objectType": { + "type": "string", + "description": "Type of Datasource object, used to initialize the right inherited type" + } + }, + "required": [ + "dataStoreType", + "objectType" + ], + "description": "DataStoreInfo base" + }, + "DataStoreParameters": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureOperationalStoreParameters" + } + ], + "properties": { + "dataStoreType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "OperationalStore", + "VaultStore", + "ArchiveStore" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "type of datastore; Operational/Vault/Archive." + } + }, + "required": [ + "dataStoreType" + ], + "description": "Parameters for DataStore" + }, + "Day": { + "type": "object", + "properties": { + "date": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Date of the month" + }, + "isLast": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether Date is last date of month" + } + }, + "description": "Day of the week" + }, + "DeleteOption": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AbsoluteDeleteOption" + } + ], + "properties": { + "duration": { + "type": "string", + "description": "Duration of deletion after given timespan" + } + }, + "required": [ + "duration" + ], + "description": "Delete Option" + }, + "DppIdentityDetails": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The identityType which can be either SystemAssigned or None" + } + }, + "description": "Identity details" + }, + "ImmediateCopyOption": { + "type": "object", + "properties": { + "objectType": { + "type": "string", + "enum": [ + "ImmediateCopyOption" + ] + } + }, + "required": [ + "objectType" + ], + "description": "Immediate copy Option" + }, + "PolicyInfo": { + "type": "object", + "properties": { + "policyId": { + "type": "string" + }, + "policyParameters": { + "oneOf": [ + { + "$ref": "#/definitions/PolicyParameters" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Parameters in Policy" + } + }, + "required": [ + "policyId" + ], + "description": "Policy Info in backupInstance" + }, + "PolicyParameters": { + "type": "object", + "properties": { + "dataStoreParametersList": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/DataStoreParameters" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the DataStore Parameters" + } + }, + "description": "Parameters in Policy" + }, + "ResourceGuard": { + "type": "object", + "properties": {} + }, + "RetentionTag": { + "type": "object", + "properties": { + "tagName": { + "type": "string", + "description": "Retention Tag Name to relate it to retention rule." + } + }, + "required": [ + "tagName" + ], + "description": "Retention tag" + }, + "ScheduleBasedBackupCriteria": { + "type": "object", + "properties": { + "absoluteCriteria": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "AllBackup", + "FirstOfDay", + "FirstOfMonth", + "FirstOfWeek", + "FirstOfYear" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "it contains absolute values like \"AllBackup\" / \"FirstOfDay\" / \"FirstOfWeek\" / \"FirstOfMonth\"\r\nand should be part of AbsoluteMarker enum" + }, + "daysOfMonth": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Day" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This is day of the month from 1 to 28 other wise last of month" + }, + "daysOfTheWeek": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Friday", + "Monday", + "Saturday", + "Sunday", + "Thursday", + "Tuesday", + "Wednesday" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "It should be Sunday/Monday/T..../Saturday" + }, + "monthsOfYear": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "April", + "August", + "December", + "February", + "January", + "July", + "June", + "March", + "May", + "November", + "October", + "September" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "It should be January/February/....../December" + }, + "objectType": { + "type": "string", + "enum": [ + "ScheduleBasedBackupCriteria" + ] + }, + "scheduleTimes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of schedule times for backup" + }, + "weeksOfTheMonth": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "First", + "Fourth", + "Last", + "Second", + "Third" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "It should be First/Second/Third/Fourth/Last" + } + }, + "required": [ + "objectType" + ], + "description": "Schedule based backup criteria" + }, + "ScheduleBasedTriggerContext": { + "type": "object", + "properties": { + "objectType": { + "type": "string", + "enum": [ + "ScheduleBasedTriggerContext" + ] + }, + "schedule": { + "oneOf": [ + { + "$ref": "#/definitions/BackupSchedule" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Schedule for backup" + }, + "taggingCriteria": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/TaggingCriteria" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of tags that can be applicable for given schedule." + } + }, + "required": [ + "objectType", + "schedule", + "taggingCriteria" + ], + "description": "Schedule based trigger context" + }, + "SecretStoreBasedAuthCredentials": { + "type": "object", + "properties": { + "objectType": { + "type": "string", + "enum": [ + "SecretStoreBasedAuthCredentials" + ] + }, + "secretStoreResource": { + "oneOf": [ + { + "$ref": "#/definitions/SecretStoreResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Class representing a secret store resource." + } + }, + "required": [ + "objectType" + ], + "description": "Secret store based authentication credentials." + }, + "SecretStoreResource": { + "type": "object", + "properties": { + "secretStoreType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "AzureKeyVault" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the type of secret store." + }, + "uri": { + "type": "string", + "description": "Uri to get to the resource" + }, + "value": { + "type": "string", + "description": "Gets or sets value stored in secret store resource" + } + }, + "required": [ + "secretStoreType" + ], + "description": "Class representing a secret store resource." + }, + "SourceLifeCycle": { + "type": "object", + "properties": { + "deleteAfter": { + "oneOf": [ + { + "$ref": "#/definitions/DeleteOption" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Delete Option" + }, + "sourceDataStore": { + "oneOf": [ + { + "$ref": "#/definitions/DataStoreInfoBase" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "DataStoreInfo base" + }, + "targetDataStoreCopySettings": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/TargetCopySetting" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "required": [ + "deleteAfter", + "sourceDataStore" + ], + "description": "Source LifeCycle" + }, + "StorageSetting": { + "type": "object", + "properties": { + "datastoreType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "ArchiveStore", + "SnapshotStore", + "VaultStore" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the type of the datastore." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "GeoRedundant", + "LocallyRedundant" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the type." + } + }, + "description": "Storage setting" + }, + "SystemData": { + "type": "object", + "properties": { + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource creation (UTC)." + }, + "createdBy": { + "type": "string", + "description": "The identity that created the resource." + }, + "createdByType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of identity that created the resource." + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The type of identity that last modified the resource." + }, + "lastModifiedBy": { + "type": "string", + "description": "The identity that last modified the resource." + }, + "lastModifiedByType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of identity that last modified the resource." + } + }, + "description": "Metadata pertaining to creation and last modification of the resource." + }, + "TaggingCriteria": { + "type": "object", + "properties": { + "criteria": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/BackupCriteria" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Criteria which decides whether the tag can be applied to a triggered backup." + }, + "isDefault": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies if tag is default." + }, + "taggingPriority": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention Tag priority." + }, + "tagInfo": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionTag" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention tag" + } + }, + "required": [ + "isDefault", + "taggingPriority", + "tagInfo" + ], + "description": "Tagging criteria" + }, + "TargetCopySetting": { + "type": "object", + "properties": { + "copyAfter": { + "oneOf": [ + { + "$ref": "#/definitions/CopyOption" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Options to copy" + }, + "dataStore": { + "oneOf": [ + { + "$ref": "#/definitions/DataStoreInfoBase" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "DataStoreInfo base" + } + }, + "required": [ + "copyAfter", + "dataStore" + ], + "description": "Target copy settings" + }, + "TriggerContext": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AdhocBasedTriggerContext" + }, + { + "$ref": "#/definitions/ScheduleBasedTriggerContext" + } + ], + "properties": {}, + "description": "Trigger context" + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index 5ff5b6f828..1ebb5eb06c 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -5431,6 +5431,18 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-12-01-preview/Microsoft.DataProtection.json#/resourceDefinitions/resourceGuards" }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01/Microsoft.DataProtection.json#/resourceDefinitions/backupVaults" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01/Microsoft.DataProtection.json#/resourceDefinitions/backupVaults_backupInstances" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01/Microsoft.DataProtection.json#/resourceDefinitions/backupVaults_backupPolicies" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01/Microsoft.DataProtection.json#/resourceDefinitions/resourceGuards" + }, { "$ref": "https://schema.management.azure.com/schemas/2018-11-01-preview/Microsoft.DataShare.json#/resourceDefinitions/accounts" }, From 62a7c6251323431e678f0175fa047bce384a649c Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Sun, 20 Feb 2022 09:30:52 +0000 Subject: [PATCH 04/29] Update resource list --- generator/resources.json | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index 4f2ef3b8c3..dd8c03187c 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -2766,7 +2766,8 @@ "2021-06-01-preview", "2021-07-01", "2021-10-01-preview", - "2021-12-01-preview" + "2021-12-01-preview", + "2022-01-01" ], "Microsoft.DataProtection/backupVaults/backupInstances": [ "2021-01-01", @@ -2774,7 +2775,8 @@ "2021-06-01-preview", "2021-07-01", "2021-10-01-preview", - "2021-12-01-preview" + "2021-12-01-preview", + "2022-01-01" ], "Microsoft.DataProtection/backupVaults/backupPolicies": [ "2021-01-01", @@ -2782,12 +2784,14 @@ "2021-06-01-preview", "2021-07-01", "2021-10-01-preview", - "2021-12-01-preview" + "2021-12-01-preview", + "2022-01-01" ], "Microsoft.DataProtection/resourceGuards": [ "2021-07-01", "2021-10-01-preview", - "2021-12-01-preview" + "2021-12-01-preview", + "2022-01-01" ], "Microsoft.DataShare/accounts": [ "2018-11-01-preview", From 3af93c00b4cbf6c6a219135f32fd609f42a80f1f Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Wed, 23 Feb 2022 09:13:14 +0000 Subject: [PATCH 05/29] Autogenerate schemas --- schemas/2021-06-01/Microsoft.Cdn.json | 102 ++++++++++++++++++++++++-- 1 file changed, 96 insertions(+), 6 deletions(-) diff --git a/schemas/2021-06-01/Microsoft.Cdn.json b/schemas/2021-06-01/Microsoft.Cdn.json index 0e448b9e75..dc5b6c0f22 100644 --- a/schemas/2021-06-01/Microsoft.Cdn.json +++ b/schemas/2021-06-01/Microsoft.Cdn.json @@ -1062,9 +1062,15 @@ "description": "Priority of origin in given origin group for load balancing. Higher priorities will not be used for load balancing if any lower priority origin is healthy.Must be between 1 and 5" }, "sharedPrivateLinkResource": { - "type": "object", - "properties": {}, - "description": "The properties of the private link resource for private origin." + "oneOf": [ + { + "$ref": "#/definitions/SharedPrivateLinkResourceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the properties of an existing Shared Private Link Resource to use when connecting to a private origin." }, "weight": { "oneOf": [ @@ -1089,9 +1095,15 @@ "type": "object", "properties": { "compressionSettings": { - "type": "object", - "properties": {}, - "description": "compression settings." + "oneOf": [ + { + "$ref": "#/definitions/CompressionSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "settings for compression." }, "queryParameters": { "type": "string", @@ -1439,6 +1451,37 @@ ], "description": "Defines the parameters for ClientPort match conditions" }, + "CompressionSettings": { + "type": "object", + "properties": { + "contentTypesToCompress": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of content types on which compression applies. The value should be a valid MIME type." + }, + "isCompressionEnabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether content compression is enabled on AzureFrontDoor. Default value is false. If compression is enabled, content will be served as compressed if user requests for a compressed version. Content won't be compressed on AzureFrontDoor when requested content is smaller than 1 byte or larger than 1 MB." + } + }, + "description": "settings for compression." + }, "CookiesMatchConditionParameters": { "type": "object", "properties": { @@ -6043,6 +6086,53 @@ ], "description": "Defines the parameters for ServerPort match conditions" }, + "SharedPrivateLinkResourceProperties": { + "type": "object", + "properties": { + "groupId": { + "type": "string", + "description": "The group id from the provider of resource the shared private link resource is for." + }, + "privateLink": { + "oneOf": [ + { + "$ref": "#/definitions/ResourceReference" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Reference to another resource." + }, + "privateLinkLocation": { + "type": "string", + "description": "The location of the shared private link resource" + }, + "requestMessage": { + "type": "string", + "description": "The request message for requesting approval of the shared private link resource." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected", + "Timeout" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Status of the shared private link resource. Can be Pending, Approved, Rejected, Disconnected, or Timeout." + } + }, + "description": "Describes the properties of an existing Shared Private Link Resource to use when connecting to a private origin." + }, "Sku": { "type": "object", "properties": { From e301e42e6ca6bb9285c659611953bf9132a99dd9 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Wed, 23 Feb 2022 10:36:59 +0000 Subject: [PATCH 06/29] Autogenerate schemas --- schemas/2021-05-01/Microsoft.DBforMySQL.json | 95 ++++++++++++++++++++ 1 file changed, 95 insertions(+) diff --git a/schemas/2021-05-01/Microsoft.DBforMySQL.json b/schemas/2021-05-01/Microsoft.DBforMySQL.json index 9447555855..402c7bda69 100644 --- a/schemas/2021-05-01/Microsoft.DBforMySQL.json +++ b/schemas/2021-05-01/Microsoft.DBforMySQL.json @@ -13,6 +13,17 @@ "2021-05-01" ] }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/Identity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to configure Identity for Bring your Own Keys" + }, "location": { "type": "string", "description": "The geo-location where the resource lives" @@ -213,6 +224,43 @@ }, "description": "The properties of a database." }, + "DataEncryption": { + "type": "object", + "properties": { + "geoBackupKeyUri": { + "type": "string", + "description": "Geo backup key uri as key vault can't cross region, need cmk in same region as geo backup" + }, + "geoBackupUserAssignedIdentityId": { + "type": "string", + "description": "Geo backup user identity resource id as identity can't cross region, need identity in same region as geo backup" + }, + "primaryKeyUri": { + "type": "string", + "description": "Primary key uri" + }, + "primaryUserAssignedIdentityId": { + "type": "string", + "description": "Primary user identity resource id" + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "AzureKeyVault", + "SystemManaged" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The key type, AzureKeyVault for enable cmk, SystemManaged for disable cmk." + } + }, + "description": "The date encryption for cmk." + }, "FirewallRuleProperties": { "type": "object", "properties": { @@ -351,6 +399,42 @@ }, "description": "Network related properties of a server" }, + "Identity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "UserAssigned" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of managed service identity." + }, + "userAssignedIdentities": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": {} + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata of user assigned identity." + } + }, + "description": "Properties to configure Identity for Bring your Own Keys" + }, "MaintenanceWindow": { "type": "object", "properties": { @@ -452,6 +536,17 @@ ], "description": "The mode to create a new MySQL server." }, + "dataEncryption": { + "oneOf": [ + { + "$ref": "#/definitions/DataEncryption" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The date encryption for cmk." + }, "highAvailability": { "oneOf": [ { From 59068c693ad6d12b0a15641ebfb49f7f05aa2d99 Mon Sep 17 00:00:00 2001 From: Jorge Cotillo Date: Thu, 24 Feb 2022 23:45:24 -0800 Subject: [PATCH 07/29] added author info --- .github/workflows/generate-schemas-batch.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/generate-schemas-batch.yml b/.github/workflows/generate-schemas-batch.yml index 0a011af810..60ea58408a 100644 --- a/.github/workflows/generate-schemas-batch.yml +++ b/.github/workflows/generate-schemas-batch.yml @@ -26,6 +26,7 @@ jobs: uses: actions/checkout@v2.3.5 with: repository: Azure/azure-rest-api-specs + default_author: user_info path: workflow-temp/azure-rest-api-specs ref: ${{ github.event.inputs.api_specs_ref }} From 8407310c79e33f1939547e1f6d8cf784afb8bcf3 Mon Sep 17 00:00:00 2001 From: Jorge Cotillo Date: Thu, 24 Feb 2022 23:46:11 -0800 Subject: [PATCH 08/29] nit update --- .github/workflows/generate-schemas-batch.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/generate-schemas-batch.yml b/.github/workflows/generate-schemas-batch.yml index 60ea58408a..5b8762d6ad 100644 --- a/.github/workflows/generate-schemas-batch.yml +++ b/.github/workflows/generate-schemas-batch.yml @@ -14,7 +14,7 @@ env: SUMMARY_LOG_ARTIFACT_NAME: summary-log AUTOGENERATE_BRANCH_NAME: autogenerate AUTHOR: ${{ github.actor }} - AUTHOR_EMAIL: <${{ github.actor }}@users.noreply.github.com> + AUTHOR_EMAIL: ${{ github.actor }}@users.noreply.github.com jobs: batch-0: name: Update Schemas Batch 0 From 196e14b33ba396cb8e42ea3d0be5412c718e169d Mon Sep 17 00:00:00 2001 From: Jorge Cotillo Date: Thu, 24 Feb 2022 23:52:48 -0800 Subject: [PATCH 09/29] added user info to all batches --- .github/workflows/generate-schemas-batch.yml | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/.github/workflows/generate-schemas-batch.yml b/.github/workflows/generate-schemas-batch.yml index 5b8762d6ad..5fa8a58c31 100644 --- a/.github/workflows/generate-schemas-batch.yml +++ b/.github/workflows/generate-schemas-batch.yml @@ -26,7 +26,6 @@ jobs: uses: actions/checkout@v2.3.5 with: repository: Azure/azure-rest-api-specs - default_author: user_info path: workflow-temp/azure-rest-api-specs ref: ${{ github.event.inputs.api_specs_ref }} @@ -46,8 +45,7 @@ jobs: - name: Commit changes uses: EndBug/add-and-commit@v7 with: - author_name: ${{ env.AUTHOR }} - author_email: ${{ env.AUTHOR_EMAIL }} + default_author: user_info message: 'Autogenerate schemas batch 0' add: '*.*' @@ -89,8 +87,7 @@ jobs: - name: Commit changes uses: EndBug/add-and-commit@v7 with: - author_name: ${{ env.AUTHOR }} - author_email: ${{ env.AUTHOR_EMAIL }} + default_author: user_info message: 'Autogenerate schemas batch 1' add: '*.*' @@ -132,8 +129,7 @@ jobs: - name: Commit changes uses: EndBug/add-and-commit@v7 with: - author_name: ${{ env.AUTHOR }} - author_email: ${{ env.AUTHOR_EMAIL }} + default_author: user_info message: 'Autogenerate schemas batch 2' add: '*.*' From 41600f66e2c6f02fb72abdfe27fbe9d0f63934f1 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Fri, 25 Feb 2022 09:05:15 +0000 Subject: [PATCH 10/29] Autogenerate schemas --- schemas/2021-10-01/Microsoft.Compute.json | 15 + .../Microsoft.Compute.Extensions.json | 2026 +++++++++++++++++ schemas/2021-12-01/Microsoft.Compute.json | 1486 ++++++++++++ schemas/2022-01-01-preview/Microsoft.App.json | 65 - schemas/common/autogeneratedResources.json | 15 + 5 files changed, 3542 insertions(+), 65 deletions(-) create mode 100644 schemas/2021-12-01/Microsoft.Compute.Extensions.json create mode 100644 schemas/2021-12-01/Microsoft.Compute.json diff --git a/schemas/2021-10-01/Microsoft.Compute.json b/schemas/2021-10-01/Microsoft.Compute.json index 3c782d9d57..9357e5cf7d 100644 --- a/schemas/2021-10-01/Microsoft.Compute.json +++ b/schemas/2021-10-01/Microsoft.Compute.json @@ -966,6 +966,21 @@ "GalleryImageProperties": { "type": "object", "properties": { + "architecture": { + "oneOf": [ + { + "type": "string", + "enum": [ + "x64", + "Arm64" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The architecture of the image. Applicable to OS disks only." + }, "description": { "type": "string", "description": "The description of this gallery image definition resource. This property is updatable." diff --git a/schemas/2021-12-01/Microsoft.Compute.Extensions.json b/schemas/2021-12-01/Microsoft.Compute.Extensions.json new file mode 100644 index 0000000000..4b655d6677 --- /dev/null +++ b/schemas/2021-12-01/Microsoft.Compute.Extensions.json @@ -0,0 +1,2026 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-12-01/Microsoft.Compute.Extensions.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.Compute.Extensions", + "description": "Microsoft Compute Extensions Resource Types", + "resourceDefinitions": {}, + "definitions": { + "genericExtension": { + "type": "object", + "properties": { + "publisher": { + "type": "string", + "minLength": 1, + "description": "Microsoft.Compute/extensions - Publisher" + }, + "type": { + "type": "string", + "minLength": 1, + "description": "Microsoft.Compute/extensions - Type" + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1, + "description": "Microsoft.Compute/extensions - Type handler version" + }, + "settings": { + "oneOf": [ + { + "type": "object" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Microsoft.Compute/extensions - Settings" + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "settings" + ] + }, + "iaaSDiagnostics": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Microsoft.Azure.Diagnostics" + ] + }, + "type": { + "enum": [ + "IaaSDiagnostics" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "xmlCfg": { + "type": "string" + }, + "StorageAccount": { + "type": "string" + } + }, + "required": [ + "xmlCfg", + "StorageAccount" + ] + }, + "protectedSettings": { + "type": "object", + "properties": { + "storageAccountName": { + "type": "string" + }, + "storageAccountKey": { + "type": "string" + }, + "storageAccountEndPoint": { + "type": "string" + } + }, + "required": [ + "storageAccountName", + "storageAccountKey", + "storageAccountEndPoint" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings", + "protectedSettings" + ] + }, + "iaaSAntimalware": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Microsoft.Azure.Security" + ] + }, + "type": { + "enum": [ + "IaaSAntimalware" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "AntimalwareEnabled": { + "type": "boolean" + }, + "Exclusions": { + "type": "object", + "properties": { + "Paths": { + "type": "string" + }, + "Extensions": { + "type": "string" + }, + "Processes": { + "type": "string" + } + }, + "required": [ + "Paths", + "Extensions", + "Processes" + ] + }, + "RealtimeProtectionEnabled": { + "enum": [ + "true", + "false" + ] + }, + "ScheduledScanSettings": { + "type": "object", + "properties": { + "isEnabled": { + "enum": [ + "true", + "false" + ] + }, + "scanType": { + "type": "string" + }, + "day": { + "type": "string" + }, + "time": { + "type": "string" + } + }, + "required": [ + "isEnabled", + "scanType", + "day", + "time" + ] + } + }, + "required": [ + "AntimalwareEnabled", + "Exclusions", + "RealtimeProtectionEnabled", + "ScheduledScanSettings" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings" + ] + }, + "customScriptExtension": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Microsoft.Compute" + ] + }, + "type": { + "enum": [ + "CustomScriptExtension" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "fileUris": { + "type": "array", + "items": { + "type": "string" + } + }, + "commandToExecute": { + "type": "string" + } + }, + "required": [ + "commandToExecute" + ] + }, + "protectedSettings": { + "type": "object", + "properties": { + "storageAccountName": { + "type": "string" + }, + "storageAccountKey": { + "type": "string" + } + } + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings", + "protectedSettings" + ] + }, + "customScriptForLinux": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Microsoft.OSTCExtensions" + ] + }, + "type": { + "enum": [ + "CustomScriptForLinux" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "fileUris": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "protectedSettings": { + "type": "object", + "properties": { + "commandToExecute": { + "type": "string" + }, + "storageAccountName": { + "type": "string" + }, + "storageAccountKey": { + "type": "string" + } + }, + "required": [ + "commandToExecute" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings", + "protectedSettings" + ] + }, + "linuxDiagnostic": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Microsoft.OSTCExtensions" + ] + }, + "type": { + "enum": [ + "LinuxDiagnostic" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "enableSyslog": { + "type": "string" + }, + "mdsdHttpProxy": { + "type": "string" + }, + "perCfg": { + "type": "array" + }, + "fileCfg": { + "type": "array" + }, + "xmlCfg": { + "type": "string" + }, + "ladCfg": { + "type": "object" + }, + "syslogCfg": { + "type": "string" + }, + "eventVolume": { + "type": "string" + }, + "mdsdCfg": { + "type": "string" + } + } + }, + "protectedSettings": { + "type": "object", + "properties": { + "mdsdHttpProxy": { + "type": "string" + }, + "storageAccountName": { + "type": "string" + }, + "storageAccountKey": { + "type": "string" + }, + "storageAccountEndPoint": { + "type": "string" + } + }, + "required": [ + "storageAccountName", + "storageAccountKey" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings", + "protectedSettings" + ] + }, + "vmAccessForLinux": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Microsoft.OSTCExtensions" + ] + }, + "type": { + "enum": [ + "VMAccessForLinux" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "check_disk": { + "type": "boolean" + }, + "repair_disk": { + "type": "boolean" + } + } + }, + "protectedSettings": { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "password": { + "type": "string" + }, + "ssh_key": { + "type": "string" + }, + "reset_ssh": { + "type": "string" + }, + "remove_user": { + "type": "string" + }, + "expiration": { + "type": "string" + } + }, + "required": [ + "username", + "password", + "ssh_key", + "reset_ssh", + "remove_user", + "expiration" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings", + "protectedSettings" + ] + }, + "bgInfo": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Microsoft.Compute" + ] + }, + "type": { + "enum": [ + "bginfo" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion" + ] + }, + "vmAccessAgent": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Microsoft.Compute" + ] + }, + "type": { + "enum": [ + "VMAccessAgent" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "username": { + "type": "string" + } + } + }, + "protectedSettings": { + "type": "object", + "properties": { + "password": { + "type": "string" + } + } + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings", + "protectedSettings" + ] + }, + "dscExtension": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Microsoft.Powershell" + ] + }, + "type": { + "enum": [ + "DSC" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "modulesUrl": { + "type": "string" + }, + "configurationFunction": { + "type": "string" + }, + "properties": { + "type": "string" + }, + "wmfVersion": { + "type": "string" + }, + "privacy": { + "type": "object", + "properties": { + "dataCollection": { + "type": "string" + } + } + } + }, + "required": [ + "modulesUrl", + "configurationFunction" + ] + }, + "protectedSettings": { + "type": "object", + "properties": { + "dataBlobUri": { + "type": "string" + } + } + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings", + "protectedSettings" + ] + }, + "acronisBackupLinux": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Acronis.Backup" + ] + }, + "type": { + "enum": [ + "AcronisBackupLinux" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "absURL": { + "type": "string" + } + }, + "required": [ + "absURL" + ] + }, + "protectedSettings": { + "type": "object", + "properties": { + "userLogin": { + "type": "string" + }, + "userPassword": { + "type": "string" + } + }, + "required": [ + "userLogin", + "userPassword" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings", + "protectedSettings" + ] + }, + "acronisBackup": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Acronis.Backup" + ] + }, + "type": { + "enum": [ + "AcronisBackup" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "absURL": { + "type": "string" + } + }, + "required": [ + "absURL" + ] + }, + "protectedSettings": { + "type": "object", + "properties": { + "userLogin": { + "type": "string" + }, + "userPassword": { + "type": "string" + } + }, + "required": [ + "userLogin", + "userPassword" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings", + "protectedSettings" + ] + }, + "linuxChefClient": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Chef.Bootstrap.WindowsAzure" + ] + }, + "type": { + "enum": [ + "LinuxChefClient" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "bootstrap_version": { + "type": "string" + }, + "bootstrap_options": { + "type": "object", + "properties": { + "chef_node_name": { + "type": "string" + }, + "chef_server_url": { + "type": "string" + }, + "validation_client_name": { + "type": "string" + }, + "node_ssl_verify_mode": { + "type": "string" + }, + "environment": { + "type": "string" + } + }, + "required": [ + "chef_node_name", + "chef_server_url", + "validation_client_name", + "node_ssl_verify_mode", + "environment" + ] + }, + "runlist": { + "type": "string" + }, + "client_rb": { + "type": "string" + } + } + }, + "protectedSettings": { + "type": "object", + "properties": { + "validation_key": { + "type": "string" + }, + "chef_server_crt": { + "type": "string" + }, + "secret": { + "type": "string" + } + }, + "required": [ + "validation_key", + "chef_server_crt", + "secret" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings", + "protectedSettings" + ] + }, + "chefClient": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Chef.Bootstrap.WindowsAzure" + ] + }, + "type": { + "enum": [ + "ChefClient" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "bootstrap_options": { + "type": "object", + "properties": { + "chef_node_name": { + "type": "string" + }, + "chef_server_url": { + "type": "string" + }, + "validation_client_name": { + "type": "string" + }, + "node_ssl_verify_mode": { + "type": "string" + }, + "environment": { + "type": "string" + } + }, + "required": [ + "chef_node_name", + "chef_server_url", + "validation_client_name", + "node_ssl_verify_mode", + "environment" + ] + }, + "runlist": { + "type": "string" + }, + "client_rb": { + "type": "string" + } + } + }, + "protectedSettings": { + "type": "object", + "properties": { + "validation_key": { + "type": "string" + }, + "chef_server_crt": { + "type": "string" + }, + "secret": { + "type": "string" + } + }, + "required": [ + "validation_key", + "chef_server_crt", + "secret" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings", + "protectedSettings" + ] + }, + "datadogLinuxAgent": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Datadog.Agent" + ] + }, + "type": { + "enum": [ + "DatadogLinuxAgent" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "api_key": { + "type": "string" + } + }, + "required": [ + "api_key" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings" + ] + }, + "datadogWindowsAgent": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Datadog.Agent" + ] + }, + "type": { + "enum": [ + "DatadogWindowsAgent" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "api_key": { + "type": "string" + } + }, + "required": [ + "api_key" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings" + ] + }, + "dockerExtension": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Microsoft.Azure.Extensions" + ] + }, + "type": { + "enum": [ + "DockerExtension" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "docker": { + "type": "object", + "properties": { + "port": { + "type": "string" + } + }, + "required": [ + "port" + ] + } + }, + "required": [ + "docker" + ] + }, + "protectedSettings": { + "type": "object", + "properties": { + "certs": { + "type": "object", + "properties": { + "ca": { + "type": "string" + }, + "cert": { + "type": "string" + }, + "key": { + "type": "string" + } + }, + "required": [ + "ca", + "cert", + "key" + ] + } + }, + "required": [ + "certs" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings", + "protectedSettings" + ] + }, + "dynatraceLinux": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "dynatrace.ruxit" + ] + }, + "type": { + "enum": [ + "ruxitAgentLinux" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "tenantId": { + "type": "string" + }, + "token": { + "type": "string" + } + }, + "required": [ + "tenantId", + "token" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings" + ] + }, + "dynatraceWindows": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "dynatrace.ruxit" + ] + }, + "type": { + "enum": [ + "ruxitAgentWindows" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "tenantId": { + "type": "string" + }, + "token": { + "type": "string" + } + }, + "required": [ + "tenantId", + "token" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings" + ] + }, + "eset": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "ESET" + ] + }, + "type": { + "enum": [ + "FileSecurity" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "LicenseKey": { + "type": "string" + }, + "Install-RealtimeProtection": { + "type": "boolean" + }, + "Install-ProtocolFiltering": { + "type": "boolean" + }, + "Install-DeviceControl": { + "type": "boolean" + }, + "Enable-Cloud": { + "type": "boolean" + }, + "Enable-PUA": { + "type": "boolean" + }, + "ERAAgentCfgUrl": { + "type": "string" + } + }, + "required": [ + "LicenseKey", + "Install-RealtimeProtection", + "Install-ProtocolFiltering", + "Install-DeviceControl", + "Enable-Cloud", + "Enable-PUA", + "ERAAgentCfgUrl" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings" + ] + }, + "hpeSecurityApplicationDefender": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "HPE.Security.ApplicationDefender" + ] + }, + "type": { + "enum": [ + "DotnetAgent" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "protectedSettings": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "serverURL": { + "type": "string" + } + }, + "required": [ + "key", + "serverURL" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "protectedSettings" + ] + }, + "puppetAgent": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Puppet" + ] + }, + "type": { + "enum": [ + "PuppetAgent" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "protectedSettings": { + "type": "object", + "properties": { + "PUPPET_MASTER_SERVER": { + "type": "string" + } + }, + "required": [ + "PUPPET_MASTER_SERVER" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "protectedSettings" + ] + }, + "site24x7LinuxServerExtn": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Site24x7" + ] + }, + "type": { + "enum": [ + "Site24x7LinuxServerExtn" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "site24x7AgentType": { + "enum": [ + "azurevmextnlinuxserver" + ] + } + } + }, + "protectedSettings": { + "type": "object", + "properties": { + "site24x7LicenseKey": { + "type": "string" + } + }, + "required": [ + "site24x7LicenseKey" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings", + "protectedSettings" + ] + }, + "site24x7WindowsServerExtn": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Site24x7" + ] + }, + "type": { + "enum": [ + "Site24x7WindowsServerExtn" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "site24x7AgentType": { + "enum": [ + "azurevmextnwindowsserver" + ] + } + } + }, + "protectedSettings": { + "type": "object", + "properties": { + "site24x7LicenseKey": { + "type": "string" + } + }, + "required": [ + "site24x7LicenseKey" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings", + "protectedSettings" + ] + }, + "site24x7ApmInsightExtn": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Site24x7" + ] + }, + "type": { + "enum": [ + "Site24x7ApmInsightExtn" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "site24x7AgentType": { + "enum": [ + "azurevmextnapminsightclassic" + ] + } + } + }, + "protectedSettings": { + "type": "object", + "properties": { + "site24x7LicenseKey": { + "type": "string" + } + }, + "required": [ + "site24x7LicenseKey" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings", + "protectedSettings" + ] + }, + "trendMicroDSALinux": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "TrendMicro.DeepSecurity" + ] + }, + "type": { + "enum": [ + "TrendMicroDSALinux" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "DSMname": { + "type": "string" + }, + "DSMport": { + "type": "string" + }, + "policyNameorID": { + "type": "string" + } + }, + "required": [ + "DSMname", + "DSMport" + ] + }, + "protectedSettings": { + "type": "object", + "properties": { + "tenantID": { + "type": "string" + }, + "tenantPassword": { + "type": "string" + } + }, + "required": [ + "tenantID", + "tenantPassword" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings", + "protectedSettings" + ] + }, + "trendMicroDSA": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "TrendMicro.DeepSecurity" + ] + }, + "type": { + "enum": [ + "TrendMicroDSA" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "DSMname": { + "type": "string" + }, + "DSMport": { + "type": "string" + }, + "policyNameorID": { + "type": "string" + } + }, + "required": [ + "DSMname", + "DSMport" + ] + }, + "protectedSettings": { + "type": "object", + "properties": { + "tenantID": { + "type": "string" + }, + "tenantPassword": { + "type": "string" + } + }, + "required": [ + "tenantID", + "tenantPassword" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings", + "protectedSettings" + ] + }, + "bmcCtmAgentLinux": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "ctm.bmc.com" + ] + }, + "type": { + "enum": [ + "BmcCtmAgentLinux" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "Control-M Server Name": { + "type": "string" + }, + "Agent Port": { + "type": "string" + }, + "Host Group": { + "type": "string" + }, + "User Account": { + "type": "string" + } + }, + "required": [ + "Control-M Server Name", + "Agent Port", + "Host Group", + "User Account" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings" + ] + }, + "bmcCtmAgentWindows": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "bmc.ctm" + ] + }, + "type": { + "enum": [ + "AgentWinExt" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "Control-M Server Name": { + "type": "string" + }, + "Agent Port": { + "type": "string" + }, + "Host Group": { + "type": "string" + } + }, + "required": [ + "Control-M Server Name", + "Agent Port", + "Host Group" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings" + ] + }, + "OSPatchingForLinux": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Microsoft.OSTCExtensions" + ] + }, + "type": { + "enum": [ + "OSPatchingForLinux" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "disabled": { + "type": "boolean" + }, + "stop": { + "type": "boolean" + }, + "installDuration": { + "type": "string" + }, + "intervalOfWeeks": { + "type": "number" + }, + "dayOfWeek": { + "type": "string" + }, + "startTime": { + "type": "string" + }, + "rebootAfterPatch": { + "type": "string" + }, + "category": { + "type": "string" + }, + "oneoff": { + "type": "boolean" + }, + "local": { + "type": "boolean" + }, + "idleTestScript": { + "type": "string" + }, + "healthyTestScript": { + "type": "string" + }, + "distUpgradeList": { + "type": "string" + }, + "distUpgradeAll": { + "type": "boolean" + }, + "vmStatusTest": { + "type": "object" + } + }, + "required": [ + "disabled", + "stop" + ] + }, + "protectedSettings": { + "type": "object", + "properties": { + "storageAccountName": { + "type": "string" + }, + "storageAccountKey": { + "type": "string" + } + } + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings", + "protectedSettings" + ] + }, + "VMSnapshot": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Microsoft.Azure.RecoveryServices" + ] + }, + "type": { + "enum": [ + "VMSnapshot" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "locale": { + "type": "string" + }, + "taskId": { + "type": "string" + }, + "commandToExecute": { + "type": "string" + }, + "objectStr": { + "type": "string" + }, + "logsBlobUri": { + "type": "string" + }, + "statusBlobUri": { + "type": "string" + }, + "commandStartTimeUTCTicks": { + "type": "string" + }, + "vmType": { + "type": "string" + } + }, + "required": [ + "locale", + "taskId", + "commandToExecute", + "objectStr", + "logsBlobUri", + "statusBlobUri", + "commandStartTimeUTCTicks", + "vmType" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings" + ] + }, + "VMSnapshotLinux": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Microsoft.Azure.RecoveryServices" + ] + }, + "type": { + "enum": [ + "VMSnapshotLinux" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "locale": { + "type": "string" + }, + "taskId": { + "type": "string" + }, + "commandToExecute": { + "type": "string" + }, + "objectStr": { + "type": "string" + }, + "logsBlobUri": { + "type": "string" + }, + "statusBlobUri": { + "type": "string" + }, + "commandStartTimeUTCTicks": { + "type": "string" + }, + "vmType": { + "type": "string" + } + }, + "required": [ + "locale", + "taskId", + "commandToExecute", + "objectStr", + "logsBlobUri", + "statusBlobUri", + "commandStartTimeUTCTicks", + "vmType" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings" + ] + }, + "customScript": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Microsoft.Azure.Extensions" + ] + }, + "type": { + "enum": [ + "CustomScript" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + }, + "settings": { + "type": "object", + "properties": { + "fileUris": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "fileUris" + ] + }, + "protectedSettings": { + "type": "object", + "properties": { + "storageAccountName": { + "type": "string" + }, + "storageAccountKey": { + "type": "string" + }, + "commandToExecute": { + "type": "string" + } + }, + "required": [ + "storageAccountName", + "storageAccountKey", + "commandToExecute" + ] + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion", + "settings", + "protectedSettings" + ] + }, + "networkWatcherAgentWindows": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Microsoft.Azure.NetworkWatcher" + ] + }, + "type": { + "enum": [ + "NetworkWatcherAgentWindows" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion" + ] + }, + "networkWatcherAgentLinux": { + "type": "object", + "properties": { + "publisher": { + "enum": [ + "Microsoft.Azure.NetworkWatcher" + ] + }, + "type": { + "enum": [ + "NetworkWatcherAgentLinux" + ] + }, + "typeHandlerVersion": { + "type": "string", + "minLength": 1 + }, + "autoUpgradeMinorVersion": { + "type": "boolean" + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion", + "autoUpgradeMinorVersion" + ] + } + } +} \ No newline at end of file diff --git a/schemas/2021-12-01/Microsoft.Compute.json b/schemas/2021-12-01/Microsoft.Compute.json new file mode 100644 index 0000000000..afa8f777b0 --- /dev/null +++ b/schemas/2021-12-01/Microsoft.Compute.json @@ -0,0 +1,1486 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-12-01/Microsoft.Compute.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.Compute", + "description": "Microsoft Compute Resource Types", + "resourceDefinitions": { + "diskAccesses": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-12-01" + ] + }, + "extendedLocation": { + "oneOf": [ + { + "$ref": "#/definitions/ExtendedLocation" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The complex type of the extended location." + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "type": "string", + "description": "The name of the disk access resource that is being created. The name can't be changed after the disk encryption set is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DiskAccessProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/diskAccesses_privateEndpointConnections_childResource" + } + ] + } + }, + "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.Compute/diskAccesses" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.Compute/diskAccesses" + }, + "diskAccesses_privateEndpointConnections": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-12-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the private endpoint connection." + }, + "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.Compute/diskAccesses/privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Compute/diskAccesses/privateEndpointConnections" + }, + "diskEncryptionSets": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-12-01" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/EncryptionSetIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The managed identity for the disk encryption set. It should be given permission on the key vault before it can be used to encrypt disks." + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "type": "string", + "description": "The name of the disk encryption set that is being created. The name can't be changed after the disk encryption set is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/EncryptionSetProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "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.Compute/diskEncryptionSets" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.Compute/diskEncryptionSets" + }, + "disks": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-12-01" + ] + }, + "extendedLocation": { + "oneOf": [ + { + "$ref": "#/definitions/ExtendedLocation" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The complex type of the extended location." + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "type": "string", + "description": "The name of the managed disk that is being created. The name can't be changed after the disk is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DiskProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Disk resource properties." + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/DiskSku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The disks sku name. Can be Standard_LRS, Premium_LRS, StandardSSD_LRS, UltraSSD_LRS, Premium_ZRS, or StandardSSD_ZRS." + }, + "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.Compute/disks" + ] + }, + "zones": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Logical zone list for Disk." + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.Compute/disks" + }, + "snapshots": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-12-01" + ] + }, + "extendedLocation": { + "oneOf": [ + { + "$ref": "#/definitions/ExtendedLocation" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The complex type of the extended location." + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "type": "string", + "description": "The name of the snapshot that is being created. The name can't be changed after the snapshot is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The max name length is 80 characters." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SnapshotProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Snapshot resource properties." + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/SnapshotSku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The snapshots sku name. Can be Standard_LRS, Premium_LRS, or Standard_ZRS. This is an optional parameter for incremental snapshot and the default behavior is the SKU will be set to the same sku as the previous snapshot" + }, + "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.Compute/snapshots" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.Compute/snapshots" + } + }, + "definitions": { + "CreationData": { + "type": "object", + "properties": { + "createOption": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Empty", + "Attach", + "FromImage", + "Import", + "Copy", + "Restore", + "Upload", + "CopyStart", + "ImportSecure", + "UploadPreparedSecure" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This enumerates the possible sources of a disk's creation." + }, + "galleryImageReference": { + "oneOf": [ + { + "$ref": "#/definitions/ImageDiskReference" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The source image used for creating the disk." + }, + "imageReference": { + "oneOf": [ + { + "$ref": "#/definitions/ImageDiskReference" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The source image used for creating the disk." + }, + "logicalSectorSize": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Logical sector size in bytes for Ultra disks. Supported values are 512 ad 4096. 4096 is the default." + }, + "securityDataUri": { + "type": "string", + "description": "If createOption is ImportSecure, this is the URI of a blob to be imported into VM guest state." + }, + "sourceResourceId": { + "type": "string", + "description": "If createOption is Copy, this is the ARM id of the source snapshot or disk." + }, + "sourceUri": { + "type": "string", + "description": "If createOption is Import, this is the URI of a blob to be imported into a managed disk." + }, + "storageAccountId": { + "type": "string", + "description": "Required if createOption is Import. The Azure Resource Manager identifier of the storage account containing the blob to import as a disk." + }, + "uploadSizeBytes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If createOption is Upload, this is the size of the contents of the upload including the VHD footer. This value should be between 20972032 (20 MiB + 512 bytes for the VHD footer) and 35183298347520 bytes (32 TiB + 512 bytes for the VHD footer)." + } + }, + "required": [ + "createOption" + ], + "description": "Data used when creating a disk." + }, + "diskAccesses_privateEndpointConnections_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-12-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the private endpoint connection." + }, + "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.Compute/diskAccesses/privateEndpointConnections" + }, + "DiskAccessProperties": { + "type": "object", + "properties": {} + }, + "DiskProperties": { + "type": "object", + "properties": { + "burstingEnabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Set to true to enable bursting beyond the provisioned performance target of the disk. Bursting is disabled by default. Does not apply to Ultra disks." + }, + "completionPercent": { + "oneOf": [ + { + "type": "number" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Percentage complete for the background copy when a resource is created via the CopyStart operation." + }, + "creationData": { + "oneOf": [ + { + "$ref": "#/definitions/CreationData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Data used when creating a disk." + }, + "dataAccessAuthMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "AzureActiveDirectory", + "None" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "diskAccessId": { + "type": "string", + "description": "ARM id of the DiskAccess resource for using private endpoints on disks." + }, + "diskIOPSReadOnly": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The total number of IOPS that will be allowed across all VMs mounting the shared disk as ReadOnly. One operation can transfer between 4k and 256k bytes." + }, + "diskIOPSReadWrite": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes." + }, + "diskMBpsReadOnly": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The total throughput (MBps) that will be allowed across all VMs mounting the shared disk as ReadOnly. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10." + }, + "diskMBpsReadWrite": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10." + }, + "diskSizeGB": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "diskState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Unattached", + "Attached", + "Reserved", + "Frozen", + "ActiveSAS", + "ActiveSASFrozen", + "ReadyToUpload", + "ActiveUpload" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The state of the disk." + }, + "encryption": { + "oneOf": [ + { + "$ref": "#/definitions/Encryption" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Encryption at rest settings for disk or snapshot" + }, + "encryptionSettingsCollection": { + "oneOf": [ + { + "$ref": "#/definitions/EncryptionSettingsCollection" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Encryption settings for disk or snapshot" + }, + "hyperVGeneration": { + "oneOf": [ + { + "type": "string", + "enum": [ + "V1", + "V2" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The hypervisor generation of the Virtual Machine. Applicable to OS disks only." + }, + "maxShares": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum number of VMs that can attach to the disk at the same time. Value greater than one indicates a disk that can be mounted on multiple VMs at the same time." + }, + "networkAccessPolicy": { + "oneOf": [ + { + "type": "string", + "enum": [ + "AllowAll", + "AllowPrivate", + "DenyAll" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "osType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Windows", + "Linux" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Operating System type." + }, + "publicNetworkAccess": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "purchasePlan": { + "oneOf": [ + { + "$ref": "#/definitions/PurchasePlan" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Used for establishing the purchase context of any 3rd Party artifact through MarketPlace." + }, + "securityProfile": { + "oneOf": [ + { + "$ref": "#/definitions/DiskSecurityProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Contains the security related information for the resource." + }, + "supportedCapabilities": { + "oneOf": [ + { + "$ref": "#/definitions/SupportedCapabilities" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of supported capabilities persisted on the disk resource for VM use." + }, + "supportsHibernation": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates the OS on a disk supports hibernation." + }, + "tier": { + "type": "string", + "description": "Performance tier of the disk (e.g, P4, S10) as described here: https://azure.microsoft.com/en-us/pricing/details/managed-disks/. Does not apply to Ultra disks." + } + }, + "required": [ + "creationData" + ], + "description": "Disk resource properties." + }, + "DiskSecurityProfile": { + "type": "object", + "properties": { + "secureVMDiskEncryptionSetId": { + "type": "string", + "description": "ResourceId of the disk encryption set associated to Confidential VM supported disk encrypted with customer managed key" + }, + "securityType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "TrustedLaunch", + "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey", + "ConfidentialVM_DiskEncryptedWithPlatformKey", + "ConfidentialVM_DiskEncryptedWithCustomerKey" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "description": "Contains the security related information for the resource." + }, + "DiskSku": { + "type": "object", + "properties": { + "name": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS", + "UltraSSD_LRS", + "Premium_ZRS", + "StandardSSD_ZRS" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The sku name." + } + }, + "description": "The disks sku name. Can be Standard_LRS, Premium_LRS, StandardSSD_LRS, UltraSSD_LRS, Premium_ZRS, or StandardSSD_ZRS." + }, + "Encryption": { + "type": "object", + "properties": { + "diskEncryptionSetId": { + "type": "string", + "description": "ResourceId of the disk encryption set to use for enabling encryption at rest." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "EncryptionAtRestWithPlatformKey", + "EncryptionAtRestWithCustomerKey", + "EncryptionAtRestWithPlatformAndCustomerKeys" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "description": "Encryption at rest settings for disk or snapshot" + }, + "EncryptionSetIdentity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SystemAssigned", + "None" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of Managed Identity used by the DiskEncryptionSet. Only SystemAssigned is supported for new creations. Disk Encryption Sets can be updated with Identity type None during migration of subscription to a new Azure Active Directory tenant; it will cause the encrypted resources to lose access to the keys." + } + }, + "description": "The managed identity for the disk encryption set. It should be given permission on the key vault before it can be used to encrypt disks." + }, + "EncryptionSetProperties": { + "type": "object", + "properties": { + "activeKey": { + "oneOf": [ + { + "$ref": "#/definitions/KeyForDiskEncryptionSet" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Key Vault Key Url to be used for server side encryption of Managed Disks and Snapshots" + }, + "encryptionType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "EncryptionAtRestWithCustomerKey", + "EncryptionAtRestWithPlatformAndCustomerKeys", + "ConfidentialVmEncryptedWithCustomerKey" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "rotationToLatestKeyVersionEnabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Set this flag to true to enable auto-updating of this disk encryption set to the latest key version." + } + } + }, + "EncryptionSettingsCollection": { + "type": "object", + "properties": { + "enabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Set this flag to true and provide DiskEncryptionKey and optional KeyEncryptionKey to enable encryption. Set this flag to false and remove DiskEncryptionKey and KeyEncryptionKey to disable encryption. If EncryptionSettings is null in the request object, the existing settings remain unchanged." + }, + "encryptionSettings": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/EncryptionSettingsElement" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A collection of encryption settings, one for each disk volume." + }, + "encryptionSettingsVersion": { + "type": "string", + "description": "Describes what type of encryption is used for the disks. Once this field is set, it cannot be overwritten. '1.0' corresponds to Azure Disk Encryption with AAD app.'1.1' corresponds to Azure Disk Encryption." + } + }, + "required": [ + "enabled" + ], + "description": "Encryption settings for disk or snapshot" + }, + "EncryptionSettingsElement": { + "type": "object", + "properties": { + "diskEncryptionKey": { + "oneOf": [ + { + "$ref": "#/definitions/KeyVaultAndSecretReference" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Key Vault Secret Url and vault id of the encryption key " + }, + "keyEncryptionKey": { + "oneOf": [ + { + "$ref": "#/definitions/KeyVaultAndKeyReference" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Key Vault Key Url and vault id of KeK, KeK is optional and when provided is used to unwrap the encryptionKey" + } + }, + "description": "Encryption settings for one disk volume." + }, + "ExtendedLocation": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the extended location." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "EdgeZone" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of the extended location." + } + }, + "description": "The complex type of the extended location." + }, + "ImageDiskReference": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "A relative uri containing either a Platform Image Repository or user image reference." + }, + "lun": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If the disk is created from an image's data disk, this is an index that indicates which of the data disks in the image to use. For OS disks, this field is null." + } + }, + "required": [ + "id" + ], + "description": "The source image used for creating the disk." + }, + "KeyForDiskEncryptionSet": { + "type": "object", + "properties": { + "keyUrl": { + "type": "string", + "description": "Fully versioned Key Url pointing to a key in KeyVault. Version segment of the Url is required regardless of rotationToLatestKeyVersionEnabled value." + }, + "sourceVault": { + "oneOf": [ + { + "$ref": "#/definitions/SourceVault" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The vault id is an Azure Resource Manager Resource id in the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}" + } + }, + "required": [ + "keyUrl" + ], + "description": "Key Vault Key Url to be used for server side encryption of Managed Disks and Snapshots" + }, + "KeyVaultAndKeyReference": { + "type": "object", + "properties": { + "keyUrl": { + "type": "string", + "description": "Url pointing to a key or secret in KeyVault" + }, + "sourceVault": { + "oneOf": [ + { + "$ref": "#/definitions/SourceVault" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The vault id is an Azure Resource Manager Resource id in the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}" + } + }, + "required": [ + "keyUrl", + "sourceVault" + ], + "description": "Key Vault Key Url and vault id of KeK, KeK is optional and when provided is used to unwrap the encryptionKey" + }, + "KeyVaultAndSecretReference": { + "type": "object", + "properties": { + "secretUrl": { + "type": "string", + "description": "Url pointing to a key or secret in KeyVault" + }, + "sourceVault": { + "oneOf": [ + { + "$ref": "#/definitions/SourceVault" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The vault id is an Azure Resource Manager Resource id in the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}" + } + }, + "required": [ + "secretUrl", + "sourceVault" + ], + "description": "Key Vault Secret Url and vault id of the encryption key " + }, + "PrivateEndpointConnectionProperties": { + "type": "object", + "properties": { + "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." + }, + "PurchasePlan": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The plan ID." + }, + "product": { + "type": "string", + "description": "Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element." + }, + "promotionCode": { + "type": "string", + "description": "The Offer Promotion Code." + }, + "publisher": { + "type": "string", + "description": "The publisher ID." + } + }, + "required": [ + "name", + "product", + "publisher" + ], + "description": "Used for establishing the purchase context of any 3rd Party artifact through MarketPlace." + }, + "SnapshotProperties": { + "type": "object", + "properties": { + "completionPercent": { + "oneOf": [ + { + "type": "number" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Percentage complete for the background copy when a resource is created via the CopyStart operation." + }, + "creationData": { + "oneOf": [ + { + "$ref": "#/definitions/CreationData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Data used when creating a disk." + }, + "dataAccessAuthMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "AzureActiveDirectory", + "None" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "diskAccessId": { + "type": "string", + "description": "ARM id of the DiskAccess resource for using private endpoints on disks." + }, + "diskSizeGB": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "diskState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Unattached", + "Attached", + "Reserved", + "Frozen", + "ActiveSAS", + "ActiveSASFrozen", + "ReadyToUpload", + "ActiveUpload" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The state of the snapshot." + }, + "encryption": { + "oneOf": [ + { + "$ref": "#/definitions/Encryption" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Encryption at rest settings for disk or snapshot" + }, + "encryptionSettingsCollection": { + "oneOf": [ + { + "$ref": "#/definitions/EncryptionSettingsCollection" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Encryption settings for disk or snapshot" + }, + "hyperVGeneration": { + "oneOf": [ + { + "type": "string", + "enum": [ + "V1", + "V2" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The hypervisor generation of the Virtual Machine. Applicable to OS disks only." + }, + "incremental": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether a snapshot is incremental. Incremental snapshots on the same disk occupy less space than full snapshots and can be diffed." + }, + "networkAccessPolicy": { + "oneOf": [ + { + "type": "string", + "enum": [ + "AllowAll", + "AllowPrivate", + "DenyAll" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "osType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Windows", + "Linux" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Operating System type." + }, + "publicNetworkAccess": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "purchasePlan": { + "oneOf": [ + { + "$ref": "#/definitions/PurchasePlan" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Used for establishing the purchase context of any 3rd Party artifact through MarketPlace." + }, + "securityProfile": { + "oneOf": [ + { + "$ref": "#/definitions/DiskSecurityProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Contains the security related information for the resource." + }, + "supportedCapabilities": { + "oneOf": [ + { + "$ref": "#/definitions/SupportedCapabilities" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of supported capabilities persisted on the disk resource for VM use." + }, + "supportsHibernation": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates the OS on a snapshot supports hibernation." + } + }, + "required": [ + "creationData" + ], + "description": "Snapshot resource properties." + }, + "SnapshotSku": { + "type": "object", + "properties": { + "name": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "Standard_ZRS" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The sku name." + } + }, + "description": "The snapshots sku name. Can be Standard_LRS, Premium_LRS, or Standard_ZRS. This is an optional parameter for incremental snapshot and the default behavior is the SKU will be set to the same sku as the previous snapshot" + }, + "SourceVault": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource Id" + } + }, + "description": "The vault id is an Azure Resource Manager Resource id in the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}" + }, + "SupportedCapabilities": { + "type": "object", + "properties": { + "acceleratedNetwork": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "True if the image from which the OS disk is created supports accelerated networking." + }, + "architecture": { + "oneOf": [ + { + "type": "string", + "enum": [ + "x64", + "Arm64" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "CPU architecture supported by an OS disk." + } + }, + "description": "List of supported capabilities persisted on the disk resource for VM use." + } + } +} \ No newline at end of file diff --git a/schemas/2022-01-01-preview/Microsoft.App.json b/schemas/2022-01-01-preview/Microsoft.App.json index b2fd12be35..85a1b50646 100644 --- a/schemas/2022-01-01-preview/Microsoft.App.json +++ b/schemas/2022-01-01-preview/Microsoft.App.json @@ -1957,17 +1957,6 @@ ], "description": "The configuration settings of the Google provider." }, - "legacyMicrosoftAccount": { - "oneOf": [ - { - "$ref": "#/definitions/LegacyMicrosoftAccount" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The configuration settings of the legacy Microsoft Account provider." - }, "twitter": { "oneOf": [ { @@ -2066,60 +2055,6 @@ }, "description": "Container App Ingress configuration." }, - "LegacyMicrosoftAccount": { - "type": "object", - "properties": { - "login": { - "oneOf": [ - { - "$ref": "#/definitions/LoginScopes" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The configuration settings of the login flow, including the scopes that should be requested." - }, - "registration": { - "oneOf": [ - { - "$ref": "#/definitions/ClientRegistration" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The configuration settings of the app registration for providers that have client ids and client secrets" - }, - "state": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Enabled", - "Disabled" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Disabled if the legacy Microsoft Account provider should not be enabled despite the set registration; otherwise, Enabled." - }, - "validation": { - "oneOf": [ - { - "$ref": "#/definitions/AllowedAudiencesValidation" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The configuration settings of the Allowed Audiences validation flow." - } - }, - "description": "The configuration settings of the legacy Microsoft Account provider." - }, "LogAnalyticsConfiguration": { "type": "object", "properties": { diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index 1ebb5eb06c..60fbe8b21e 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -4054,6 +4054,21 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-11-01/Microsoft.Compute.json#/resourceDefinitions/virtualMachineScaleSets_virtualMachines_runCommands" }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-12-01/Microsoft.Compute.json#/resourceDefinitions/diskAccesses" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-12-01/Microsoft.Compute.json#/resourceDefinitions/diskAccesses_privateEndpointConnections" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-12-01/Microsoft.Compute.json#/resourceDefinitions/diskEncryptionSets" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-12-01/Microsoft.Compute.json#/resourceDefinitions/disks" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-12-01/Microsoft.Compute.json#/resourceDefinitions/snapshots" + }, { "$ref": "https://schema.management.azure.com/schemas/2020-12-01-preview/Microsoft.ConfidentialLedger.json#/resourceDefinitions/ledgers" }, From cab5c8b91158b56741b1a256f8c73ff81275bcea Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Fri, 25 Feb 2022 09:05:30 +0000 Subject: [PATCH 11/29] Update resource list --- generator/resources.json | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index dd8c03187c..7fedd8821a 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -1718,13 +1718,15 @@ "2020-09-30", "2020-12-01", "2021-04-01", - "2021-08-01" + "2021-08-01", + "2021-12-01" ], "Microsoft.Compute/diskAccesses/privateEndpointConnections": [ "2020-09-30", "2020-12-01", "2021-04-01", - "2021-08-01" + "2021-08-01", + "2021-12-01" ], "Microsoft.Compute/diskEncryptionSets": [ "2019-07-01", @@ -1734,7 +1736,8 @@ "2020-09-30", "2020-12-01", "2021-04-01", - "2021-08-01" + "2021-08-01", + "2021-12-01" ], "Microsoft.Compute/disks": [ "2016-04-30-preview", @@ -1750,7 +1753,8 @@ "2020-09-30", "2020-12-01", "2021-04-01", - "2021-08-01" + "2021-08-01", + "2021-12-01" ], "Microsoft.Compute/galleries": [ "2018-06-01", @@ -1874,7 +1878,8 @@ "2020-09-30", "2020-12-01", "2021-04-01", - "2021-08-01" + "2021-08-01", + "2021-12-01" ], "Microsoft.Compute/sshPublicKeys": [ "2019-12-01", From ab4de7e1992a9b56d1c029ddc7dc635a93a20051 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Fri, 25 Feb 2022 14:01:41 +0000 Subject: [PATCH 12/29] Generated report --- onboarded-report/result.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/onboarded-report/result.json b/onboarded-report/result.json index d42cef4825..683fbeebfe 100644 --- a/onboarded-report/result.json +++ b/onboarded-report/result.json @@ -775,6 +775,12 @@ "missing": [], "onboarded": [] }, + { + "basePath": "mobilenetwork/resource-manager", + "onboardedToAutogen": "yes", + "missing": [], + "onboarded": [] + }, { "basePath": "monitor/resource-manager", "onboardedToAutogen": "yes", From 76a6ae5cc6ab51b1198fb772c08cb2db37110725 Mon Sep 17 00:00:00 2001 From: Jorge Cotillo Date: Fri, 25 Feb 2022 09:59:53 -0800 Subject: [PATCH 13/29] update action - generate temp branch --- .github/workflows/generate-schemas-batch.yml | 27 +++++++++++++------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/.github/workflows/generate-schemas-batch.yml b/.github/workflows/generate-schemas-batch.yml index 5fa8a58c31..790c661656 100644 --- a/.github/workflows/generate-schemas-batch.yml +++ b/.github/workflows/generate-schemas-batch.yml @@ -13,6 +13,7 @@ env: SUMMARY_LOG_PATH: /tmp/summary/summary.log SUMMARY_LOG_ARTIFACT_NAME: summary-log AUTOGENERATE_BRANCH_NAME: autogenerate + TEMP_AUTOGENERATE_BRANCH_NAME: ${{ env.AUTOGENERATE_BRANCH_NAME }}_TMP AUTHOR: ${{ github.actor }} AUTHOR_EMAIL: ${{ github.actor }}@users.noreply.github.com jobs: @@ -21,6 +22,8 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2.3.5 + with: + ref: ${{ env.AUTOGENERATE_BRANCH_NAME }} - name: Clone azure-rest-api-specs uses: actions/checkout@v2.3.5 @@ -45,9 +48,9 @@ jobs: - name: Commit changes uses: EndBug/add-and-commit@v7 with: - default_author: user_info + default_author: github_actor message: 'Autogenerate schemas batch 0' - add: '*.*' + new_branch: ${{ env.TEMP_AUTOGENERATE_BRANCH_NAME }} - name: Upload summary log uses: actions/upload-artifact@v2 @@ -60,6 +63,8 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2.3.5 + with: + ref: ${{ env.TEMP_AUTOGENERATE_BRANCH_NAME }} - name: Clone azure-rest-api-specs uses: actions/checkout@v2.3.5 @@ -87,9 +92,9 @@ jobs: - name: Commit changes uses: EndBug/add-and-commit@v7 with: - default_author: user_info + default_author: github_actor message: 'Autogenerate schemas batch 1' - add: '*.*' + new_branch: ${{ env.TEMP_AUTOGENERATE_BRANCH_NAME }} - name: Upload summary log uses: actions/upload-artifact@v2 @@ -102,6 +107,8 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2.3.5 + with: + ref: ${{ env.TEMP_AUTOGENERATE_BRANCH_NAME }} - name: Clone azure-rest-api-specs uses: actions/checkout@v2.3.5 @@ -129,9 +136,9 @@ jobs: - name: Commit changes uses: EndBug/add-and-commit@v7 with: - default_author: user_info + default_author: github_actor message: 'Autogenerate schemas batch 2' - add: '*.*' + new_branch: ${{ env.TEMP_AUTOGENERATE_BRANCH_NAME }} - name: Upload summary log uses: actions/upload-artifact@v2 @@ -144,6 +151,8 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2.3.5 + with: + ref: ${{ env.TEMP_AUTOGENERATE_BRANCH_NAME }} - name: Clone azure-rest-api-specs uses: actions/checkout@v2.3.5 @@ -185,10 +194,10 @@ jobs: uses: peter-evans/create-pull-request@v3.12.1 with: committer: GitHub - author: ${{ github.actor }} <${{ github.actor }}@users.noreply.github.com> + author: ${{ env.AUTHOR }} <${{ env.AUTHOR_EMAIL }}> signoff: false - branch: ${{ env.AUTOGENERATE_BRANCH_NAME }}_tmp - branch-suffix: short-commit-hash + branch: ${{ env.TEMP_AUTOGENERATE_BRANCH_NAME }} + base: ${{ env.AUTOGENERATE_BRANCH_NAME }} delete-branch: true title: | Update Generated Schemas ${{ github.event.inputs.single_path && format('(single path: {0})', github.event.inputs.single_path) || '' }} From df882e2c915f444403f0fbe4414aff3755814107 Mon Sep 17 00:00:00 2001 From: Jorge Cotillo Date: Fri, 25 Feb 2022 10:10:03 -0800 Subject: [PATCH 14/29] fixed env var --- .github/workflows/generate-schemas-batch.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/generate-schemas-batch.yml b/.github/workflows/generate-schemas-batch.yml index 790c661656..7a22ad694b 100644 --- a/.github/workflows/generate-schemas-batch.yml +++ b/.github/workflows/generate-schemas-batch.yml @@ -13,7 +13,7 @@ env: SUMMARY_LOG_PATH: /tmp/summary/summary.log SUMMARY_LOG_ARTIFACT_NAME: summary-log AUTOGENERATE_BRANCH_NAME: autogenerate - TEMP_AUTOGENERATE_BRANCH_NAME: ${{ env.AUTOGENERATE_BRANCH_NAME }}_TMP + TEMP_AUTOGENERATE_BRANCH_NAME: autogenerate_tmp AUTHOR: ${{ github.actor }} AUTHOR_EMAIL: ${{ github.actor }}@users.noreply.github.com jobs: From b8c812466697c0e22287b086c64bb64333bde60f Mon Sep 17 00:00:00 2001 From: Jorge Cotillo Date: Fri, 25 Feb 2022 12:32:50 -0800 Subject: [PATCH 15/29] upgrade endbug version --- .github/workflows/generate-schemas-batch.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/generate-schemas-batch.yml b/.github/workflows/generate-schemas-batch.yml index 7a22ad694b..b857c86785 100644 --- a/.github/workflows/generate-schemas-batch.yml +++ b/.github/workflows/generate-schemas-batch.yml @@ -46,7 +46,7 @@ jobs: working-directory: generator - name: Commit changes - uses: EndBug/add-and-commit@v7 + uses: EndBug/add-and-commit@v8 with: default_author: github_actor message: 'Autogenerate schemas batch 0' @@ -90,7 +90,7 @@ jobs: working-directory: generator - name: Commit changes - uses: EndBug/add-and-commit@v7 + uses: EndBug/add-and-commit@v8 with: default_author: github_actor message: 'Autogenerate schemas batch 1' @@ -134,7 +134,7 @@ jobs: working-directory: generator - name: Commit changes - uses: EndBug/add-and-commit@v7 + uses: EndBug/add-and-commit@v8 with: default_author: github_actor message: 'Autogenerate schemas batch 2' From e39e1e825872d6473ffc03dab530f4a5f926d4de Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Sat, 26 Feb 2022 10:37:52 +0000 Subject: [PATCH 16/29] Autogenerate schemas --- .../subscriptionDeploymentTemplate.json | 3 + schemas/2022-01-01/Microsoft.Peering.json | 1031 +++++++++++++++++ schemas/common/autogeneratedResources.json | 18 + 3 files changed, 1052 insertions(+) create mode 100644 schemas/2022-01-01/Microsoft.Peering.json diff --git a/schemas/2018-05-01/subscriptionDeploymentTemplate.json b/schemas/2018-05-01/subscriptionDeploymentTemplate.json index a73b990233..e66603fa87 100644 --- a/schemas/2018-05-01/subscriptionDeploymentTemplate.json +++ b/schemas/2018-05-01/subscriptionDeploymentTemplate.json @@ -977,6 +977,9 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-06-01/Microsoft.Peering.json#/subscription_resourceDefinitions/peerAsns" }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01/Microsoft.Peering.json#/subscription_resourceDefinitions/peerAsns" + }, { "$ref": "https://schema.management.azure.com/schemas/2018-07-01-preview/Microsoft.PolicyInsights.json#/subscription_resourceDefinitions/remediations" }, diff --git a/schemas/2022-01-01/Microsoft.Peering.json b/schemas/2022-01-01/Microsoft.Peering.json new file mode 100644 index 0000000000..84ad3e564b --- /dev/null +++ b/schemas/2022-01-01/Microsoft.Peering.json @@ -0,0 +1,1031 @@ +{ + "id": "https://schema.management.azure.com/schemas/2022-01-01/Microsoft.Peering.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.Peering", + "description": "Microsoft Peering Resource Types", + "resourceDefinitions": { + "peerings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "kind": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Direct", + "Exchange" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The kind of the peering." + }, + "location": { + "type": "string", + "description": "The location of the resource." + }, + "name": { + "type": "string", + "description": "The name of the peering." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PeeringProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties that define connectivity to the Microsoft Cloud Edge." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/peerings_registeredAsns_childResource" + }, + { + "$ref": "#/definitions/peerings_registeredPrefixes_childResource" + } + ] + } + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/PeeringSku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The SKU that defines the tier and kind of the peering." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Peering/peerings" + ] + } + }, + "required": [ + "apiVersion", + "kind", + "location", + "name", + "properties", + "sku", + "type" + ], + "description": "Microsoft.Peering/peerings" + }, + "peeringServices": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "location": { + "type": "string", + "description": "The location of the resource." + }, + "name": { + "type": "string", + "description": "The name of the peering service." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PeeringServiceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties that define connectivity to the Peering Service." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/peeringServices_connectionMonitorTests_childResource" + }, + { + "$ref": "#/definitions/peeringServices_prefixes_childResource" + } + ] + } + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/PeeringServiceSku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The SKU that defines the type of the peering service." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Peering/peeringServices" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.Peering/peeringServices" + }, + "peeringServices_connectionMonitorTests": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the connection monitor test" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ConnectionMonitorTestProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties that define a Connection Monitor Test." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Peering/peeringServices/connectionMonitorTests" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Peering/peeringServices/connectionMonitorTests" + }, + "peeringServices_prefixes": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the prefix." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PeeringServicePrefixProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The peering service prefix properties class." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Peering/peeringServices/prefixes" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Peering/peeringServices/prefixes" + }, + "peerings_registeredAsns": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the ASN." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PeeringRegisteredAsnProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties that define a registered ASN." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Peering/peerings/registeredAsns" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Peering/peerings/registeredAsns" + }, + "peerings_registeredPrefixes": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the registered prefix." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PeeringRegisteredPrefixProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties that define a registered prefix." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Peering/peerings/registeredPrefixes" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Peering/peerings/registeredPrefixes" + } + }, + "subscription_resourceDefinitions": { + "peerAsns": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "name": { + "type": "string", + "description": "The peer ASN name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PeerAsnProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties that define a peer's ASN." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Peering/peerAsns" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Peering/peerAsns" + } + }, + "definitions": { + "BgpSession": { + "type": "object", + "properties": { + "maxPrefixesAdvertisedV4": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum number of prefixes advertised over the IPv4 session." + }, + "maxPrefixesAdvertisedV6": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum number of prefixes advertised over the IPv6 session." + }, + "md5AuthenticationKey": { + "type": "string", + "description": "The MD5 authentication key of the session." + }, + "microsoftSessionIPv4Address": { + "type": "string", + "description": "The IPv4 session address on Microsoft's end." + }, + "microsoftSessionIPv6Address": { + "type": "string", + "description": "The IPv6 session address on Microsoft's end." + }, + "peerSessionIPv4Address": { + "type": "string", + "description": "The IPv4 session address on peer's end." + }, + "peerSessionIPv6Address": { + "type": "string", + "description": "The IPv6 session address on peer's end." + }, + "sessionPrefixV4": { + "type": "string", + "description": "The IPv4 prefix that contains both ends' IPv4 addresses." + }, + "sessionPrefixV6": { + "type": "string", + "description": "The IPv4 prefix that contains both ends' IPv4 addresses." + } + }, + "description": "The properties that define a BGP session." + }, + "ConnectionMonitorTestProperties": { + "type": "object", + "properties": { + "destination": { + "type": "string", + "description": "The Connection Monitor test destination" + }, + "destinationPort": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Connection Monitor test destination port" + }, + "sourceAgent": { + "type": "string", + "description": "The Connection Monitor test source agent" + }, + "testFrequencyInSec": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Connection Monitor test frequency in seconds" + } + }, + "description": "The properties that define a Connection Monitor Test." + }, + "ContactDetail": { + "type": "object", + "properties": { + "email": { + "type": "string", + "description": "The e-mail address of the contact." + }, + "phone": { + "type": "string", + "description": "The phone number of the contact." + }, + "role": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Noc", + "Policy", + "Technical", + "Service", + "Escalation", + "Other" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The role of the contact." + } + }, + "description": "The contact detail class." + }, + "DirectConnection": { + "type": "object", + "properties": { + "bandwidthInMbps": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The bandwidth of the connection." + }, + "bgpSession": { + "oneOf": [ + { + "$ref": "#/definitions/BgpSession" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties that define a BGP session." + }, + "connectionIdentifier": { + "type": "string", + "description": "The unique identifier (GUID) for the connection." + }, + "peeringDBFacilityId": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The PeeringDB.com ID of the facility at which the connection has to be set up." + }, + "sessionAddressProvider": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Microsoft", + "Peer" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The field indicating if Microsoft provides session ip addresses." + }, + "useForPeeringService": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The flag that indicates whether or not the connection is used for peering service." + } + }, + "description": "The properties that define a direct connection." + }, + "ExchangeConnection": { + "type": "object", + "properties": { + "bgpSession": { + "oneOf": [ + { + "$ref": "#/definitions/BgpSession" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties that define a BGP session." + }, + "connectionIdentifier": { + "type": "string", + "description": "The unique identifier (GUID) for the connection." + }, + "peeringDBFacilityId": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The PeeringDB.com ID of the facility at which the connection has to be set up." + } + }, + "description": "The properties that define an exchange connection." + }, + "LogAnalyticsWorkspaceProperties": { + "type": "object", + "properties": {}, + "description": "The properties that define a Log Analytics Workspace." + }, + "PeerAsnProperties": { + "type": "object", + "properties": { + "peerAsn": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Autonomous System Number (ASN) of the peer." + }, + "peerContactDetail": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ContactDetail" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The contact details of the peer." + }, + "peerName": { + "type": "string", + "description": "The name of the peer." + } + }, + "description": "The properties that define a peer's ASN." + }, + "PeeringProperties": { + "type": "object", + "properties": { + "direct": { + "oneOf": [ + { + "$ref": "#/definitions/PeeringPropertiesDirect" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties that define a direct peering." + }, + "exchange": { + "oneOf": [ + { + "$ref": "#/definitions/PeeringPropertiesExchange" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties that define an exchange peering." + }, + "peeringLocation": { + "type": "string", + "description": "The location of the peering." + } + }, + "description": "The properties that define connectivity to the Microsoft Cloud Edge." + }, + "PeeringPropertiesDirect": { + "type": "object", + "properties": { + "connections": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/DirectConnection" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The set of connections that constitute a direct peering." + }, + "directPeeringType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Edge", + "Transit", + "Cdn", + "Internal", + "Ix", + "IxRs", + "Voice", + "EdgeZoneForOperators" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of direct peering." + }, + "peerAsn": { + "oneOf": [ + { + "$ref": "#/definitions/SubResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The sub resource." + } + }, + "description": "The properties that define a direct peering." + }, + "PeeringPropertiesExchange": { + "type": "object", + "properties": { + "connections": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ExchangeConnection" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The set of connections that constitute an exchange peering." + }, + "peerAsn": { + "oneOf": [ + { + "$ref": "#/definitions/SubResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The sub resource." + } + }, + "description": "The properties that define an exchange peering." + }, + "PeeringRegisteredAsnProperties": { + "type": "object", + "properties": { + "asn": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The customer's ASN from which traffic originates." + } + }, + "description": "The properties that define a registered ASN." + }, + "PeeringRegisteredPrefixProperties": { + "type": "object", + "properties": { + "prefix": { + "type": "string", + "description": "The customer's prefix from which traffic originates." + } + }, + "description": "The properties that define a registered prefix." + }, + "PeeringServicePrefixProperties": { + "type": "object", + "properties": { + "peeringServicePrefixKey": { + "type": "string", + "description": "The peering service prefix key" + }, + "prefix": { + "type": "string", + "description": "The prefix from which your traffic originates." + } + }, + "description": "The peering service prefix properties class." + }, + "PeeringServiceProperties": { + "type": "object", + "properties": { + "logAnalyticsWorkspaceProperties": { + "oneOf": [ + { + "$ref": "#/definitions/LogAnalyticsWorkspaceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties that define a Log Analytics Workspace." + }, + "peeringServiceLocation": { + "type": "string", + "description": "The location (state/province) of the customer." + }, + "peeringServiceProvider": { + "type": "string", + "description": "The name of the service provider." + }, + "providerBackupPeeringLocation": { + "type": "string", + "description": "The backup peering (Microsoft/service provider) location to be used for customer traffic." + }, + "providerPrimaryPeeringLocation": { + "type": "string", + "description": "The primary peering (Microsoft/service provider) location to be used for customer traffic." + } + }, + "description": "The properties that define connectivity to the Peering Service." + }, + "PeeringServiceSku": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the peering service SKU." + } + }, + "description": "The SKU that defines the type of the peering service." + }, + "peeringServices_connectionMonitorTests_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the connection monitor test" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ConnectionMonitorTestProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties that define a Connection Monitor Test." + }, + "type": { + "type": "string", + "enum": [ + "connectionMonitorTests" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Peering/peeringServices/connectionMonitorTests" + }, + "peeringServices_prefixes_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the prefix." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PeeringServicePrefixProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The peering service prefix properties class." + }, + "type": { + "type": "string", + "enum": [ + "prefixes" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Peering/peeringServices/prefixes" + }, + "PeeringSku": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the peering SKU." + } + }, + "description": "The SKU that defines the tier and kind of the peering." + }, + "peerings_registeredAsns_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the ASN." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PeeringRegisteredAsnProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties that define a registered ASN." + }, + "type": { + "type": "string", + "enum": [ + "registeredAsns" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Peering/peerings/registeredAsns" + }, + "peerings_registeredPrefixes_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the registered prefix." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PeeringRegisteredPrefixProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties that define a registered prefix." + }, + "type": { + "type": "string", + "enum": [ + "registeredPrefixes" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Peering/peerings/registeredPrefixes" + }, + "SubResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The identifier of the referenced resource." + } + }, + "description": "The sub resource." + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index 60fbe8b21e..9ed3575071 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -10870,6 +10870,24 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-06-01/Microsoft.Peering.json#/resourceDefinitions/peeringServices_prefixes" }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01/Microsoft.Peering.json#/resourceDefinitions/peerings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01/Microsoft.Peering.json#/resourceDefinitions/peerings_registeredAsns" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01/Microsoft.Peering.json#/resourceDefinitions/peerings_registeredPrefixes" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01/Microsoft.Peering.json#/resourceDefinitions/peeringServices" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01/Microsoft.Peering.json#/resourceDefinitions/peeringServices_connectionMonitorTests" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01/Microsoft.Peering.json#/resourceDefinitions/peeringServices_prefixes" + }, { "$ref": "https://schema.management.azure.com/schemas/2018-07-01-preview/Microsoft.PolicyInsights.json#/resourceDefinitions/remediations" }, From 58267969e7d1bf685d41d7eb7ca433bcde414385 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Sat, 26 Feb 2022 10:38:07 +0000 Subject: [PATCH 17/29] Update resource list --- generator/resources.json | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index 7fedd8821a..a7538b5ebb 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -6892,7 +6892,8 @@ "2020-04-01", "2020-10-01", "2021-01-01", - "2021-06-01" + "2021-06-01", + "2022-01-01" ], "Microsoft.Peering/peeringServices": [ "2019-08-01-preview", @@ -6901,10 +6902,12 @@ "2020-04-01", "2020-10-01", "2021-01-01", - "2021-06-01" + "2021-06-01", + "2022-01-01" ], "Microsoft.Peering/peeringServices/connectionMonitorTests": [ - "2021-06-01" + "2021-06-01", + "2022-01-01" ], "Microsoft.Peering/peeringServices/prefixes": [ "2019-08-01-preview", @@ -6913,7 +6916,8 @@ "2020-04-01", "2020-10-01", "2021-01-01", - "2021-06-01" + "2021-06-01", + "2022-01-01" ], "Microsoft.Peering/peerings": [ "2019-08-01-preview", @@ -6922,21 +6926,24 @@ "2020-04-01", "2020-10-01", "2021-01-01", - "2021-06-01" + "2021-06-01", + "2022-01-01" ], "Microsoft.Peering/peerings/registeredAsns": [ "2020-01-01-preview", "2020-04-01", "2020-10-01", "2021-01-01", - "2021-06-01" + "2021-06-01", + "2022-01-01" ], "Microsoft.Peering/peerings/registeredPrefixes": [ "2020-01-01-preview", "2020-04-01", "2020-10-01", "2021-01-01", - "2021-06-01" + "2021-06-01", + "2022-01-01" ], "Microsoft.PlayFab/playerAccountPools": [ "2021-09-07-preview" From d386d9a75700590f786e7024a2b1c72dc444347a Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Mon, 28 Feb 2022 09:25:00 +0000 Subject: [PATCH 18/29] Update resource list --- generator/resources.json | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index a7538b5ebb..9f23cf5d67 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -4939,17 +4939,21 @@ ], "Microsoft.Marketplace/privateStores": [ "2020-01-01", - "2021-06-01" + "2021-06-01", + "2021-12-01" ], "Microsoft.Marketplace/privateStores/adminRequestApprovals": [ "2020-12-01", - "2021-06-01" + "2021-06-01", + "2021-12-01" ], "Microsoft.Marketplace/privateStores/collections": [ - "2021-06-01" + "2021-06-01", + "2021-12-01" ], "Microsoft.Marketplace/privateStores/collections/offers": [ - "2021-06-01" + "2021-06-01", + "2021-12-01" ], "Microsoft.Marketplace/privateStores/offers": [ "2020-01-01", @@ -4957,7 +4961,8 @@ ], "Microsoft.Marketplace/privateStores/requestApprovals": [ "2020-12-01", - "2021-06-01" + "2021-06-01", + "2021-12-01" ], "Microsoft.MarketplaceOrdering/offerTypes/publishers/offers/plans/agreements": [ "2015-06-01", From eb6c20d8749b061b115d37942bd678922bd89cf2 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Tue, 1 Mar 2022 09:07:41 +0000 Subject: [PATCH 19/29] Autogenerate schemas --- .../subscriptionDeploymentTemplate.json | 6 + .../managementGroupDeploymentTemplate.json | 6 + .../2019-08-01/tenantDeploymentTemplate.json | 6 + .../Microsoft.DocumentDB.json | 4 + .../Microsoft.Authorization.Authz.json | 393 ++++++++++++++++++ schemas/common/autogeneratedResources.json | 6 + 6 files changed, 421 insertions(+) create mode 100644 schemas/2022-04-01-preview/Microsoft.Authorization.Authz.json diff --git a/schemas/2018-05-01/subscriptionDeploymentTemplate.json b/schemas/2018-05-01/subscriptionDeploymentTemplate.json index e66603fa87..c3b3844dce 100644 --- a/schemas/2018-05-01/subscriptionDeploymentTemplate.json +++ b/schemas/2018-05-01/subscriptionDeploymentTemplate.json @@ -584,6 +584,12 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-11-16-preview/Microsoft.Authorization.Authz.json#/subscription_resourceDefinitions/accessReviewScheduleSettings" }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-04-01-preview/Microsoft.Authorization.Authz.json#/unknown_resourceDefinitions/roleAssignmentScheduleRequests" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-04-01-preview/Microsoft.Authorization.Authz.json#/unknown_resourceDefinitions/roleEligibilityScheduleRequests" + }, { "$ref": "https://schema.management.azure.com/schemas/2017-09-01/Microsoft.Authorization.json#/resourceDefinitions/roleAssignments" }, diff --git a/schemas/2019-08-01/managementGroupDeploymentTemplate.json b/schemas/2019-08-01/managementGroupDeploymentTemplate.json index 24f1cc9ae9..88736bd26c 100644 --- a/schemas/2019-08-01/managementGroupDeploymentTemplate.json +++ b/schemas/2019-08-01/managementGroupDeploymentTemplate.json @@ -539,6 +539,12 @@ { "$ref": "https://schema.management.azure.com/schemas/2020-10-01-preview/Microsoft.Authorization.Authz.json#/unknown_resourceDefinitions/roleManagementPolicyAssignments" }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-04-01-preview/Microsoft.Authorization.Authz.json#/unknown_resourceDefinitions/roleAssignmentScheduleRequests" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-04-01-preview/Microsoft.Authorization.Authz.json#/unknown_resourceDefinitions/roleEligibilityScheduleRequests" + }, { "$ref": "https://schema.management.azure.com/schemas/2017-09-01/Microsoft.Authorization.json#/resourceDefinitions/roleAssignments" }, diff --git a/schemas/2019-08-01/tenantDeploymentTemplate.json b/schemas/2019-08-01/tenantDeploymentTemplate.json index 635a2f1373..214a398121 100644 --- a/schemas/2019-08-01/tenantDeploymentTemplate.json +++ b/schemas/2019-08-01/tenantDeploymentTemplate.json @@ -550,6 +550,12 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-01-01-preview/Microsoft.Authorization.Authz.json#/tenant_resourceDefinitions/roleAssignmentApprovals_stages" }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-04-01-preview/Microsoft.Authorization.Authz.json#/unknown_resourceDefinitions/roleAssignmentScheduleRequests" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-04-01-preview/Microsoft.Authorization.Authz.json#/unknown_resourceDefinitions/roleEligibilityScheduleRequests" + }, { "$ref": "https://schema.management.azure.com/schemas/2017-09-01/Microsoft.Authorization.json#/resourceDefinitions/roleAssignments" }, diff --git a/schemas/2021-11-15-preview/Microsoft.DocumentDB.json b/schemas/2021-11-15-preview/Microsoft.DocumentDB.json index 4893cf7ed3..82bf3eead6 100644 --- a/schemas/2021-11-15-preview/Microsoft.DocumentDB.json +++ b/schemas/2021-11-15-preview/Microsoft.DocumentDB.json @@ -6548,6 +6548,10 @@ "KeyWrapMetadata": { "type": "object", "properties": { + "algorithm": { + "type": "string", + "description": "Algorithm used in wrapping and unwrapping of the data encryption key." + }, "name": { "type": "string", "description": "The name of associated KeyEncryptionKey (aka CustomerManagedKey)." diff --git a/schemas/2022-04-01-preview/Microsoft.Authorization.Authz.json b/schemas/2022-04-01-preview/Microsoft.Authorization.Authz.json new file mode 100644 index 0000000000..99788e5ddb --- /dev/null +++ b/schemas/2022-04-01-preview/Microsoft.Authorization.Authz.json @@ -0,0 +1,393 @@ +{ + "id": "https://schema.management.azure.com/schemas/2022-04-01-preview/Microsoft.Authorization.Authz.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.Authorization", + "description": "Microsoft Authorization Resource Types", + "resourceDefinitions": {}, + "unknown_resourceDefinitions": { + "roleAssignmentScheduleRequests": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-04-01-preview" + ] + }, + "name": { + "type": "string", + "description": "A GUID for the role assignment to create. The name must be unique and different for each role assignment." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/RoleAssignmentScheduleRequestProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Role assignment schedule request properties with scope." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Authorization/roleAssignmentScheduleRequests" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Authorization/roleAssignmentScheduleRequests" + }, + "roleEligibilityScheduleRequests": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-04-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the role eligibility to create. It can be any valid GUID." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/RoleEligibilityScheduleRequestProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Role eligibility schedule request properties with scope." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Authorization/roleEligibilityScheduleRequests" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Authorization/roleEligibilityScheduleRequests" + } + }, + "definitions": { + "RoleAssignmentScheduleRequestProperties": { + "type": "object", + "properties": { + "condition": { + "type": "string", + "description": "The conditions on the role assignment. This limits the resources it can be assigned to. e.g.: @Resource[Microsoft.Storage/storageAccounts/blobServices/containers:ContainerName] StringEqualsIgnoreCase 'foo_storage_container'" + }, + "conditionVersion": { + "type": "string", + "description": "Version of the condition. Currently accepted value is '2.0'" + }, + "justification": { + "type": "string", + "description": "Justification for the role assignment" + }, + "linkedRoleEligibilityScheduleId": { + "type": "string", + "description": "The linked role eligibility schedule id - to activate an eligibility." + }, + "principalId": { + "type": "string", + "description": "The principal ID." + }, + "requestType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "AdminAssign", + "AdminRemove", + "AdminUpdate", + "AdminExtend", + "AdminRenew", + "SelfActivate", + "SelfDeactivate", + "SelfExtend", + "SelfRenew" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of the role assignment schedule request. Eg: SelfActivate, AdminAssign etc." + }, + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID." + }, + "scheduleInfo": { + "oneOf": [ + { + "$ref": "#/definitions/RoleAssignmentScheduleRequestPropertiesScheduleInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Schedule info of the role assignment schedule" + }, + "targetRoleAssignmentScheduleId": { + "type": "string", + "description": "The resultant role assignment schedule id or the role assignment schedule id being updated" + }, + "targetRoleAssignmentScheduleInstanceId": { + "type": "string", + "description": "The role assignment schedule instance id being updated" + }, + "ticketInfo": { + "oneOf": [ + { + "$ref": "#/definitions/RoleAssignmentScheduleRequestPropertiesTicketInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Ticket Info of the role assignment" + } + }, + "required": [ + "principalId", + "requestType", + "roleDefinitionId" + ], + "description": "Role assignment schedule request properties with scope." + }, + "RoleAssignmentScheduleRequestPropertiesScheduleInfo": { + "type": "object", + "properties": { + "expiration": { + "oneOf": [ + { + "$ref": "#/definitions/RoleAssignmentScheduleRequestPropertiesScheduleInfoExpiration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Expiration of the role assignment schedule" + }, + "startDateTime": { + "type": "string", + "format": "date-time", + "description": "Start DateTime of the role assignment schedule." + } + }, + "description": "Schedule info of the role assignment schedule" + }, + "RoleAssignmentScheduleRequestPropertiesScheduleInfoExpiration": { + "type": "object", + "properties": { + "duration": { + "type": "string", + "description": "Duration of the role assignment schedule in TimeSpan." + }, + "endDateTime": { + "type": "string", + "format": "date-time", + "description": "End DateTime of the role assignment schedule." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "AfterDuration", + "AfterDateTime", + "NoExpiration" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of the role assignment schedule expiration." + } + }, + "description": "Expiration of the role assignment schedule" + }, + "RoleAssignmentScheduleRequestPropertiesTicketInfo": { + "type": "object", + "properties": { + "ticketNumber": { + "type": "string", + "description": "Ticket number for the role assignment" + }, + "ticketSystem": { + "type": "string", + "description": "Ticket system name for the role assignment" + } + }, + "description": "Ticket Info of the role assignment" + }, + "RoleEligibilityScheduleRequestProperties": { + "type": "object", + "properties": { + "condition": { + "type": "string", + "description": "The conditions on the role assignment. This limits the resources it can be assigned to. e.g.: @Resource[Microsoft.Storage/storageAccounts/blobServices/containers:ContainerName] StringEqualsIgnoreCase 'foo_storage_container'" + }, + "conditionVersion": { + "type": "string", + "description": "Version of the condition. Currently accepted value is '2.0'" + }, + "justification": { + "type": "string", + "description": "Justification for the role eligibility" + }, + "principalId": { + "type": "string", + "description": "The principal ID." + }, + "requestType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "AdminAssign", + "AdminRemove", + "AdminUpdate", + "AdminExtend", + "AdminRenew", + "SelfActivate", + "SelfDeactivate", + "SelfExtend", + "SelfRenew" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of the role assignment schedule request. Eg: SelfActivate, AdminAssign etc." + }, + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID." + }, + "scheduleInfo": { + "oneOf": [ + { + "$ref": "#/definitions/RoleEligibilityScheduleRequestPropertiesScheduleInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Schedule info of the role eligibility schedule" + }, + "targetRoleEligibilityScheduleId": { + "type": "string", + "description": "The resultant role eligibility schedule id or the role eligibility schedule id being updated" + }, + "targetRoleEligibilityScheduleInstanceId": { + "type": "string", + "description": "The role eligibility schedule instance id being updated" + }, + "ticketInfo": { + "oneOf": [ + { + "$ref": "#/definitions/RoleEligibilityScheduleRequestPropertiesTicketInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Ticket Info of the role eligibility" + } + }, + "required": [ + "principalId", + "requestType", + "roleDefinitionId" + ], + "description": "Role eligibility schedule request properties with scope." + }, + "RoleEligibilityScheduleRequestPropertiesScheduleInfo": { + "type": "object", + "properties": { + "expiration": { + "oneOf": [ + { + "$ref": "#/definitions/RoleEligibilityScheduleRequestPropertiesScheduleInfoExpiration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Expiration of the role eligibility schedule" + }, + "startDateTime": { + "type": "string", + "format": "date-time", + "description": "Start DateTime of the role eligibility schedule." + } + }, + "description": "Schedule info of the role eligibility schedule" + }, + "RoleEligibilityScheduleRequestPropertiesScheduleInfoExpiration": { + "type": "object", + "properties": { + "duration": { + "type": "string", + "description": "Duration of the role eligibility schedule in TimeSpan." + }, + "endDateTime": { + "type": "string", + "format": "date-time", + "description": "End DateTime of the role eligibility schedule." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "AfterDuration", + "AfterDateTime", + "NoExpiration" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of the role eligibility schedule expiration." + } + }, + "description": "Expiration of the role eligibility schedule" + }, + "RoleEligibilityScheduleRequestPropertiesTicketInfo": { + "type": "object", + "properties": { + "ticketNumber": { + "type": "string", + "description": "Ticket number for the role eligibility" + }, + "ticketSystem": { + "type": "string", + "description": "Ticket system name for the role eligibility" + } + }, + "description": "Ticket Info of the role eligibility" + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index 61a83ef668..5c23852523 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -1960,6 +1960,12 @@ { "$ref": "https://schema.management.azure.com/schemas/2020-10-01-preview/Microsoft.Authorization.Authz.json#/unknown_resourceDefinitions/roleManagementPolicyAssignments" }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-04-01-preview/Microsoft.Authorization.Authz.json#/unknown_resourceDefinitions/roleAssignmentScheduleRequests" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-04-01-preview/Microsoft.Authorization.Authz.json#/unknown_resourceDefinitions/roleEligibilityScheduleRequests" + }, { "$ref": "https://schema.management.azure.com/schemas/2015-01-01/Microsoft.Authorization.Resources.json#/resourceDefinitions/locks" }, From 75f65a9e4543721ac10ce8b21f4ab2b940b76019 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Tue, 1 Mar 2022 09:07:58 +0000 Subject: [PATCH 20/29] Update resource list --- generator/resources.json | 54 +++++++++++++++++++++++++++------------- 1 file changed, 37 insertions(+), 17 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index 9f23cf5d67..7aed59c902 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -1029,7 +1029,8 @@ "2021-01-01-preview" ], "Microsoft.Authorization/roleAssignmentScheduleRequests": [ - "2020-10-01-preview" + "2020-10-01-preview", + "2022-04-01-preview" ], "Microsoft.Authorization/roleAssignments": [ "2015-07-01", @@ -1048,7 +1049,8 @@ "2018-01-01-preview" ], "Microsoft.Authorization/roleEligibilityScheduleRequests": [ - "2020-10-01-preview" + "2020-10-01-preview", + "2022-04-01-preview" ], "Microsoft.Authorization/roleManagementPolicyAssignments": [ "2020-10-01-preview" @@ -2930,7 +2932,8 @@ "2021-03-09-preview", "2021-04-01-preview", "2021-07-12", - "2021-09-03-preview" + "2021-09-03-preview", + "2022-02-10-preview" ], "Microsoft.DesktopVirtualization/applicationGroups/applications": [ "2019-01-23-preview", @@ -2945,7 +2948,8 @@ "2021-03-09-preview", "2021-04-01-preview", "2021-07-12", - "2021-09-03-preview" + "2021-09-03-preview", + "2022-02-10-preview" ], "Microsoft.DesktopVirtualization/hostPools": [ "2019-01-23-preview", @@ -2960,7 +2964,8 @@ "2021-03-09-preview", "2021-04-01-preview", "2021-07-12", - "2021-09-03-preview" + "2021-09-03-preview", + "2022-02-10-preview" ], "Microsoft.DesktopVirtualization/hostPools/msixPackages": [ "2020-09-21-preview", @@ -2972,11 +2977,13 @@ "2021-03-09-preview", "2021-04-01-preview", "2021-07-12", - "2021-09-03-preview" + "2021-09-03-preview", + "2022-02-10-preview" ], "Microsoft.DesktopVirtualization/hostPools/privateEndpointConnections": [ "2021-04-01-preview", - "2021-09-03-preview" + "2021-09-03-preview", + "2022-02-10-preview" ], "Microsoft.DesktopVirtualization/scalingPlans": [ "2020-11-10-preview", @@ -2985,7 +2992,8 @@ "2021-03-09-preview", "2021-04-01-preview", "2021-07-12", - "2021-09-03-preview" + "2021-09-03-preview", + "2022-02-10-preview" ], "Microsoft.DesktopVirtualization/workspaces": [ "2019-01-23-preview", @@ -3000,11 +3008,13 @@ "2021-03-09-preview", "2021-04-01-preview", "2021-07-12", - "2021-09-03-preview" + "2021-09-03-preview", + "2022-02-10-preview" ], "Microsoft.DesktopVirtualization/workspaces/privateEndpointConnections": [ "2021-04-01-preview", - "2021-09-03-preview" + "2021-09-03-preview", + "2022-02-10-preview" ], "Microsoft.DevOps/pipelines": [ "2019-07-01-preview", @@ -4179,27 +4189,37 @@ "2020-03-15", "2020-03-30", "2021-01-11", - "2021-06-01-preview" + "2021-06-01-preview", + "2021-11-01" ], "Microsoft.HealthcareApis/services/privateEndpointConnections": [ "2020-03-30", "2021-01-11", - "2021-06-01-preview" + "2021-06-01-preview", + "2021-11-01" ], "Microsoft.HealthcareApis/workspaces": [ - "2021-06-01-preview" + "2021-06-01-preview", + "2021-11-01" ], "Microsoft.HealthcareApis/workspaces/dicomservices": [ - "2021-06-01-preview" + "2021-06-01-preview", + "2021-11-01" ], "Microsoft.HealthcareApis/workspaces/fhirservices": [ - "2021-06-01-preview" + "2021-06-01-preview", + "2021-11-01" ], "Microsoft.HealthcareApis/workspaces/iotconnectors": [ - "2021-06-01-preview" + "2021-06-01-preview", + "2021-11-01" ], "Microsoft.HealthcareApis/workspaces/iotconnectors/fhirdestinations": [ - "2021-06-01-preview" + "2021-06-01-preview", + "2021-11-01" + ], + "Microsoft.HealthcareApis/workspaces/privateEndpointConnections": [ + "2021-11-01" ], "Microsoft.HybridCompute/machines": [ "2019-03-18-preview", From 04f3a25daf3f0bf9991661ba798e42d2ca2541b8 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Thu, 3 Mar 2022 09:20:46 +0000 Subject: [PATCH 21/29] Autogenerate schemas --- .../Microsoft.AzureArcData.json | 1486 +++++++++++++++++ schemas/common/autogeneratedResources.json | 15 + 2 files changed, 1501 insertions(+) create mode 100644 schemas/2022-03-01-preview/Microsoft.AzureArcData.json diff --git a/schemas/2022-03-01-preview/Microsoft.AzureArcData.json b/schemas/2022-03-01-preview/Microsoft.AzureArcData.json new file mode 100644 index 0000000000..34ad525752 --- /dev/null +++ b/schemas/2022-03-01-preview/Microsoft.AzureArcData.json @@ -0,0 +1,1486 @@ +{ + "id": "https://schema.management.azure.com/schemas/2022-03-01-preview/Microsoft.AzureArcData.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.AzureArcData", + "description": "Microsoft AzureArcData Resource Types", + "resourceDefinitions": { + "dataControllers": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-03-01-preview" + ] + }, + "extendedLocation": { + "oneOf": [ + { + "$ref": "#/definitions/ExtendedLocation" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The complex type of the extended location." + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "The name of the data controller" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DataControllerProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The data controller properties." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/dataControllers_activeDirectoryConnectors_childResource" + } + ] + } + }, + "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.AzureArcData/dataControllers" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.AzureArcData/dataControllers" + }, + "dataControllers_activeDirectoryConnectors": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-03-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the Active Directory connector instance" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ActiveDirectoryConnectorProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of an Active Directory connector resource" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.AzureArcData/dataControllers/activeDirectoryConnectors" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.AzureArcData/dataControllers/activeDirectoryConnectors" + }, + "postgresInstances": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-03-01-preview" + ] + }, + "extendedLocation": { + "oneOf": [ + { + "$ref": "#/definitions/ExtendedLocation" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The complex type of the extended location." + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "Name of Postgres Instance" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PostgresInstanceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Postgres Instance properties." + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/PostgresInstanceSku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The resource model definition representing SKU for Azure Database for PostgresSQL - Azure Arc" + }, + "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.AzureArcData/postgresInstances" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.AzureArcData/postgresInstances" + }, + "sqlManagedInstances": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-03-01-preview" + ] + }, + "extendedLocation": { + "oneOf": [ + { + "$ref": "#/definitions/ExtendedLocation" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The complex type of the extended location." + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "Name of SQL Managed Instance" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SqlManagedInstanceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of sqlManagedInstance." + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/SqlManagedInstanceSku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The resource model definition representing SKU for Azure Managed Instance - Azure Arc" + }, + "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.AzureArcData/sqlManagedInstances" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.AzureArcData/sqlManagedInstances" + }, + "sqlServerInstances": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-03-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "Name of SQL Server Instance" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SqlServerInstanceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of SqlServerInstance." + }, + "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.AzureArcData/sqlServerInstances" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.AzureArcData/sqlServerInstances" + } + }, + "definitions": { + "ActiveDirectoryConnectorDNSDetails": { + "type": "object", + "properties": { + "domainName": { + "type": "string", + "description": "DNS domain name for which DNS lookups should be forwarded to the Active Directory DNS servers." + }, + "nameserverIPAddresses": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of Active Directory DNS server IP addresses." + }, + "preferK8sDnsForPtrLookups": { + "oneOf": [ + { + "type": "boolean", + "default": true + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Flag indicating whether to prefer Kubernetes DNS server response over AD DNS server response for IP address lookups." + }, + "replicas": { + "oneOf": [ + { + "type": "integer", + "default": "1" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Replica count for DNS proxy service. Default value is 1." + } + }, + "required": [ + "nameserverIPAddresses" + ], + "description": "DNS server details" + }, + "ActiveDirectoryConnectorDomainDetails": { + "type": "object", + "properties": { + "domainControllers": { + "oneOf": [ + { + "$ref": "#/definitions/ActiveDirectoryDomainControllers" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Details about the Active Directory domain controllers associated with this AD connector instance" + }, + "netbiosDomainName": { + "type": "string", + "description": "NETBIOS name of the Active Directory domain." + }, + "realm": { + "type": "string", + "description": "Name (uppercase) of the Active Directory domain that this AD connector will be associated with." + } + }, + "required": [ + "domainControllers", + "realm" + ], + "description": "Active Directory domain details" + }, + "ActiveDirectoryConnectorProperties": { + "type": "object", + "properties": { + "spec": { + "oneOf": [ + { + "$ref": "#/definitions/ActiveDirectoryConnectorSpec" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The specifications of the AD Kubernetes resource." + }, + "status": { + "oneOf": [ + { + "$ref": "#/definitions/ActiveDirectoryConnectorStatus" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The status of the Kubernetes custom resource." + } + }, + "required": [ + "spec" + ], + "description": "The properties of an Active Directory connector resource" + }, + "ActiveDirectoryConnectorSpec": { + "type": "object", + "properties": { + "activeDirectory": { + "oneOf": [ + { + "$ref": "#/definitions/ActiveDirectoryConnectorDomainDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Active Directory domain details" + }, + "dns": { + "oneOf": [ + { + "$ref": "#/definitions/ActiveDirectoryConnectorDNSDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "DNS server details" + } + }, + "required": [ + "activeDirectory", + "dns" + ], + "description": "The specifications of the AD Kubernetes resource." + }, + "ActiveDirectoryConnectorStatus": { + "type": "object", + "properties": { + "additionalProperties": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": {} + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Unmatched properties from the message are deserialized this collection" + }, + "lastUpdateTime": { + "type": "string", + "description": "The time that the custom resource was last updated." + }, + "observedGeneration": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The version of the replicaSet associated with the AD connector custom resource." + }, + "state": { + "type": "string", + "description": "The state of the AD connector custom resource." + } + }, + "description": "The status of the Kubernetes custom resource." + }, + "ActiveDirectoryDomainController": { + "type": "object", + "properties": { + "hostname": { + "type": "string", + "description": "Fully-qualified domain name of a domain controller in the AD domain." + } + }, + "required": [ + "hostname" + ], + "description": "Information about a domain controller in the AD domain." + }, + "ActiveDirectoryDomainControllers": { + "type": "object", + "properties": { + "primaryDomainController": { + "oneOf": [ + { + "$ref": "#/definitions/ActiveDirectoryDomainController" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Information about a domain controller in the AD domain." + }, + "secondaryDomainControllers": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ActiveDirectoryDomainController" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Information about the secondary domain controllers in the AD domain." + } + }, + "required": [ + "primaryDomainController" + ], + "description": "Details about the Active Directory domain controllers associated with this AD connector instance" + }, + "BasicLoginInformation": { + "type": "object", + "properties": { + "password": { + "type": "string", + "description": "Login password." + }, + "username": { + "type": "string", + "description": "Login username." + } + }, + "description": "Username and password for basic login authentication." + }, + "DataControllerProperties": { + "type": "object", + "properties": { + "basicLoginInformation": { + "oneOf": [ + { + "$ref": "#/definitions/BasicLoginInformation" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Username and password for basic login authentication." + }, + "clusterId": { + "type": "string", + "description": "If a CustomLocation is provided, this contains the ARM id of the connected cluster the custom location belongs to." + }, + "extensionId": { + "type": "string", + "description": "If a CustomLocation is provided, this contains the ARM id of the extension the custom location belongs to." + }, + "infrastructure": { + "oneOf": [ + { + "type": "string", + "enum": [ + "azure", + "gcp", + "aws", + "alibaba", + "onpremises", + "other" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The infrastructure the data controller is running on." + }, + "k8sRaw": { + "type": "object", + "properties": {}, + "description": "The raw kubernetes information" + }, + "lastUploadedDate": { + "type": "string", + "format": "date-time", + "description": "Last uploaded date from Kubernetes cluster. Defaults to current date time" + }, + "logAnalyticsWorkspaceConfig": { + "oneOf": [ + { + "$ref": "#/definitions/LogAnalyticsWorkspaceConfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Log analytics workspace id and primary key" + }, + "logsDashboardCredential": { + "oneOf": [ + { + "$ref": "#/definitions/BasicLoginInformation" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Username and password for basic login authentication." + }, + "metricsDashboardCredential": { + "oneOf": [ + { + "$ref": "#/definitions/BasicLoginInformation" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Username and password for basic login authentication." + }, + "onPremiseProperty": { + "oneOf": [ + { + "$ref": "#/definitions/OnPremiseProperty" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties from the Kubernetes data controller" + }, + "uploadServicePrincipal": { + "oneOf": [ + { + "$ref": "#/definitions/UploadServicePrincipal" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Service principal for uploading billing, metrics and logs." + }, + "uploadWatermark": { + "oneOf": [ + { + "$ref": "#/definitions/UploadWatermark" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties on upload watermark. Mostly timestamp for each upload data type" + } + }, + "description": "The data controller properties." + }, + "dataControllers_activeDirectoryConnectors_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-03-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the Active Directory connector instance" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ActiveDirectoryConnectorProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of an Active Directory connector resource" + }, + "type": { + "type": "string", + "enum": [ + "activeDirectoryConnectors" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.AzureArcData/dataControllers/activeDirectoryConnectors" + }, + "ExtendedLocation": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the extended location." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "CustomLocation" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of the extended location." + } + }, + "description": "The complex type of the extended location." + }, + "K8sResourceRequirements": { + "type": "object", + "properties": { + "additionalProperties": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": {} + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Unmatched properties from the message are deserialized this collection" + }, + "limits": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Limits for a kubernetes resource type (e.g 'cpu', 'memory'). The 'cpu' request must be less than or equal to 'cpu' limit. Default 'cpu' is 2, minimum is 1. Default 'memory' is '4Gi', minimum is '2Gi. If sku.tier is GeneralPurpose, maximum 'cpu' is 24 and maximum 'memory' is '128Gi'." + }, + "requests": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Requests for a kubernetes resource type (e.g 'cpu', 'memory'). The 'cpu' request must be less than or equal to 'cpu' limit. Default 'cpu' is 2, minimum is 1. Default 'memory' is '4Gi', minimum is '2Gi. If sku.tier is GeneralPurpose, maximum 'cpu' is 24 and maximum 'memory' is '128Gi'." + } + }, + "description": "The kubernetes resource limits and requests used to restrict or reserve resource usage." + }, + "K8sScheduling": { + "type": "object", + "properties": { + "additionalProperties": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": {} + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Unmatched properties from the message are deserialized this collection" + }, + "default": { + "oneOf": [ + { + "$ref": "#/definitions/K8sSchedulingOptions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The kubernetes scheduling options. It describes restrictions used to help Kubernetes select appropriate nodes to host the database service" + } + }, + "description": "The kubernetes scheduling information." + }, + "K8sSchedulingOptions": { + "type": "object", + "properties": { + "additionalProperties": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": {} + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Unmatched properties from the message are deserialized this collection" + }, + "resources": { + "oneOf": [ + { + "$ref": "#/definitions/K8sResourceRequirements" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The kubernetes resource limits and requests used to restrict or reserve resource usage." + } + }, + "description": "The kubernetes scheduling options. It describes restrictions used to help Kubernetes select appropriate nodes to host the database service" + }, + "LogAnalyticsWorkspaceConfig": { + "type": "object", + "properties": { + "primaryKey": { + "type": "string", + "description": "Primary key of the workspace" + }, + "workspaceId": { + "oneOf": [ + { + "type": "string", + "pattern": "^[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Azure Log Analytics workspace ID" + } + }, + "description": "Log analytics workspace id and primary key" + }, + "OnPremiseProperty": { + "type": "object", + "properties": { + "id": { + "oneOf": [ + { + "type": "string", + "pattern": "^[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A globally unique ID identifying the associated Kubernetes cluster" + }, + "publicSigningKey": { + "type": "string", + "description": "Certificate that contains the Kubernetes cluster public key used to verify signing" + }, + "signingCertificateThumbprint": { + "type": "string", + "description": "Unique thumbprint returned to customer to verify the certificate being uploaded" + } + }, + "required": [ + "id", + "publicSigningKey" + ], + "description": "Properties from the Kubernetes data controller" + }, + "PostgresInstanceProperties": { + "type": "object", + "properties": { + "admin": { + "type": "string", + "description": "The instance admin" + }, + "basicLoginInformation": { + "oneOf": [ + { + "$ref": "#/definitions/BasicLoginInformation" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Username and password for basic login authentication." + }, + "dataControllerId": { + "type": "string", + "description": "The data controller id" + }, + "k8sRaw": { + "type": "object", + "properties": {}, + "description": "The raw kubernetes information" + }, + "lastUploadedDate": { + "type": "string", + "format": "date-time", + "description": "Last uploaded date from Kubernetes cluster. Defaults to current date time" + } + }, + "description": "Postgres Instance properties." + }, + "PostgresInstanceSku": { + "type": "object", + "properties": { + "capacity": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted." + }, + "dev": { + "oneOf": [ + { + "type": "boolean", + "default": true + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether dev/test is enabled. When the dev field is set to true, the resource is used for dev/test purpose. " + }, + "family": { + "type": "string", + "description": "If the service has different generations of hardware, for the same SKU, then that can be captured here." + }, + "name": { + "type": "string", + "description": "The name of the SKU. It is typically a letter+number code" + }, + "size": { + "type": "string", + "description": "The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. " + }, + "tier": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Hyperscale" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This field is required to be implemented by the Resource Provider if the service has more than one tier." + } + }, + "required": [ + "name" + ], + "description": "The resource model definition representing SKU for Azure Database for PostgresSQL - Azure Arc" + }, + "SqlManagedInstanceK8sRaw": { + "type": "object", + "properties": { + "additionalProperties": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": {} + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Unmatched properties from the message are deserialized this collection" + }, + "spec": { + "oneOf": [ + { + "$ref": "#/definitions/SqlManagedInstanceK8sSpec" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The kubernetes spec information." + } + }, + "description": "The raw kubernetes information." + }, + "SqlManagedInstanceK8sSpec": { + "type": "object", + "properties": { + "additionalProperties": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": {} + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Unmatched properties from the message are deserialized this collection" + }, + "replicas": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This option specifies the number of SQL Managed Instance replicas that will be deployed in your Kubernetes cluster for high availability purposes. If sku.tier is BusinessCritical, allowed values are '2' or '3' with default of '3'. If sku.tier is GeneralPurpose, replicas must be '1'." + }, + "scheduling": { + "oneOf": [ + { + "$ref": "#/definitions/K8sScheduling" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The kubernetes scheduling information." + } + }, + "description": "The kubernetes spec information." + }, + "SqlManagedInstanceProperties": { + "type": "object", + "properties": { + "admin": { + "type": "string", + "description": "The instance admin user" + }, + "basicLoginInformation": { + "oneOf": [ + { + "$ref": "#/definitions/BasicLoginInformation" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Username and password for basic login authentication." + }, + "clusterId": { + "type": "string", + "description": "If a CustomLocation is provided, this contains the ARM id of the connected cluster the custom location belongs to." + }, + "dataControllerId": { + "type": "string", + "description": "null" + }, + "endTime": { + "type": "string", + "description": "The instance end time" + }, + "extensionId": { + "type": "string", + "description": "If a CustomLocation is provided, this contains the ARM id of the extension the custom location belongs to." + }, + "k8sRaw": { + "oneOf": [ + { + "$ref": "#/definitions/SqlManagedInstanceK8sRaw" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The raw kubernetes information." + }, + "keytab": { + "type": "string", + "description": "A base64-encoded keytab." + }, + "lastUploadedDate": { + "type": "string", + "format": "date-time", + "description": "Last uploaded date from Kubernetes cluster. Defaults to current date time" + }, + "licenseType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "BasePrice", + "LicenseIncluded", + "DisasterRecovery" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The license type to apply for this managed instance." + }, + "startTime": { + "type": "string", + "description": "The instance start time" + } + }, + "description": "Properties of sqlManagedInstance." + }, + "SqlManagedInstanceSku": { + "type": "object", + "properties": { + "capacity": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The SKU capacity" + }, + "dev": { + "oneOf": [ + { + "type": "boolean", + "default": true + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether dev/test is enabled. When the dev field is set to true, the resource is used for dev/test purpose. " + }, + "family": { + "type": "string", + "description": "The SKU family" + }, + "name": { + "oneOf": [ + { + "type": "string", + "enum": [ + "vCore" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the SKU." + }, + "size": { + "type": "string", + "description": "The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. " + }, + "tier": { + "oneOf": [ + { + "type": "string", + "enum": [ + "GeneralPurpose", + "BusinessCritical" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The pricing tier for the instance." + } + }, + "required": [ + "name" + ], + "description": "The resource model definition representing SKU for Azure Managed Instance - Azure Arc" + }, + "SqlServerInstanceProperties": { + "type": "object", + "properties": { + "azureDefenderStatus": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Protected", + "Unprotected", + "Unknown" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Status of Azure Defender." + }, + "azureDefenderStatusLastUpdated": { + "type": "string", + "format": "date-time", + "description": "Timestamp of last Azure Defender status update." + }, + "collation": { + "type": "string", + "description": "SQL Server collation." + }, + "containerResourceId": { + "type": "string", + "description": "ARM Resource id of the container resource (Azure Arc for Servers)." + }, + "currentVersion": { + "type": "string", + "description": "SQL Server current version." + }, + "edition": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Evaluation", + "Enterprise", + "Standard", + "Web", + "Developer", + "Express" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "SQL Server edition." + }, + "esuExpirationDate": { + "type": "string", + "format": "date-time", + "description": "Timestamp of ESU Expiration." + }, + "hostType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Virtual Machine", + "Physical Server", + "AWS Virtual Machine", + "GCP Virtual Machine", + "Other" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of host for Azure Arc SQL Server." + }, + "instanceName": { + "type": "string", + "description": "SQL Server instance name." + }, + "licenseType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Paid", + "Free", + "HADR", + "Undefined" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "SQL Server license type." + }, + "patchLevel": { + "type": "string", + "description": "SQL Server update level." + }, + "productId": { + "type": "string", + "description": "SQL Server product ID." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Connected", + "Disconnected", + "Registered", + "Unknown" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The cloud connectivity status." + }, + "tcpDynamicPorts": { + "type": "string", + "description": "Dynamic TCP ports used by SQL Server." + }, + "tcpStaticPorts": { + "type": "string", + "description": "Static TCP ports used by SQL Server." + }, + "vCore": { + "type": "string", + "description": "The number of logical processors used by the SQL Server instance." + }, + "version": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SQL Server 2012", + "SQL Server 2014", + "SQL Server 2016", + "SQL Server 2017", + "SQL Server 2019", + "SQL Server 2022", + "Unknown" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "SQL Server version." + } + }, + "required": [ + "containerResourceId", + "status" + ], + "description": "Properties of SqlServerInstance." + }, + "UploadServicePrincipal": { + "type": "object", + "properties": { + "authority": { + "type": "string", + "description": "Authority for the service principal. Example: https://login.microsoftonline.com/" + }, + "clientId": { + "oneOf": [ + { + "type": "string", + "pattern": "^[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Client ID of the service principal for uploading data." + }, + "clientSecret": { + "type": "string", + "description": "Secret of the service principal" + }, + "tenantId": { + "oneOf": [ + { + "type": "string", + "pattern": "^[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tenant ID of the service principal." + } + }, + "description": "Service principal for uploading billing, metrics and logs." + }, + "UploadWatermark": { + "type": "object", + "properties": { + "logs": { + "type": "string", + "format": "date-time", + "description": "Last uploaded date for logs from kubernetes cluster. Defaults to current date time" + }, + "metrics": { + "type": "string", + "format": "date-time", + "description": "Last uploaded date for metrics from kubernetes cluster. Defaults to current date time" + }, + "usages": { + "type": "string", + "format": "date-time", + "description": "Last uploaded date for usages from kubernetes cluster. Defaults to current date time" + } + }, + "description": "Properties on upload watermark. Mostly timestamp for each upload data type" + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index 5c23852523..f54aa315d2 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -2485,6 +2485,21 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-11-01/Microsoft.AzureArcData.json#/resourceDefinitions/sqlServerInstances" }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-03-01-preview/Microsoft.AzureArcData.json#/resourceDefinitions/dataControllers" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-03-01-preview/Microsoft.AzureArcData.json#/resourceDefinitions/dataControllers_activeDirectoryConnectors" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-03-01-preview/Microsoft.AzureArcData.json#/resourceDefinitions/postgresInstances" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-03-01-preview/Microsoft.AzureArcData.json#/resourceDefinitions/sqlManagedInstances" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-03-01-preview/Microsoft.AzureArcData.json#/resourceDefinitions/sqlServerInstances" + }, { "$ref": "https://schema.management.azure.com/schemas/2019-07-24-preview/Microsoft.AzureData.json#/resourceDefinitions/sqlServerRegistrations" }, From 3bfdb93a10a4cdd47eec850800343e47d032f3e8 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Thu, 3 Mar 2022 09:21:05 +0000 Subject: [PATCH 22/29] Update resource list --- generator/resources.json | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index 7aed59c902..b936ed2a60 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -1202,23 +1202,30 @@ "2021-06-01-preview", "2021-07-01-preview", "2021-08-01", - "2021-11-01" + "2021-11-01", + "2022-03-01-preview" + ], + "Microsoft.AzureArcData/dataControllers/activeDirectoryConnectors": [ + "2022-03-01-preview" ], "Microsoft.AzureArcData/postgresInstances": [ "2021-06-01-preview", - "2021-07-01-preview" + "2021-07-01-preview", + "2022-03-01-preview" ], "Microsoft.AzureArcData/sqlManagedInstances": [ "2021-06-01-preview", "2021-07-01-preview", "2021-08-01", - "2021-11-01" + "2021-11-01", + "2022-03-01-preview" ], "Microsoft.AzureArcData/sqlServerInstances": [ "2021-06-01-preview", "2021-07-01-preview", "2021-08-01", - "2021-11-01" + "2021-11-01", + "2022-03-01-preview" ], "Microsoft.AzureData/sqlServerRegistrations": [ "2019-07-24-preview" From 2fbd33bdef1532f12898d7b3744331672f213f66 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Thu, 3 Mar 2022 10:40:38 +0000 Subject: [PATCH 23/29] Autogenerate schemas --- .../Microsoft.RecoveryServices.json | 617 ++++++++++++++++++ schemas/common/autogeneratedResources.json | 9 + 2 files changed, 626 insertions(+) create mode 100644 schemas/2022-01-01/Microsoft.RecoveryServices.json diff --git a/schemas/2022-01-01/Microsoft.RecoveryServices.json b/schemas/2022-01-01/Microsoft.RecoveryServices.json new file mode 100644 index 0000000000..b9552170fd --- /dev/null +++ b/schemas/2022-01-01/Microsoft.RecoveryServices.json @@ -0,0 +1,617 @@ +{ + "id": "https://schema.management.azure.com/schemas/2022-01-01/Microsoft.RecoveryServices.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.RecoveryServices", + "description": "Microsoft RecoveryServices Resource Types", + "resourceDefinitions": { + "vaults": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "etag": { + "type": "string", + "description": "Optional ETag." + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/IdentityData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "type": "string", + "description": "The name of the recovery services vault." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/VaultProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of the vault." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/vaults_certificates_childResource" + }, + { + "$ref": "#/definitions/vaults_extendedInformation_childResource" + } + ] + } + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/Sku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identifies the unique system identifier for each Azure resource." + }, + "systemData": { + "oneOf": [ + { + "$ref": "#/definitions/SystemData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata pertaining to creation and last modification of the resource." + }, + "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.RecoveryServices/vaults" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults" + }, + "vaults_certificates": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "name": { + "type": "string", + "description": "Certificate friendly name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/RawCertificateData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Raw certificate data." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.RecoveryServices/vaults/certificates" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/certificates" + }, + "vaults_extendedInformation": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "etag": { + "type": "string", + "description": "Optional ETag." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/vaultExtendedInfo$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/VaultExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Vault extended information." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.RecoveryServices/vaults/extendedInformation" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/extendedInformation" + } + }, + "definitions": { + "CmkKekIdentity": { + "type": "object", + "properties": { + "userAssignedIdentity": { + "type": "string", + "description": "The user assigned identity to be used to grant permissions in case the type of identity used is UserAssigned" + }, + "useSystemAssignedIdentity": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicate that system assigned identity should be used. Mutually exclusive with 'userAssignedIdentity' field" + } + }, + "description": "The details of the identity used for CMK" + }, + "CmkKeyVaultProperties": { + "type": "object", + "properties": { + "keyUri": { + "type": "string", + "description": "The key uri of the Customer Managed Key" + } + }, + "description": "The properties of the Key Vault which hosts CMK" + }, + "IdentityData": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SystemAssigned", + "None", + "UserAssigned", + "SystemAssigned, UserAssigned" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identities." + }, + "userAssignedIdentities": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserIdentity" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of user-assigned identities associated with the resource. The user-assigned identity dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "required": [ + "type" + ], + "description": "Identity for the resource." + }, + "RawCertificateData": { + "type": "object", + "properties": { + "authType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "ACS", + "AAD", + "AccessControlService", + "AzureActiveDirectory" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies the authentication type." + }, + "certificate": { + "oneOf": [ + { + "type": "string", + "pattern": "^(?:[A-Za-z0-9+\\/]{4})*(?:[A-Za-z0-9+\\/]{2}==|[A-Za-z0-9+\\/]{3}=)?$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The base64 encoded certificate raw data string" + } + }, + "description": "Raw certificate data." + }, + "Sku": { + "type": "object", + "properties": { + "capacity": { + "type": "string", + "description": "The sku capacity" + }, + "family": { + "type": "string", + "description": "The sku family" + }, + "name": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Standard", + "RS0" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Sku name." + }, + "size": { + "type": "string", + "description": "The sku size" + }, + "tier": { + "type": "string", + "description": "The Sku tier." + } + }, + "required": [ + "name" + ], + "description": "Identifies the unique system identifier for each Azure resource." + }, + "SystemData": { + "type": "object", + "properties": { + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource creation (UTC)." + }, + "createdBy": { + "type": "string", + "description": "The identity that created the resource." + }, + "createdByType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of identity that created the resource." + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The type of identity that last modified the resource." + }, + "lastModifiedBy": { + "type": "string", + "description": "The identity that last modified the resource." + }, + "lastModifiedByType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of identity that last modified the resource." + } + }, + "description": "Metadata pertaining to creation and last modification of the resource." + }, + "UpgradeDetails": { + "type": "object", + "properties": {}, + "description": "Details for upgrading vault." + }, + "UserIdentity": { + "type": "object", + "properties": {}, + "description": "A resource identity that is managed by the user of the service." + }, + "VaultExtendedInfo": { + "type": "object", + "properties": { + "algorithm": { + "type": "string", + "description": "Algorithm for Vault ExtendedInfo" + }, + "encryptionKey": { + "type": "string", + "description": "Encryption key." + }, + "encryptionKeyThumbprint": { + "type": "string", + "description": "Encryption key thumbprint." + }, + "integrityKey": { + "type": "string", + "description": "Integrity key." + } + }, + "description": "Vault extended information." + }, + "VaultProperties": { + "type": "object", + "properties": { + "encryption": { + "oneOf": [ + { + "$ref": "#/definitions/VaultPropertiesEncryption" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Customer Managed Key details of the resource." + }, + "moveDetails": { + "oneOf": [ + { + "$ref": "#/definitions/VaultPropertiesMoveDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The details of the latest move operation performed on the Azure Resource" + }, + "upgradeDetails": { + "oneOf": [ + { + "$ref": "#/definitions/UpgradeDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Details for upgrading vault." + } + }, + "description": "Properties of the vault." + }, + "VaultPropertiesEncryption": { + "type": "object", + "properties": { + "infrastructureEncryption": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enabling/Disabling the Double Encryption state." + }, + "kekIdentity": { + "oneOf": [ + { + "$ref": "#/definitions/CmkKekIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The details of the identity used for CMK" + }, + "keyVaultProperties": { + "oneOf": [ + { + "$ref": "#/definitions/CmkKeyVaultProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of the Key Vault which hosts CMK" + } + }, + "description": "Customer Managed Key details of the resource." + }, + "VaultPropertiesMoveDetails": { + "type": "object", + "properties": {}, + "description": "The details of the latest move operation performed on the Azure Resource" + }, + "vaults_certificates_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "name": { + "type": "string", + "description": "Certificate friendly name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/RawCertificateData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Raw certificate data." + }, + "type": { + "type": "string", + "enum": [ + "certificates" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/certificates" + }, + "vaults_extendedInformation_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-01-01" + ] + }, + "etag": { + "type": "string", + "description": "Optional ETag." + }, + "name": { + "type": "string", + "enum": [ + "vaultExtendedInfo" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/VaultExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Vault extended information." + }, + "type": { + "type": "string", + "enum": [ + "extendedInformation" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/extendedInformation" + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index f54aa315d2..d45038ab8c 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -11464,6 +11464,15 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-12-01/Microsoft.RecoveryServices.json#/resourceDefinitions/vaults_extendedInformation" }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01/Microsoft.RecoveryServices.json#/resourceDefinitions/vaults" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01/Microsoft.RecoveryServices.json#/resourceDefinitions/vaults_certificates" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-01-01/Microsoft.RecoveryServices.json#/resourceDefinitions/vaults_extendedInformation" + }, { "$ref": "https://schema.management.azure.com/schemas/2016-08-10/Microsoft.RecoveryServices.SiteRecovery.json#/resourceDefinitions/vaults_replicationAlertSettings" }, From c297d7e9ee0f70d82775c02c652d151efbe32ca2 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Thu, 3 Mar 2022 10:40:52 +0000 Subject: [PATCH 24/29] 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 b936ed2a60..7068e76969 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -7125,7 +7125,8 @@ "2021-07-01", "2021-08-01", "2021-11-01-preview", - "2021-12-01" + "2021-12-01", + "2022-01-01" ], "Microsoft.RecoveryServices/vaults/backupEncryptionConfigs": [ "2020-10-01", @@ -7255,7 +7256,8 @@ "2021-07-01", "2021-08-01", "2021-11-01-preview", - "2021-12-01" + "2021-12-01", + "2022-01-01" ], "Microsoft.RecoveryServices/vaults/extendedInformation": [ "2016-06-01", @@ -7269,7 +7271,8 @@ "2021-07-01", "2021-08-01", "2021-11-01-preview", - "2021-12-01" + "2021-12-01", + "2022-01-01" ], "Microsoft.RecoveryServices/vaults/privateEndpointConnections": [ "2020-02-02", From 0a93e532ba2bccc9b0e28d1af29f944107efe194 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Fri, 4 Mar 2022 09:29:30 +0000 Subject: [PATCH 25/29] Autogenerate schemas --- schemas/2022-02-15/Microsoft.FluidRelay.json | 144 +++++++++++++++++++ schemas/common/autogeneratedResources.json | 3 + 2 files changed, 147 insertions(+) create mode 100644 schemas/2022-02-15/Microsoft.FluidRelay.json diff --git a/schemas/2022-02-15/Microsoft.FluidRelay.json b/schemas/2022-02-15/Microsoft.FluidRelay.json new file mode 100644 index 0000000000..11d42d311e --- /dev/null +++ b/schemas/2022-02-15/Microsoft.FluidRelay.json @@ -0,0 +1,144 @@ +{ + "id": "https://schema.management.azure.com/schemas/2022-02-15/Microsoft.FluidRelay.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.FluidRelay", + "description": "Microsoft FluidRelay Resource Types", + "resourceDefinitions": { + "fluidRelayServers": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-02-15" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/Identity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "The Fluid Relay server resource name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/FluidRelayServerProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of a Fluid Relay Service resource." + }, + "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.FluidRelay/fluidRelayServers" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.FluidRelay/fluidRelayServers" + } + }, + "definitions": { + "FluidRelayServerProperties": { + "type": "object", + "properties": { + "provisioningState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Succeeded", + "Failed", + "Canceled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Provision states for FluidRelay RP." + } + }, + "description": "The properties of a Fluid Relay Service resource." + }, + "Identity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The identity type." + }, + "userAssignedIdentities": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentitiesValue" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of user identities associated with the resource." + } + }, + "description": "Identity for the resource." + }, + "UserAssignedIdentitiesValue": { + "type": "object", + "properties": {} + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index d45038ab8c..84f20fc779 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -8707,6 +8707,9 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-09-10-preview/Microsoft.FluidRelay.json#/resourceDefinitions/fluidRelayServers" }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-02-15/Microsoft.FluidRelay.json#/resourceDefinitions/fluidRelayServers" + }, { "$ref": "https://schema.management.azure.com/schemas/2017-11-03-preview/Microsoft.HanaOnAzure.json#/resourceDefinitions/hanaInstances" }, From 9b3deeab9cc323085658f33f54b2d07a2a28eed1 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Fri, 4 Mar 2022 09:29:47 +0000 Subject: [PATCH 26/29] Update resource list --- generator/resources.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/generator/resources.json b/generator/resources.json index 7068e76969..2e02b0b80a 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -4146,7 +4146,8 @@ "2021-03-12-preview", "2021-06-15-preview", "2021-08-30-preview", - "2021-09-10-preview" + "2021-09-10-preview", + "2022-02-15" ], "Microsoft.Genomics/accounts": [ "2017-08-01-preview" From c5a82a1f7ec216cd457499f3593440d61548630f Mon Sep 17 00:00:00 2001 From: Jorge Cotillo Date: Fri, 4 Mar 2022 11:10:26 -0800 Subject: [PATCH 27/29] update gh action --- .github/workflows/generate-schemas-batch.yml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/.github/workflows/generate-schemas-batch.yml b/.github/workflows/generate-schemas-batch.yml index b857c86785..dde727cb47 100644 --- a/.github/workflows/generate-schemas-batch.yml +++ b/.github/workflows/generate-schemas-batch.yml @@ -25,6 +25,12 @@ jobs: with: ref: ${{ env.AUTOGENERATE_BRANCH_NAME }} + - uses: peterjgrainger/action-create-branch@v2.0.1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + branch: ${{ env.TEMP_AUTOGENERATE_BRANCH_NAME }} + - name: Clone azure-rest-api-specs uses: actions/checkout@v2.3.5 with: @@ -196,8 +202,8 @@ jobs: committer: GitHub author: ${{ env.AUTHOR }} <${{ env.AUTHOR_EMAIL }}> signoff: false - branch: ${{ env.TEMP_AUTOGENERATE_BRANCH_NAME }} - base: ${{ env.AUTOGENERATE_BRANCH_NAME }} + branch: ${{ env.AUTOGENERATE_BRANCH_NAME }}_tmp + branch-suffix: short-commit-hash delete-branch: true title: | Update Generated Schemas ${{ github.event.inputs.single_path && format('(single path: {0})', github.event.inputs.single_path) || '' }} From 20130e40a13631dfa1f3186d3113c6d7fb6e0897 Mon Sep 17 00:00:00 2001 From: Jorge Cotillo Date: Fri, 4 Mar 2022 19:22:48 -0800 Subject: [PATCH 28/29] update branch name --- .github/workflows/generate-schemas-batch.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/generate-schemas-batch.yml b/.github/workflows/generate-schemas-batch.yml index dde727cb47..35ca3ae723 100644 --- a/.github/workflows/generate-schemas-batch.yml +++ b/.github/workflows/generate-schemas-batch.yml @@ -202,7 +202,7 @@ jobs: committer: GitHub author: ${{ env.AUTHOR }} <${{ env.AUTHOR_EMAIL }}> signoff: false - branch: ${{ env.AUTOGENERATE_BRANCH_NAME }}_tmp + branch: ${{ env.AUTOGENERATE_BRANCH_NAME }}_ltst branch-suffix: short-commit-hash delete-branch: true title: | From d937d0b5b6ab4b46936733c289758cb64826173f Mon Sep 17 00:00:00 2001 From: jorgecotillo Date: Sat, 5 Mar 2022 09:47:24 +0000 Subject: [PATCH 29/29] Update Generated Schemas Generate schemas for https://github.com/Azure/azure-rest-api-specs/tree/c92b60168c4a39c19647331966923630ad436456 --- .../Microsoft.StreamAnalytics.json | 32 + .../2020-03-01/Microsoft.StreamAnalytics.json | 101 + .../Microsoft.StreamAnalytics.json | 36 +- .../Microsoft.SecurityInsights.json | 3514 +++++++++++++++++ 4 files changed, 3681 insertions(+), 2 deletions(-) create mode 100644 schemas/2021-10-01/Microsoft.SecurityInsights.json diff --git a/schemas/2017-04-01-preview/Microsoft.StreamAnalytics.json b/schemas/2017-04-01-preview/Microsoft.StreamAnalytics.json index a05d327d50..508f3e095f 100644 --- a/schemas/2017-04-01-preview/Microsoft.StreamAnalytics.json +++ b/schemas/2017-04-01-preview/Microsoft.StreamAnalytics.json @@ -1104,6 +1104,22 @@ "BlobReferenceInputDataSourceProperties": { "type": "object", "properties": { + "authenticationMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Msi", + "UserToken", + "ConnectionString" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Authentication Mode." + }, "container": { "type": "string", "description": "The name of a container within the associated Storage account. This container contains either the blob(s) to be read from or written to. Required on PUT (CreateOrReplace) requests." @@ -1166,6 +1182,22 @@ "BlobStreamInputDataSourceProperties": { "type": "object", "properties": { + "authenticationMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Msi", + "UserToken", + "ConnectionString" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Authentication Mode." + }, "container": { "type": "string", "description": "The name of a container within the associated Storage account. This container contains either the blob(s) to be read from or written to. Required on PUT (CreateOrReplace) requests." diff --git a/schemas/2020-03-01/Microsoft.StreamAnalytics.json b/schemas/2020-03-01/Microsoft.StreamAnalytics.json index 1a1844594f..eb276a48bd 100644 --- a/schemas/2020-03-01/Microsoft.StreamAnalytics.json +++ b/schemas/2020-03-01/Microsoft.StreamAnalytics.json @@ -468,6 +468,72 @@ }, "description": "The properties that are associated with an Azure Data Lake Store." }, + "AzureFunctionOutputDataSource": { + "type": "object", + "properties": { + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/AzureFunctionOutputDataSourceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties that are associated with an Azure Function output." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.AzureFunction" + ] + } + }, + "required": [ + "type" + ], + "description": "Defines the metadata of AzureFunctionOutputDataSource" + }, + "AzureFunctionOutputDataSourceProperties": { + "type": "object", + "properties": { + "apiKey": { + "type": "string", + "description": "If you want to use an Azure Function from another subscription, you can do so by providing the key to access your function." + }, + "functionAppName": { + "type": "string", + "description": "The name of your Azure Functions app." + }, + "functionName": { + "type": "string", + "description": "The name of the function in your Azure Functions app." + }, + "maxBatchCount": { + "oneOf": [ + { + "type": "number" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A property that lets you specify the maximum number of events in each batch that's sent to Azure Functions. The default value is 100." + }, + "maxBatchSize": { + "oneOf": [ + { + "type": "number" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A property that lets you set the maximum size for each output batch that's sent to your Azure function. The input unit is in bytes. By default, this value is 262,144 bytes (256 KB)." + } + }, + "description": "The properties that are associated with an Azure Function output." + }, "AzureMachineLearningWebServiceFunctionBinding": { "type": "object", "properties": { @@ -1013,6 +1079,22 @@ "BlobReferenceInputDataSourceProperties": { "type": "object", "properties": { + "authenticationMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Msi", + "UserToken", + "ConnectionString" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Authentication Mode." + }, "container": { "type": "string", "description": "The name of a container within the associated Storage account. This container contains either the blob(s) to be read from or written to. Required on PUT (CreateOrReplace) requests." @@ -1075,6 +1157,22 @@ "BlobStreamInputDataSourceProperties": { "type": "object", "properties": { + "authenticationMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Msi", + "UserToken", + "ConnectionString" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Authentication Mode." + }, "container": { "type": "string", "description": "The name of a container within the associated Storage account. This container contains either the blob(s) to be read from or written to. Required on PUT (CreateOrReplace) requests." @@ -1934,6 +2032,9 @@ { "$ref": "#/definitions/DocumentDbOutputDataSource" }, + { + "$ref": "#/definitions/AzureFunctionOutputDataSource" + }, { "$ref": "#/definitions/ServiceBusQueueOutputDataSource" }, diff --git a/schemas/2021-10-01-preview/Microsoft.StreamAnalytics.json b/schemas/2021-10-01-preview/Microsoft.StreamAnalytics.json index 7a56bf7b47..dcecdffa30 100644 --- a/schemas/2021-10-01-preview/Microsoft.StreamAnalytics.json +++ b/schemas/2021-10-01-preview/Microsoft.StreamAnalytics.json @@ -377,7 +377,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The properties that are associated with a DocumentDB output." + "description": "The properties that are associated with an Azure Function output." }, "type": { "type": "string", @@ -429,7 +429,7 @@ "description": "A property that lets you set the maximum size for each output batch that's sent to your Azure function. The input unit is in bytes. By default, this value is 262,144 bytes (256 KB)." } }, - "description": "The properties that are associated with a DocumentDB output." + "description": "The properties that are associated with an Azure Function output." }, "AzureMachineLearningServiceFunctionBinding": { "type": "object", @@ -1116,6 +1116,22 @@ "BlobReferenceInputDataSourceProperties": { "type": "object", "properties": { + "authenticationMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Msi", + "UserToken", + "ConnectionString" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Authentication Mode." + }, "container": { "type": "string", "description": "The name of a container within the associated Storage account. This container contains either the blob(s) to be read from or written to. Required on PUT (CreateOrReplace) requests." @@ -1178,6 +1194,22 @@ "BlobStreamInputDataSourceProperties": { "type": "object", "properties": { + "authenticationMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Msi", + "UserToken", + "ConnectionString" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Authentication Mode." + }, "container": { "type": "string", "description": "The name of a container within the associated Storage account. This container contains either the blob(s) to be read from or written to. Required on PUT (CreateOrReplace) requests." diff --git a/schemas/2021-10-01/Microsoft.SecurityInsights.json b/schemas/2021-10-01/Microsoft.SecurityInsights.json new file mode 100644 index 0000000000..5ff4365eea --- /dev/null +++ b/schemas/2021-10-01/Microsoft.SecurityInsights.json @@ -0,0 +1,3514 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-10-01/Microsoft.SecurityInsights.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.SecurityInsights", + "description": "Microsoft SecurityInsights Resource Types", + "resourceDefinitions": {}, + "extension_resourceDefinitions": { + "alertRules": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/FusionAlertRule" + }, + { + "$ref": "#/definitions/MicrosoftSecurityIncidentCreationAlertRule" + }, + { + "$ref": "#/definitions/ScheduledAlertRule" + } + ], + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "etag": { + "type": "string", + "description": "Etag of the azure resource" + }, + "name": { + "type": "string", + "description": "Alert rule ID" + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/alertRules_actions_childResource" + } + ] + } + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.SecurityInsights/alertRules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "type" + ], + "description": "Microsoft.SecurityInsights/alertRules" + }, + "alertRules_actions": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "etag": { + "type": "string", + "description": "Etag of the azure resource" + }, + "name": { + "type": "string", + "description": "Action ID" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ActionRequestProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Action property bag." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.SecurityInsights/alertRules/actions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.SecurityInsights/alertRules/actions" + }, + "automationRules": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "etag": { + "type": "string", + "description": "Etag of the azure resource" + }, + "name": { + "type": "string", + "description": "Automation rule ID" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/AutomationRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Automation rule properties" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.SecurityInsights/automationRules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.SecurityInsights/automationRules" + }, + "bookmarks": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "etag": { + "type": "string", + "description": "Etag of the azure resource" + }, + "name": { + "type": "string", + "description": "Bookmark ID" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BookmarkProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes bookmark properties" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.SecurityInsights/bookmarks" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.SecurityInsights/bookmarks" + }, + "dataConnectors": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AADDataConnector" + }, + { + "$ref": "#/definitions/AATPDataConnector" + }, + { + "$ref": "#/definitions/ASCDataConnector" + }, + { + "$ref": "#/definitions/AwsCloudTrailDataConnector" + }, + { + "$ref": "#/definitions/MCASDataConnector" + }, + { + "$ref": "#/definitions/MDATPDataConnector" + }, + { + "$ref": "#/definitions/TIDataConnector" + }, + { + "$ref": "#/definitions/OfficeDataConnector" + } + ], + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "etag": { + "type": "string", + "description": "Etag of the azure resource" + }, + "name": { + "type": "string", + "description": "Connector ID" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.SecurityInsights/dataConnectors" + ] + } + }, + "required": [ + "apiVersion", + "name", + "type" + ], + "description": "Microsoft.SecurityInsights/dataConnectors" + }, + "incidents": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "etag": { + "type": "string", + "description": "Etag of the azure resource" + }, + "name": { + "type": "string", + "description": "Incident ID" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/IncidentProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes incident properties" + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/incidents_comments_childResource" + }, + { + "$ref": "#/definitions/incidents_relations_childResource" + } + ] + } + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.SecurityInsights/incidents" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.SecurityInsights/incidents" + }, + "incidents_comments": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "etag": { + "type": "string", + "description": "Etag of the azure resource" + }, + "name": { + "type": "string", + "description": "Incident comment ID" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/IncidentCommentProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Incident comment property bag." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.SecurityInsights/incidents/comments" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.SecurityInsights/incidents/comments" + }, + "incidents_relations": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "etag": { + "type": "string", + "description": "Etag of the azure resource" + }, + "name": { + "type": "string", + "description": "Relation Name" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/RelationProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Relation property bag." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.SecurityInsights/incidents/relations" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.SecurityInsights/incidents/relations" + }, + "onboardingStates": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "etag": { + "type": "string", + "description": "Etag of the azure resource" + }, + "name": { + "type": "string", + "description": "The Sentinel onboarding state name. Supports - default" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SentinelOnboardingStateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Sentinel onboarding state properties" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.SecurityInsights/onboardingStates" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.SecurityInsights/onboardingStates" + }, + "threatIntelligence_indicators": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "etag": { + "type": "string", + "description": "Etag of the azure resource" + }, + "name": { + "type": "string", + "description": "Threat intelligence indicator name field." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThreatIntelligenceIndicatorProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes threat intelligence entity properties" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.SecurityInsights/threatIntelligence/indicators" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.SecurityInsights/threatIntelligence/indicators" + }, + "watchlists": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "etag": { + "type": "string", + "description": "Etag of the azure resource" + }, + "name": { + "type": "string", + "description": "The watchlist alias" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/WatchlistProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes watchlist properties" + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/watchlists_watchlistItems_childResource" + } + ] + } + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.SecurityInsights/watchlists" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.SecurityInsights/watchlists" + }, + "watchlists_watchlistItems": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "etag": { + "type": "string", + "description": "Etag of the azure resource" + }, + "name": { + "type": "string", + "description": "The watchlist item id (GUID)" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/WatchlistItemProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes watchlist item properties" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.SecurityInsights/watchlists/watchlistItems" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.SecurityInsights/watchlists/watchlistItems" + } + }, + "definitions": { + "AADDataConnector": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "enum": [ + "AzureActiveDirectory" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/AADDataConnectorProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "AAD (Azure Active Directory) data connector properties." + } + }, + "required": [ + "kind" + ], + "description": "Represents AAD (Azure Active Directory) data connector." + }, + "AADDataConnectorProperties": { + "type": "object", + "properties": { + "dataTypes": { + "oneOf": [ + { + "$ref": "#/definitions/AlertsDataTypeOfDataConnector" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Alerts data type for data connectors." + }, + "tenantId": { + "type": "string", + "description": "The tenant id to connect to, and get the data from." + } + }, + "description": "AAD (Azure Active Directory) data connector properties." + }, + "AATPDataConnector": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "enum": [ + "AzureAdvancedThreatProtection" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/AATPDataConnectorProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "AATP (Azure Advanced Threat Protection) data connector properties." + } + }, + "required": [ + "kind" + ], + "description": "Represents AATP (Azure Advanced Threat Protection) data connector." + }, + "AATPDataConnectorProperties": { + "type": "object", + "properties": { + "dataTypes": { + "oneOf": [ + { + "$ref": "#/definitions/AlertsDataTypeOfDataConnector" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Alerts data type for data connectors." + }, + "tenantId": { + "type": "string", + "description": "The tenant id to connect to, and get the data from." + } + }, + "description": "AATP (Azure Advanced Threat Protection) data connector properties." + }, + "ActionRequestProperties": { + "type": "object", + "properties": { + "logicAppResourceId": { + "type": "string", + "description": "Logic App Resource Id, /subscriptions/{my-subscription}/resourceGroups/{my-resource-group}/providers/Microsoft.Logic/workflows/{my-workflow-id}." + }, + "triggerUri": { + "type": "string", + "description": "Logic App Callback URL for this specific workflow." + } + }, + "required": [ + "logicAppResourceId", + "triggerUri" + ], + "description": "Action property bag." + }, + "AlertDetailsOverride": { + "type": "object", + "properties": { + "alertDescriptionFormat": { + "type": "string", + "description": "the format containing columns name(s) to override the alert description" + }, + "alertDisplayNameFormat": { + "type": "string", + "description": "the format containing columns name(s) to override the alert name" + }, + "alertSeverityColumnName": { + "type": "string", + "description": "the column name to take the alert severity from" + }, + "alertTacticsColumnName": { + "type": "string", + "description": "the column name to take the alert tactics from" + } + }, + "description": "Settings for how to dynamically override alert static details" + }, + "alertRules_actions_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "etag": { + "type": "string", + "description": "Etag of the azure resource" + }, + "name": { + "type": "string", + "description": "Action ID" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ActionRequestProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Action property bag." + }, + "type": { + "type": "string", + "enum": [ + "actions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.SecurityInsights/alertRules/actions" + }, + "AlertsDataTypeOfDataConnector": { + "type": "object", + "properties": { + "alerts": { + "oneOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Common field for data type in data connectors." + } + }, + "description": "Alerts data type for data connectors." + }, + "ASCDataConnector": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "enum": [ + "AzureSecurityCenter" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ASCDataConnectorProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "ASC (Azure Security Center) data connector properties." + } + }, + "required": [ + "kind" + ], + "description": "Represents ASC (Azure Security Center) data connector." + }, + "ASCDataConnectorProperties": { + "type": "object", + "properties": { + "dataTypes": { + "oneOf": [ + { + "$ref": "#/definitions/AlertsDataTypeOfDataConnector" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Alerts data type for data connectors." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription id to connect to, and get the data from." + } + }, + "description": "ASC (Azure Security Center) data connector properties." + }, + "AutomationRuleAction": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AutomationRuleModifyPropertiesAction" + }, + { + "$ref": "#/definitions/AutomationRuleRunPlaybookAction" + } + ], + "properties": { + "order": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "required": [ + "order" + ], + "description": "Describes an automation rule action" + }, + "AutomationRuleCondition": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/PropertyConditionProperties" + } + ], + "properties": {}, + "description": "Describes an automation rule condition" + }, + "AutomationRuleModifyPropertiesAction": { + "type": "object", + "properties": { + "actionConfiguration": { + "oneOf": [ + { + "$ref": "#/definitions/IncidentPropertiesAction" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "actionType": { + "type": "string", + "enum": [ + "ModifyProperties" + ] + } + }, + "required": [ + "actionType" + ], + "description": "Describes an automation rule action to modify an object's properties." + }, + "AutomationRuleProperties": { + "type": "object", + "properties": { + "actions": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/AutomationRuleAction" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The actions to execute when the automation rule is triggered" + }, + "displayName": { + "type": "string", + "maxLength": 500, + "description": "The display name of the automation rule" + }, + "order": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 1000 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The order of execution of the automation rule" + }, + "triggeringLogic": { + "oneOf": [ + { + "$ref": "#/definitions/AutomationRuleTriggeringLogic" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes automation rule triggering logic" + } + }, + "required": [ + "actions", + "displayName", + "order", + "triggeringLogic" + ], + "description": "Automation rule properties" + }, + "AutomationRulePropertyValuesCondition": { + "type": "object", + "properties": { + "operator": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Equals", + "NotEquals", + "Contains", + "NotContains", + "StartsWith", + "NotStartsWith", + "EndsWith", + "NotEndsWith" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "propertyName": { + "oneOf": [ + { + "type": "string", + "enum": [ + "IncidentTitle", + "IncidentDescription", + "IncidentSeverity", + "IncidentStatus", + "IncidentRelatedAnalyticRuleIds", + "IncidentTactics", + "IncidentLabel", + "IncidentProviderName", + "AccountAadTenantId", + "AccountAadUserId", + "AccountName", + "AccountNTDomain", + "AccountPUID", + "AccountSid", + "AccountObjectGuid", + "AccountUPNSuffix", + "AlertProductNames", + "AzureResourceResourceId", + "AzureResourceSubscriptionId", + "CloudApplicationAppId", + "CloudApplicationAppName", + "DNSDomainName", + "FileDirectory", + "FileName", + "FileHashValue", + "HostAzureID", + "HostName", + "HostNetBiosName", + "HostNTDomain", + "HostOSVersion", + "IoTDeviceId", + "IoTDeviceName", + "IoTDeviceType", + "IoTDeviceVendor", + "IoTDeviceModel", + "IoTDeviceOperatingSystem", + "IPAddress", + "MailboxDisplayName", + "MailboxPrimaryAddress", + "MailboxUPN", + "MailMessageDeliveryAction", + "MailMessageDeliveryLocation", + "MailMessageRecipient", + "MailMessageSenderIP", + "MailMessageSubject", + "MailMessageP1Sender", + "MailMessageP2Sender", + "MalwareCategory", + "MalwareName", + "ProcessCommandLine", + "ProcessId", + "RegistryKey", + "RegistryValueData", + "Url" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "propertyValues": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + } + }, + "AutomationRuleRunPlaybookAction": { + "type": "object", + "properties": { + "actionConfiguration": { + "oneOf": [ + { + "$ref": "#/definitions/PlaybookActionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "actionType": { + "type": "string", + "enum": [ + "RunPlaybook" + ] + } + }, + "required": [ + "actionType" + ], + "description": "Describes an automation rule action to run a playbook" + }, + "AutomationRuleTriggeringLogic": { + "type": "object", + "properties": { + "conditions": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/AutomationRuleCondition" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The conditions to evaluate to determine if the automation rule should be triggered on a given object" + }, + "expirationTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Determines when the automation rule should automatically expire and be disabled." + }, + "isEnabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Determines whether the automation rule is enabled or disabled" + }, + "triggersOn": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Incidents" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "triggersWhen": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Created" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "required": [ + "isEnabled", + "triggersOn", + "triggersWhen" + ], + "description": "Describes automation rule triggering logic" + }, + "AwsCloudTrailDataConnector": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "enum": [ + "AmazonWebServicesCloudTrail" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/AwsCloudTrailDataConnectorProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Amazon Web Services CloudTrail data connector properties." + } + }, + "required": [ + "kind" + ], + "description": "Represents Amazon Web Services CloudTrail data connector." + }, + "AwsCloudTrailDataConnectorDataTypes": { + "type": "object", + "properties": { + "logs": { + "oneOf": [ + { + "$ref": "#/definitions/AwsCloudTrailDataConnectorDataTypesLogs" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Logs data type." + } + }, + "description": "The available data types for Amazon Web Services CloudTrail data connector." + }, + "AwsCloudTrailDataConnectorDataTypesLogs": { + "type": "object", + "properties": { + "state": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describe whether this data type connection is enabled or not." + } + }, + "description": "Logs data type." + }, + "AwsCloudTrailDataConnectorProperties": { + "type": "object", + "properties": { + "awsRoleArn": { + "type": "string", + "description": "The Aws Role Arn (with CloudTrailReadOnly policy) that is used to access the Aws account." + }, + "dataTypes": { + "oneOf": [ + { + "$ref": "#/definitions/AwsCloudTrailDataConnectorDataTypes" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The available data types for Amazon Web Services CloudTrail data connector." + } + }, + "description": "Amazon Web Services CloudTrail data connector properties." + }, + "BookmarkProperties": { + "type": "object", + "properties": { + "created": { + "type": "string", + "format": "date-time", + "description": "The time the bookmark was created" + }, + "createdBy": { + "oneOf": [ + { + "$ref": "#/definitions/UserInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "User information that made some action" + }, + "displayName": { + "type": "string", + "description": "The display name of the bookmark" + }, + "eventTime": { + "type": "string", + "format": "date-time", + "description": "The bookmark event time" + }, + "incidentInfo": { + "oneOf": [ + { + "$ref": "#/definitions/IncidentInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes related incident information for the bookmark" + }, + "labels": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of labels relevant to this bookmark" + }, + "notes": { + "type": "string", + "description": "The notes of the bookmark" + }, + "query": { + "type": "string", + "description": "The query of the bookmark." + }, + "queryEndTime": { + "type": "string", + "format": "date-time", + "description": "The end time for the query" + }, + "queryResult": { + "type": "string", + "description": "The query result of the bookmark." + }, + "queryStartTime": { + "type": "string", + "format": "date-time", + "description": "The start time for the query" + }, + "updated": { + "type": "string", + "format": "date-time", + "description": "The last time the bookmark was updated" + }, + "updatedBy": { + "oneOf": [ + { + "$ref": "#/definitions/UserInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "User information that made some action" + } + }, + "required": [ + "displayName", + "query" + ], + "description": "Describes bookmark properties" + }, + "DataConnectorDataTypeCommon": { + "type": "object", + "properties": { + "state": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describe whether this data type connection is enabled or not." + } + }, + "description": "Common field for data type in data connectors." + }, + "EntityMapping": { + "type": "object", + "properties": { + "entityType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Account", + "Host", + "IP", + "Malware", + "File", + "Process", + "CloudApplication", + "DNS", + "AzureResource", + "FileHash", + "RegistryKey", + "RegistryValue", + "SecurityGroup", + "URL", + "Mailbox", + "MailCluster", + "MailMessage", + "SubmissionMail" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "fieldMappings": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/FieldMapping" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "array of field mappings for the given entity mapping" + } + }, + "description": "Single entity mapping for the alert rule" + }, + "EventGroupingSettings": { + "type": "object", + "properties": { + "aggregationKind": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SingleAlert", + "AlertPerResult" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "description": "Event grouping settings property bag." + }, + "FieldMapping": { + "type": "object", + "properties": { + "columnName": { + "type": "string", + "description": "the column name to be mapped to the identifier" + }, + "identifier": { + "type": "string", + "description": "the V3 identifier of the entity" + } + }, + "description": "A single field mapping of the mapped entity" + }, + "FusionAlertRule": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "enum": [ + "Fusion" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/FusionAlertRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Fusion alert rule base property bag." + } + }, + "required": [ + "kind" + ], + "description": "Represents Fusion alert rule." + }, + "FusionAlertRuleProperties": { + "type": "object", + "properties": { + "alertRuleTemplateName": { + "type": "string", + "description": "The Name of the alert rule template used to create this rule." + }, + "enabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Determines whether this alert rule is enabled or disabled." + } + }, + "required": [ + "alertRuleTemplateName", + "enabled" + ], + "description": "Fusion alert rule base property bag." + }, + "GroupingConfiguration": { + "type": "object", + "properties": { + "enabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Grouping enabled" + }, + "groupByAlertDetails": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "DisplayName", + "Severity" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A list of alert details to group by (when matchingMethod is Selected)" + }, + "groupByCustomDetails": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A list of custom details keys to group by (when matchingMethod is Selected). Only keys defined in the current alert rule may be used." + }, + "groupByEntities": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Account", + "Host", + "IP", + "Malware", + "File", + "Process", + "CloudApplication", + "DNS", + "AzureResource", + "FileHash", + "RegistryKey", + "RegistryValue", + "SecurityGroup", + "URL", + "Mailbox", + "MailCluster", + "MailMessage", + "SubmissionMail" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A list of entity types to group by (when matchingMethod is Selected). Only entities defined in the current alert rule may be used." + }, + "lookbackDuration": { + "type": "string", + "format": "duration", + "description": "Limit the group to alerts created within the lookback duration (in ISO 8601 duration format)" + }, + "matchingMethod": { + "oneOf": [ + { + "type": "string", + "enum": [ + "AllEntities", + "AnyAlert", + "Selected" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Grouping matching method. When method is Selected at least one of groupByEntities, groupByAlertDetails, groupByCustomDetails must be provided and not empty." + }, + "reopenClosedIncident": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Re-open closed matching incidents" + } + }, + "required": [ + "enabled", + "lookbackDuration", + "matchingMethod", + "reopenClosedIncident" + ], + "description": "Grouping configuration property bag." + }, + "IncidentCommentProperties": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "The comment message" + } + }, + "required": [ + "message" + ], + "description": "Incident comment property bag." + }, + "IncidentConfiguration": { + "type": "object", + "properties": { + "createIncident": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Create incidents from alerts triggered by this analytics rule" + }, + "groupingConfiguration": { + "oneOf": [ + { + "$ref": "#/definitions/GroupingConfiguration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Grouping configuration property bag." + } + }, + "required": [ + "createIncident" + ], + "description": "Incident Configuration property bag." + }, + "IncidentInfo": { + "type": "object", + "properties": { + "incidentId": { + "type": "string", + "description": "Incident Id" + }, + "relationName": { + "type": "string", + "description": "Relation Name" + }, + "severity": { + "oneOf": [ + { + "type": "string", + "enum": [ + "High", + "Medium", + "Low", + "Informational" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The severity of the incident." + }, + "title": { + "type": "string", + "description": "The title of the incident" + } + }, + "description": "Describes related incident information for the bookmark" + }, + "IncidentLabel": { + "type": "object", + "properties": { + "labelName": { + "type": "string", + "description": "The name of the label" + }, + "labelType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "User", + "AutoAssigned" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "required": [ + "labelName" + ], + "description": "Represents an incident label" + }, + "IncidentOwnerInfo": { + "type": "object", + "properties": { + "assignedTo": { + "type": "string", + "description": "The name of the user the incident is assigned to." + }, + "email": { + "type": "string", + "description": "The email of the user the incident is assigned to." + }, + "objectId": { + "oneOf": [ + { + "type": "string", + "pattern": "^[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The object id of the user the incident is assigned to." + }, + "userPrincipalName": { + "type": "string", + "description": "The user principal name of the user the incident is assigned to." + } + }, + "description": "Information on the user an incident is assigned to" + }, + "IncidentOwnerInfoModel": { + "type": "object", + "properties": { + "assignedTo": { + "type": "string", + "description": "The name of the user the incident is assigned to." + }, + "email": { + "type": "string", + "description": "The email of the user the incident is assigned to." + }, + "objectId": { + "oneOf": [ + { + "type": "string", + "pattern": "^[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The object id of the user the incident is assigned to." + }, + "ownerType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Unknown", + "User", + "Group" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of the owner the incident is assigned to." + }, + "userPrincipalName": { + "type": "string", + "description": "The user principal name of the user the incident is assigned to." + } + }, + "description": "Information on the user an incident is assigned to" + }, + "IncidentProperties": { + "type": "object", + "properties": { + "classification": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Undetermined", + "TruePositive", + "BenignPositive", + "FalsePositive" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The reason the incident was closed." + }, + "classificationComment": { + "type": "string", + "description": "Describes the reason the incident was closed" + }, + "classificationReason": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SuspiciousActivity", + "SuspiciousButExpected", + "IncorrectAlertLogic", + "InaccurateData" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The classification reason the incident was closed with." + }, + "description": { + "type": "string", + "description": "The description of the incident" + }, + "firstActivityTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The time of the first activity in the incident" + }, + "labels": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/IncidentLabel" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of labels relevant to this incident" + }, + "lastActivityTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The time of the last activity in the incident" + }, + "owner": { + "oneOf": [ + { + "$ref": "#/definitions/IncidentOwnerInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Information on the user an incident is assigned to" + }, + "severity": { + "oneOf": [ + { + "type": "string", + "enum": [ + "High", + "Medium", + "Low", + "Informational" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The severity of the incident." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "New", + "Active", + "Closed" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The status of the incident." + }, + "title": { + "type": "string", + "description": "The title of the incident" + } + }, + "required": [ + "severity", + "status", + "title" + ], + "description": "Describes incident properties" + }, + "IncidentPropertiesAction": { + "type": "object", + "properties": { + "classification": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Undetermined", + "TruePositive", + "BenignPositive", + "FalsePositive" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "classificationComment": { + "type": "string", + "description": "Describes the reason the incident was closed" + }, + "classificationReason": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SuspiciousActivity", + "SuspiciousButExpected", + "IncorrectAlertLogic", + "InaccurateData" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "labels": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/IncidentLabel" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of labels to add to the incident" + }, + "owner": { + "oneOf": [ + { + "$ref": "#/definitions/IncidentOwnerInfoModel" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Information on the user an incident is assigned to" + }, + "severity": { + "oneOf": [ + { + "type": "string", + "enum": [ + "High", + "Medium", + "Low", + "Informational" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "New", + "Active", + "Closed" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + } + }, + "incidents_comments_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "etag": { + "type": "string", + "description": "Etag of the azure resource" + }, + "name": { + "type": "string", + "description": "Incident comment ID" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/IncidentCommentProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Incident comment property bag." + }, + "type": { + "type": "string", + "enum": [ + "comments" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.SecurityInsights/incidents/comments" + }, + "incidents_relations_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "etag": { + "type": "string", + "description": "Etag of the azure resource" + }, + "name": { + "type": "string", + "description": "Relation Name" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/RelationProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Relation property bag." + }, + "type": { + "type": "string", + "enum": [ + "relations" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.SecurityInsights/incidents/relations" + }, + "MCASDataConnector": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "enum": [ + "MicrosoftCloudAppSecurity" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MCASDataConnectorProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "MCAS (Microsoft Cloud App Security) data connector properties." + } + }, + "required": [ + "kind" + ], + "description": "Represents MCAS (Microsoft Cloud App Security) data connector." + }, + "MCASDataConnectorDataTypes": { + "type": "object", + "properties": { + "alerts": { + "oneOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Common field for data type in data connectors." + }, + "discoveryLogs": { + "oneOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Common field for data type in data connectors." + } + }, + "description": "The available data types for MCAS (Microsoft Cloud App Security) data connector." + }, + "MCASDataConnectorProperties": { + "type": "object", + "properties": { + "dataTypes": { + "oneOf": [ + { + "$ref": "#/definitions/MCASDataConnectorDataTypes" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The available data types for MCAS (Microsoft Cloud App Security) data connector." + }, + "tenantId": { + "type": "string", + "description": "The tenant id to connect to, and get the data from." + } + }, + "description": "MCAS (Microsoft Cloud App Security) data connector properties." + }, + "MDATPDataConnector": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "enum": [ + "MicrosoftDefenderAdvancedThreatProtection" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MDATPDataConnectorProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "MDATP (Microsoft Defender Advanced Threat Protection) data connector properties." + } + }, + "required": [ + "kind" + ], + "description": "Represents MDATP (Microsoft Defender Advanced Threat Protection) data connector." + }, + "MDATPDataConnectorProperties": { + "type": "object", + "properties": { + "dataTypes": { + "oneOf": [ + { + "$ref": "#/definitions/AlertsDataTypeOfDataConnector" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Alerts data type for data connectors." + }, + "tenantId": { + "type": "string", + "description": "The tenant id to connect to, and get the data from." + } + }, + "description": "MDATP (Microsoft Defender Advanced Threat Protection) data connector properties." + }, + "MicrosoftSecurityIncidentCreationAlertRule": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "enum": [ + "MicrosoftSecurityIncidentCreation" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MicrosoftSecurityIncidentCreationAlertRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "MicrosoftSecurityIncidentCreation rule property bag." + } + }, + "required": [ + "kind" + ], + "description": "Represents MicrosoftSecurityIncidentCreation rule." + }, + "MicrosoftSecurityIncidentCreationAlertRuleProperties": { + "type": "object", + "properties": { + "alertRuleTemplateName": { + "type": "string", + "description": "The Name of the alert rule template used to create this rule." + }, + "description": { + "type": "string", + "description": "The description of the alert rule." + }, + "displayName": { + "type": "string", + "description": "The display name for alerts created by this alert rule." + }, + "displayNamesExcludeFilter": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "the alerts' displayNames on which the cases will not be generated" + }, + "displayNamesFilter": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "the alerts' displayNames on which the cases will be generated" + }, + "enabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Determines whether this alert rule is enabled or disabled." + }, + "productFilter": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Microsoft Cloud App Security", + "Azure Security Center", + "Azure Advanced Threat Protection", + "Azure Active Directory Identity Protection", + "Azure Security Center for IoT" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The alerts' productName on which the cases will be generated." + }, + "severitiesFilter": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "High", + "Medium", + "Low", + "Informational" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "the alerts' severities on which the cases will be generated" + } + }, + "required": [ + "displayName", + "enabled", + "productFilter" + ], + "description": "MicrosoftSecurityIncidentCreation rule property bag." + }, + "OfficeDataConnector": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "enum": [ + "Office365" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/OfficeDataConnectorProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Office data connector properties." + } + }, + "required": [ + "kind" + ], + "description": "Represents office data connector." + }, + "OfficeDataConnectorDataTypes": { + "type": "object", + "properties": { + "exchange": { + "oneOf": [ + { + "$ref": "#/definitions/OfficeDataConnectorDataTypesExchange" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Exchange data type connection." + }, + "sharePoint": { + "oneOf": [ + { + "$ref": "#/definitions/OfficeDataConnectorDataTypesSharePoint" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "SharePoint data type connection." + }, + "teams": { + "oneOf": [ + { + "$ref": "#/definitions/OfficeDataConnectorDataTypesTeams" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Teams data type connection." + } + }, + "description": "The available data types for office data connector." + }, + "OfficeDataConnectorDataTypesExchange": { + "type": "object", + "properties": { + "state": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describe whether this data type connection is enabled or not." + } + }, + "description": "Exchange data type connection." + }, + "OfficeDataConnectorDataTypesSharePoint": { + "type": "object", + "properties": { + "state": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describe whether this data type connection is enabled or not." + } + }, + "description": "SharePoint data type connection." + }, + "OfficeDataConnectorDataTypesTeams": { + "type": "object", + "properties": { + "state": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describe whether this data type connection is enabled or not." + } + }, + "description": "Teams data type connection." + }, + "OfficeDataConnectorProperties": { + "type": "object", + "properties": { + "dataTypes": { + "oneOf": [ + { + "$ref": "#/definitions/OfficeDataConnectorDataTypes" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The available data types for office data connector." + }, + "tenantId": { + "type": "string", + "description": "The tenant id to connect to, and get the data from." + } + }, + "description": "Office data connector properties." + }, + "PlaybookActionProperties": { + "type": "object", + "properties": { + "logicAppResourceId": { + "type": "string", + "description": "The resource id of the playbook resource" + }, + "tenantId": { + "oneOf": [ + { + "type": "string", + "pattern": "^[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The tenant id of the playbook resource" + } + }, + "required": [ + "logicAppResourceId" + ] + }, + "PropertyConditionProperties": { + "type": "object", + "properties": { + "conditionProperties": { + "oneOf": [ + { + "$ref": "#/definitions/AutomationRulePropertyValuesCondition" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "conditionType": { + "type": "string", + "enum": [ + "Property" + ] + } + }, + "required": [ + "conditionType" + ], + "description": "Describes an automation rule condition that evaluates a property's value" + }, + "RelationProperties": { + "type": "object", + "properties": { + "relatedResourceId": { + "type": "string", + "description": "The resource ID of the related resource" + } + }, + "required": [ + "relatedResourceId" + ], + "description": "Relation property bag." + }, + "ScheduledAlertRule": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "enum": [ + "Scheduled" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ScheduledAlertRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Scheduled alert rule base property bag." + } + }, + "required": [ + "kind" + ], + "description": "Represents scheduled alert rule." + }, + "ScheduledAlertRuleProperties": { + "type": "object", + "properties": { + "alertDetailsOverride": { + "oneOf": [ + { + "$ref": "#/definitions/AlertDetailsOverride" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Settings for how to dynamically override alert static details" + }, + "alertRuleTemplateName": { + "type": "string", + "description": "The Name of the alert rule template used to create this rule." + }, + "customDetails": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Dictionary of string key-value pairs of columns to be attached to the alert" + }, + "description": { + "type": "string", + "description": "The description of the alert rule." + }, + "displayName": { + "type": "string", + "description": "The display name for alerts created by this alert rule." + }, + "enabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Determines whether this alert rule is enabled or disabled." + }, + "entityMappings": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/EntityMapping" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of entity mappings of the alert rule" + }, + "eventGroupingSettings": { + "oneOf": [ + { + "$ref": "#/definitions/EventGroupingSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Event grouping settings property bag." + }, + "incidentConfiguration": { + "oneOf": [ + { + "$ref": "#/definitions/IncidentConfiguration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Incident Configuration property bag." + }, + "query": { + "type": "string", + "description": "The query that creates alerts for this rule." + }, + "queryFrequency": { + "type": "string", + "format": "duration", + "description": "The frequency (in ISO 8601 duration format) for this alert rule to run." + }, + "queryPeriod": { + "type": "string", + "format": "duration", + "description": "The period (in ISO 8601 duration format) that this alert rule looks at." + }, + "severity": { + "oneOf": [ + { + "type": "string", + "enum": [ + "High", + "Medium", + "Low", + "Informational" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The severity for alerts created by this alert rule." + }, + "suppressionDuration": { + "type": "string", + "format": "duration", + "description": "The suppression (in ISO 8601 duration format) to wait since last time this alert rule been triggered." + }, + "suppressionEnabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Determines whether the suppression for this alert rule is enabled or disabled." + }, + "tactics": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "InitialAccess", + "Execution", + "Persistence", + "PrivilegeEscalation", + "DefenseEvasion", + "CredentialAccess", + "Discovery", + "LateralMovement", + "Collection", + "Exfiltration", + "CommandAndControl", + "Impact", + "PreAttack" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The tactics of the alert rule" + }, + "triggerOperator": { + "oneOf": [ + { + "type": "string", + "enum": [ + "GreaterThan", + "LessThan", + "Equal", + "NotEqual" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The operation against the threshold that triggers alert rule." + }, + "triggerThreshold": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The threshold triggers this alert rule." + } + }, + "required": [ + "displayName", + "enabled", + "suppressionDuration", + "suppressionEnabled" + ], + "description": "Scheduled alert rule base property bag." + }, + "SentinelOnboardingStateProperties": { + "type": "object", + "properties": { + "customerManagedKey": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Flag that indicates the status of the CMK setting" + } + }, + "description": "The Sentinel onboarding state properties" + }, + "ThreatIntelligenceExternalReference": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "External reference description" + }, + "externalId": { + "type": "string", + "description": "External reference ID" + }, + "hashes": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "External reference hashes" + }, + "sourceName": { + "type": "string", + "description": "External reference source name" + }, + "url": { + "type": "string", + "description": "External reference URL" + } + }, + "description": "Describes external reference" + }, + "ThreatIntelligenceGranularMarkingModel": { + "type": "object", + "properties": { + "language": { + "type": "string", + "description": "Language granular marking model" + }, + "markingRef": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "marking reference granular marking model" + }, + "selectors": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "granular marking model selectors" + } + }, + "description": "Describes threat granular marking model entity" + }, + "ThreatIntelligenceIndicatorProperties": { + "type": "object", + "properties": { + "confidence": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Confidence of threat intelligence entity" + }, + "created": { + "type": "string", + "description": "Created by" + }, + "createdByRef": { + "type": "string", + "description": "Created by reference of threat intelligence entity" + }, + "defanged": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Is threat intelligence entity defanged" + }, + "description": { + "type": "string", + "description": "Description of a threat intelligence entity" + }, + "displayName": { + "type": "string", + "description": "Display name of a threat intelligence entity" + }, + "extensions": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": {} + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Extensions map" + }, + "externalId": { + "type": "string", + "description": "External ID of threat intelligence entity" + }, + "externalLastUpdatedTimeUtc": { + "type": "string", + "description": "External last updated time in UTC" + }, + "externalReferences": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ThreatIntelligenceExternalReference" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "External References" + }, + "granularMarkings": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ThreatIntelligenceGranularMarkingModel" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Granular Markings" + }, + "indicatorTypes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicator types of threat intelligence entities" + }, + "killChainPhases": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ThreatIntelligenceKillChainPhase" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Kill chain phases" + }, + "labels": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Labels of threat intelligence entity" + }, + "language": { + "type": "string", + "description": "Language of threat intelligence entity" + }, + "lastUpdatedTimeUtc": { + "type": "string", + "description": "Last updated time in UTC" + }, + "modified": { + "type": "string", + "description": "Modified by" + }, + "objectMarkingRefs": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Threat intelligence entity object marking references" + }, + "parsedPattern": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ThreatIntelligenceParsedPattern" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Parsed patterns" + }, + "pattern": { + "type": "string", + "description": "Pattern of a threat intelligence entity" + }, + "patternType": { + "type": "string", + "description": "Pattern type of a threat intelligence entity" + }, + "patternVersion": { + "type": "string", + "description": "Pattern version of a threat intelligence entity" + }, + "revoked": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Is threat intelligence entity revoked" + }, + "source": { + "type": "string", + "description": "Source of a threat intelligence entity" + }, + "threatIntelligenceTags": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of tags" + }, + "threatTypes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Threat types" + }, + "validFrom": { + "type": "string", + "description": "Valid from" + }, + "validUntil": { + "type": "string", + "description": "Valid until" + } + }, + "description": "Describes threat intelligence entity properties" + }, + "ThreatIntelligenceKillChainPhase": { + "type": "object", + "properties": { + "killChainName": { + "type": "string", + "description": "Kill chainName name" + }, + "phaseName": { + "type": "string", + "description": "Phase name" + } + }, + "description": "Describes threat kill chain phase entity" + }, + "ThreatIntelligenceParsedPattern": { + "type": "object", + "properties": { + "patternTypeKey": { + "type": "string", + "description": "Pattern type key" + }, + "patternTypeValues": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ThreatIntelligenceParsedPatternTypeValue" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Pattern type keys" + } + }, + "description": "Describes parsed pattern entity" + }, + "ThreatIntelligenceParsedPatternTypeValue": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "Value of parsed pattern" + }, + "valueType": { + "type": "string", + "description": "Type of the value" + } + }, + "description": "Describes threat kill chain phase entity" + }, + "TIDataConnector": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "enum": [ + "ThreatIntelligence" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/TIDataConnectorProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "TI (Threat Intelligence) data connector properties." + } + }, + "required": [ + "kind" + ], + "description": "Represents threat intelligence data connector." + }, + "TIDataConnectorDataTypes": { + "type": "object", + "properties": { + "indicators": { + "oneOf": [ + { + "$ref": "#/definitions/TIDataConnectorDataTypesIndicators" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Data type for indicators connection." + } + }, + "description": "The available data types for TI (Threat Intelligence) data connector." + }, + "TIDataConnectorDataTypesIndicators": { + "type": "object", + "properties": { + "state": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describe whether this data type connection is enabled or not." + } + }, + "description": "Data type for indicators connection." + }, + "TIDataConnectorProperties": { + "type": "object", + "properties": { + "dataTypes": { + "oneOf": [ + { + "$ref": "#/definitions/TIDataConnectorDataTypes" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The available data types for TI (Threat Intelligence) data connector." + }, + "tenantId": { + "type": "string", + "description": "The tenant id to connect to, and get the data from." + }, + "tipLookbackPeriod": { + "type": "string", + "format": "date-time", + "description": "The lookback period for the feed to be imported." + } + }, + "description": "TI (Threat Intelligence) data connector properties." + }, + "UserInfo": { + "type": "object", + "properties": { + "objectId": { + "oneOf": [ + { + "type": "string", + "pattern": "^[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The object id of the user." + } + }, + "description": "User information that made some action" + }, + "WatchlistItemProperties": { + "type": "object", + "properties": { + "created": { + "type": "string", + "format": "date-time", + "description": "The time the watchlist item was created" + }, + "createdBy": { + "oneOf": [ + { + "$ref": "#/definitions/UserInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "User information that made some action" + }, + "entityMapping": { + "type": "object", + "properties": {}, + "description": "key-value pairs for a watchlist item entity mapping" + }, + "isDeleted": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A flag that indicates if the watchlist item is deleted or not" + }, + "itemsKeyValue": { + "type": "object", + "properties": {}, + "description": "key-value pairs for a watchlist item" + }, + "tenantId": { + "type": "string", + "description": "The tenantId to which the watchlist item belongs to" + }, + "updated": { + "type": "string", + "format": "date-time", + "description": "The last time the watchlist item was updated" + }, + "updatedBy": { + "oneOf": [ + { + "$ref": "#/definitions/UserInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "User information that made some action" + }, + "watchlistItemId": { + "type": "string", + "description": "The id (a Guid) of the watchlist item" + }, + "watchlistItemType": { + "type": "string", + "description": "The type of the watchlist item" + } + }, + "required": [ + "itemsKeyValue" + ], + "description": "Describes watchlist item properties" + }, + "WatchlistProperties": { + "type": "object", + "properties": { + "contentType": { + "type": "string", + "description": "The content type of the raw content. For now, only text/csv is valid" + }, + "created": { + "type": "string", + "format": "date-time", + "description": "The time the watchlist was created" + }, + "createdBy": { + "oneOf": [ + { + "$ref": "#/definitions/UserInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "User information that made some action" + }, + "defaultDuration": { + "type": "string", + "format": "duration", + "description": "The default duration of a watchlist (in ISO 8601 duration format)" + }, + "description": { + "type": "string", + "description": "A description of the watchlist" + }, + "displayName": { + "type": "string", + "description": "The display name of the watchlist" + }, + "isDeleted": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A flag that indicates if the watchlist is deleted or not" + }, + "itemsSearchKey": { + "type": "string", + "description": "The search key is used to optimize query performance when using watchlists for joins with other data. For example, enable a column with IP addresses to be the designated SearchKey field, then use this field as the key field when joining to other event data by IP address." + }, + "labels": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of labels relevant to this watchlist" + }, + "numberOfLinesToSkip": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The number of lines in a csv content to skip before the header" + }, + "provider": { + "type": "string", + "description": "The provider of the watchlist" + }, + "rawContent": { + "type": "string", + "description": "The raw content that represents to watchlist items to create. Example : This line will be skipped\nheader1,header2\nvalue1,value2" + }, + "source": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Local file", + "Remote storage" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The source of the watchlist." + }, + "tenantId": { + "type": "string", + "description": "The tenantId where the watchlist belongs to" + }, + "updated": { + "type": "string", + "format": "date-time", + "description": "The last time the watchlist was updated" + }, + "updatedBy": { + "oneOf": [ + { + "$ref": "#/definitions/UserInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "User information that made some action" + }, + "uploadStatus": { + "type": "string", + "description": "The status of the Watchlist upload : New, InProgress or Complete. **Note** : When a Watchlist upload status is InProgress, the Watchlist cannot be deleted" + }, + "watchlistAlias": { + "type": "string", + "description": "The alias of the watchlist" + }, + "watchlistId": { + "type": "string", + "description": "The id (a Guid) of the watchlist" + }, + "watchlistType": { + "type": "string", + "description": "The type of the watchlist" + } + }, + "required": [ + "displayName", + "itemsSearchKey", + "provider", + "source" + ], + "description": "Describes watchlist properties" + }, + "watchlists_watchlistItems_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "etag": { + "type": "string", + "description": "Etag of the azure resource" + }, + "name": { + "type": "string", + "description": "The watchlist item id (GUID)" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/WatchlistItemProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes watchlist item properties" + }, + "type": { + "type": "string", + "enum": [ + "watchlistItems" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.SecurityInsights/watchlists/watchlistItems" + } + } +} \ No newline at end of file