From aae69ab2f1ee609f09820501b97b8ff55e96d85f Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Tue, 16 May 2023 09:47:51 +0000 Subject: [PATCH 1/7] Update resource list --- generator/resources.json | 84 +++++++++++++++++++++++++++++++--------- 1 file changed, 65 insertions(+), 19 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index 6e4654a1c5..a29e2854e5 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -5973,11 +5973,13 @@ "2021-06-01-preview", "2021-10-15-preview", "2021-12-01", - "2022-06-15" + "2022-06-15", + "2023-06-01-preview" ], "Microsoft.EventGrid/domains/eventSubscriptions": [ "2021-10-15-preview", - "2022-06-15" + "2022-06-15", + "2023-06-01-preview" ], "Microsoft.EventGrid/domains/privateEndpointConnections": [ "2020-04-01-preview", @@ -5986,7 +5988,8 @@ "2021-06-01-preview", "2021-10-15-preview", "2021-12-01", - "2022-06-15" + "2022-06-15", + "2023-06-01-preview" ], "Microsoft.EventGrid/domains/topics": [ "2019-02-01-preview", @@ -5998,11 +6001,13 @@ "2021-06-01-preview", "2021-10-15-preview", "2021-12-01", - "2022-06-15" + "2022-06-15", + "2023-06-01-preview" ], "Microsoft.EventGrid/domains/topics/eventSubscriptions": [ "2021-10-15-preview", - "2022-06-15" + "2022-06-15", + "2023-06-01-preview" ], "Microsoft.EventGrid/eventSubscriptions": [ "2017-06-15-preview", @@ -6020,25 +6025,57 @@ "2021-06-01-preview", "2021-10-15-preview", "2021-12-01", - "2022-06-15" + "2022-06-15", + "2023-06-01-preview" + ], + "Microsoft.EventGrid/namespaces": [ + "2023-06-01-preview" + ], + "Microsoft.EventGrid/namespaces/caCertificates": [ + "2023-06-01-preview" + ], + "Microsoft.EventGrid/namespaces/clientGroups": [ + "2023-06-01-preview" + ], + "Microsoft.EventGrid/namespaces/clients": [ + "2023-06-01-preview" + ], + "Microsoft.EventGrid/namespaces/permissionBindings": [ + "2023-06-01-preview" + ], + "Microsoft.EventGrid/namespaces/privateEndpointConnections": [ + "2023-06-01-preview" + ], + "Microsoft.EventGrid/namespaces/topicSpaces": [ + "2023-06-01-preview" + ], + "Microsoft.EventGrid/namespaces/topics": [ + "2023-06-01-preview" + ], + "Microsoft.EventGrid/namespaces/topics/eventSubscriptions": [ + "2023-06-01-preview" ], "Microsoft.EventGrid/partnerConfigurations": [ "2021-10-15-preview", - "2022-06-15" + "2022-06-15", + "2023-06-01-preview" ], "Microsoft.EventGrid/partnerDestinations": [ - "2021-10-15-preview" + "2021-10-15-preview", + "2023-06-01-preview" ], "Microsoft.EventGrid/partnerNamespaces": [ "2020-04-01-preview", "2020-10-15-preview", "2021-06-01-preview", "2021-10-15-preview", - "2022-06-15" + "2022-06-15", + "2023-06-01-preview" ], "Microsoft.EventGrid/partnerNamespaces/channels": [ "2021-10-15-preview", - "2022-06-15" + "2022-06-15", + "2023-06-01-preview" ], "Microsoft.EventGrid/partnerNamespaces/eventChannels": [ "2020-04-01-preview", @@ -6049,25 +6086,29 @@ "Microsoft.EventGrid/partnerNamespaces/privateEndpointConnections": [ "2021-06-01-preview", "2021-10-15-preview", - "2022-06-15" + "2022-06-15", + "2023-06-01-preview" ], "Microsoft.EventGrid/partnerRegistrations": [ "2020-04-01-preview", "2020-10-15-preview", "2021-06-01-preview", "2021-10-15-preview", - "2022-06-15" + "2022-06-15", + "2023-06-01-preview" ], "Microsoft.EventGrid/partnerTopics": [ "2021-10-15-preview", - "2022-06-15" + "2022-06-15", + "2023-06-01-preview" ], "Microsoft.EventGrid/partnerTopics/eventSubscriptions": [ "2020-04-01-preview", "2020-10-15-preview", "2021-06-01-preview", "2021-10-15-preview", - "2022-06-15" + "2022-06-15", + "2023-06-01-preview" ], "Microsoft.EventGrid/systemTopics": [ "2020-04-01-preview", @@ -6075,7 +6116,8 @@ "2021-06-01-preview", "2021-10-15-preview", "2021-12-01", - "2022-06-15" + "2022-06-15", + "2023-06-01-preview" ], "Microsoft.EventGrid/systemTopics/eventSubscriptions": [ "2020-04-01-preview", @@ -6083,7 +6125,8 @@ "2021-06-01-preview", "2021-10-15-preview", "2021-12-01", - "2022-06-15" + "2022-06-15", + "2023-06-01-preview" ], "Microsoft.EventGrid/topics": [ "2017-06-15-preview", @@ -6101,11 +6144,13 @@ "2021-06-01-preview", "2021-10-15-preview", "2021-12-01", - "2022-06-15" + "2022-06-15", + "2023-06-01-preview" ], "Microsoft.EventGrid/topics/eventSubscriptions": [ "2021-10-15-preview", - "2022-06-15" + "2022-06-15", + "2023-06-01-preview" ], "Microsoft.EventGrid/topics/privateEndpointConnections": [ "2020-04-01-preview", @@ -6114,7 +6159,8 @@ "2021-06-01-preview", "2021-10-15-preview", "2021-12-01", - "2022-06-15" + "2022-06-15", + "2023-06-01-preview" ], "Microsoft.EventHub/clusters": [ "2018-01-01-preview", From 9c64c098ce20735b19b267e6fb70ccd05d6d710b Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Wed, 17 May 2023 09:34:46 +0000 Subject: [PATCH 2/7] Autogenerate schemas --- .../Microsoft.KubernetesConfiguration.json | 1164 +++++++++++++++++ 1 file changed, 1164 insertions(+) create mode 100644 schemas/2023-05-01/Microsoft.KubernetesConfiguration.json diff --git a/schemas/2023-05-01/Microsoft.KubernetesConfiguration.json b/schemas/2023-05-01/Microsoft.KubernetesConfiguration.json new file mode 100644 index 0000000000..de71407da8 --- /dev/null +++ b/schemas/2023-05-01/Microsoft.KubernetesConfiguration.json @@ -0,0 +1,1164 @@ +{ + "id": "https://schema.management.azure.com/schemas/2023-05-01/Microsoft.KubernetesConfiguration.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.KubernetesConfiguration", + "description": "Microsoft KubernetesConfiguration Resource Types", + "resourceDefinitions": {}, + "extension_resourceDefinitions": { + "extensions": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-05-01" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/Identity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "name": { + "type": "string", + "description": "Name of the Extension." + }, + "plan": { + "oneOf": [ + { + "$ref": "#/definitions/Plan" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Plan for the resource." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ExtensionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of an Extension 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." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.KubernetesConfiguration/extensions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.KubernetesConfiguration/extensions" + }, + "fluxConfigurations": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-05-01" + ] + }, + "name": { + "type": "string", + "description": "Name of the Flux Configuration." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/FluxConfigurationProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create a Flux Configuration 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." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.KubernetesConfiguration/fluxConfigurations" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.KubernetesConfiguration/fluxConfigurations" + }, + "sourceControlConfigurations": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-05-01" + ] + }, + "name": { + "type": "string", + "description": "Name of the Source Control Configuration." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SourceControlConfigurationProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create a Source Control Configuration 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." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.KubernetesConfiguration/sourceControlConfigurations" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.KubernetesConfiguration/sourceControlConfigurations" + } + }, + "definitions": { + "AzureBlobDefinition": { + "type": "object", + "properties": { + "accountKey": { + "type": "string", + "description": "The account key (shared key) to access the storage account" + }, + "containerName": { + "type": "string", + "description": "The Azure Blob container name to sync from the url endpoint for the flux configuration." + }, + "localAuthRef": { + "type": "string", + "description": "Name of a local secret on the Kubernetes cluster to use as the authentication secret rather than the managed or user-provided configuration secrets." + }, + "managedIdentity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedIdentityDefinition" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Parameters to authenticate using a Managed Identity." + }, + "sasToken": { + "type": "string", + "description": "The Shared Access token to access the storage container" + }, + "servicePrincipal": { + "oneOf": [ + { + "$ref": "#/definitions/ServicePrincipalDefinition" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Parameters to authenticate using Service Principal." + }, + "syncIntervalInSeconds": { + "oneOf": [ + { + "type": "integer", + "default": "600" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The interval at which to re-reconcile the cluster Azure Blob source with the remote." + }, + "timeoutInSeconds": { + "oneOf": [ + { + "type": "integer", + "default": "600" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum time to attempt to reconcile the cluster Azure Blob source with the remote." + }, + "url": { + "type": "string", + "description": "The URL to sync for the flux configuration Azure Blob storage account." + } + }, + "description": "Parameters to reconcile to the AzureBlob source kind type." + }, + "BucketDefinition": { + "type": "object", + "properties": { + "accessKey": { + "type": "string", + "description": "Plaintext access key used to securely access the S3 bucket" + }, + "bucketName": { + "type": "string", + "description": "The bucket name to sync from the url endpoint for the flux configuration." + }, + "insecure": { + "oneOf": [ + { + "type": "boolean", + "default": true + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specify whether to use insecure communication when puling data from the S3 bucket." + }, + "localAuthRef": { + "type": "string", + "description": "Name of a local secret on the Kubernetes cluster to use as the authentication secret rather than the managed or user-provided configuration secrets." + }, + "syncIntervalInSeconds": { + "oneOf": [ + { + "type": "integer", + "default": "600" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The interval at which to re-reconcile the cluster bucket source with the remote." + }, + "timeoutInSeconds": { + "oneOf": [ + { + "type": "integer", + "default": "600" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum time to attempt to reconcile the cluster bucket source with the remote." + }, + "url": { + "type": "string", + "description": "The URL to sync for the flux configuration S3 bucket." + } + }, + "description": "Parameters to reconcile to the Bucket source kind type." + }, + "ExtensionProperties": { + "type": "object", + "properties": { + "aksAssignedIdentity": { + "oneOf": [ + { + "$ref": "#/definitions/ExtensionPropertiesAksAssignedIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity of the Extension resource in an AKS cluster" + }, + "autoUpgradeMinorVersion": { + "oneOf": [ + { + "type": "boolean", + "default": true + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Flag to note if this extension participates in auto upgrade of minor version, or not." + }, + "configurationProtectedSettings": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Configuration settings that are sensitive, as name-value pairs for configuring this extension." + }, + "configurationSettings": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Configuration settings, as name-value pairs for configuring this extension." + }, + "extensionType": { + "type": "string", + "description": "Type of the Extension, of which this resource is an instance of. It must be one of the Extension Types registered with Microsoft.KubernetesConfiguration by the Extension publisher." + }, + "releaseTrain": { + "type": "string", + "default": "Stable", + "description": "ReleaseTrain this extension participates in for auto-upgrade (e.g. Stable, Preview, etc.) - only if autoUpgradeMinorVersion is 'true'." + }, + "scope": { + "oneOf": [ + { + "$ref": "#/definitions/Scope" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Scope of the extension. It can be either Cluster or Namespace; but not both." + }, + "statuses": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ExtensionStatus" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Status from this extension." + }, + "version": { + "type": "string", + "description": "User-specified version of the extension for this extension to 'pin'. To use 'version', autoUpgradeMinorVersion must be 'false'." + } + }, + "description": "Properties of an Extension resource" + }, + "ExtensionPropertiesAksAssignedIdentity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SystemAssigned", + "UserAssigned" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The identity type." + } + }, + "description": "Identity of the Extension resource in an AKS cluster" + }, + "ExtensionStatus": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "Status code provided by the Extension" + }, + "displayStatus": { + "type": "string", + "description": "Short description of status of the extension." + }, + "level": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Error", + "Warning", + "Information" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Level of the status." + }, + "message": { + "type": "string", + "description": "Detailed message of the status from the Extension." + }, + "time": { + "type": "string", + "description": "DateLiteral (per ISO8601) noting the time of installation status." + } + }, + "description": "Status from the extension." + }, + "FluxConfigurationProperties": { + "type": "object", + "properties": { + "azureBlob": { + "oneOf": [ + { + "$ref": "#/definitions/AzureBlobDefinition" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Parameters to reconcile to the AzureBlob source kind type." + }, + "bucket": { + "oneOf": [ + { + "$ref": "#/definitions/BucketDefinition" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Parameters to reconcile to the Bucket source kind type." + }, + "configurationProtectedSettings": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Key-value pairs of protected configuration settings for the configuration" + }, + "gitRepository": { + "oneOf": [ + { + "$ref": "#/definitions/GitRepositoryDefinition" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Parameters to reconcile to the GitRepository source kind type." + }, + "kustomizations": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/KustomizationDefinition" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Array of kustomizations used to reconcile the artifact pulled by the source type on the cluster." + }, + "namespace": { + "type": "string", + "default": "default", + "description": "The namespace to which this configuration is installed to. Maximum of 253 lower case alphanumeric characters, hyphen and period only." + }, + "reconciliationWaitDuration": { + "type": "string", + "description": "Maximum duration to wait for flux configuration reconciliation. E.g PT1H, PT5M, P1D" + }, + "scope": { + "oneOf": [ + { + "type": "string", + "enum": [ + "cluster", + "namespace" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Scope at which the operator will be installed." + }, + "sourceKind": { + "oneOf": [ + { + "type": "string", + "enum": [ + "GitRepository", + "Bucket", + "AzureBlob" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Source Kind to pull the configuration data from." + }, + "suspend": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether this configuration should suspend its reconciliation of its kustomizations and sources." + }, + "waitForReconciliation": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether flux configuration deployment should wait for cluster to reconcile the kustomizations." + } + }, + "description": "Properties to create a Flux Configuration resource" + }, + "GitRepositoryDefinition": { + "type": "object", + "properties": { + "httpsCACert": { + "type": "string", + "description": "Base64-encoded HTTPS certificate authority contents used to access git private git repositories over HTTPS" + }, + "httpsUser": { + "type": "string", + "description": "Plaintext HTTPS username used to access private git repositories over HTTPS" + }, + "localAuthRef": { + "type": "string", + "description": "Name of a local secret on the Kubernetes cluster to use as the authentication secret rather than the managed or user-provided configuration secrets." + }, + "repositoryRef": { + "oneOf": [ + { + "$ref": "#/definitions/RepositoryRefDefinition" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The source reference for the GitRepository object." + }, + "sshKnownHosts": { + "type": "string", + "description": "Base64-encoded known_hosts value containing public SSH keys required to access private git repositories over SSH" + }, + "syncIntervalInSeconds": { + "oneOf": [ + { + "type": "integer", + "default": "600" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The interval at which to re-reconcile the cluster git repository source with the remote." + }, + "timeoutInSeconds": { + "oneOf": [ + { + "type": "integer", + "default": "600" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum time to attempt to reconcile the cluster git repository source with the remote." + }, + "url": { + "type": "string", + "description": "The URL to sync for the flux configuration git repository." + } + }, + "description": "Parameters to reconcile to the GitRepository source kind type." + }, + "HelmOperatorProperties": { + "type": "object", + "properties": { + "chartValues": { + "type": "string", + "description": "Values override for the operator Helm chart." + }, + "chartVersion": { + "type": "string", + "description": "Version of the operator Helm chart." + } + }, + "description": "Properties for Helm operator." + }, + "Identity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SystemAssigned" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The identity type." + } + }, + "description": "Identity for the resource." + }, + "KustomizationDefinition": { + "type": "object", + "properties": { + "dependsOn": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies other Kustomizations that this Kustomization depends on. This Kustomization will not reconcile until all dependencies have completed their reconciliation." + }, + "force": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enable/disable re-creating Kubernetes resources on the cluster when patching fails due to an immutable field change." + }, + "path": { + "type": "string", + "default": "", + "description": "The path in the source reference to reconcile on the cluster." + }, + "postBuild": { + "oneOf": [ + { + "$ref": "#/definitions/PostBuildDefinition" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The postBuild definitions defining variable substitutions for this Kustomization after kustomize build." + }, + "prune": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enable/disable garbage collections of Kubernetes objects created by this Kustomization." + }, + "retryIntervalInSeconds": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The interval at which to re-reconcile the Kustomization on the cluster in the event of failure on reconciliation." + }, + "syncIntervalInSeconds": { + "oneOf": [ + { + "type": "integer", + "default": "600" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The interval at which to re-reconcile the Kustomization on the cluster." + }, + "timeoutInSeconds": { + "oneOf": [ + { + "type": "integer", + "default": "600" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum time to attempt to reconcile the Kustomization on the cluster." + }, + "wait": { + "oneOf": [ + { + "type": "boolean", + "default": true + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enable/disable health check for all Kubernetes objects created by this Kustomization." + } + }, + "description": "The Kustomization defining how to reconcile the artifact pulled by the source type on the cluster." + }, + "ManagedIdentityDefinition": { + "type": "object", + "properties": { + "clientId": { + "type": "string", + "description": "The client Id for authenticating a Managed Identity." + } + }, + "description": "Parameters to authenticate using a Managed Identity." + }, + "Plan": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A user defined name of the 3rd Party Artifact that is being procured." + }, + "product": { + "type": "string", + "description": "The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding. " + }, + "promotionCode": { + "type": "string", + "description": "A publisher provided promotion code as provisioned in Data Market for the said product/artifact." + }, + "publisher": { + "type": "string", + "description": "The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic" + }, + "version": { + "type": "string", + "description": "The version of the desired product/artifact." + } + }, + "required": [ + "name", + "product", + "publisher" + ], + "description": "Plan for the resource." + }, + "PostBuildDefinition": { + "type": "object", + "properties": { + "substitute": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Key/value pairs holding the variables to be substituted in this Kustomization." + }, + "substituteFrom": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/SubstituteFromDefinition" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Array of ConfigMaps/Secrets from which the variables are substituted for this Kustomization." + } + }, + "description": "The postBuild definitions defining variable substitutions for this Kustomization after kustomize build." + }, + "RepositoryRefDefinition": { + "type": "object", + "properties": { + "branch": { + "type": "string", + "description": "The git repository branch name to checkout." + }, + "commit": { + "type": "string", + "description": "The commit SHA to checkout. This value must be combined with the branch name to be valid. This takes precedence over semver." + }, + "semver": { + "type": "string", + "description": "The semver range used to match against git repository tags. This takes precedence over tag." + }, + "tag": { + "type": "string", + "description": "The git repository tag name to checkout. This takes precedence over branch." + } + }, + "description": "The source reference for the GitRepository object." + }, + "Scope": { + "type": "object", + "properties": { + "cluster": { + "oneOf": [ + { + "$ref": "#/definitions/ScopeCluster" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies that the scope of the extension is Cluster" + }, + "namespace": { + "oneOf": [ + { + "$ref": "#/definitions/ScopeNamespace" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies that the scope of the extension is Namespace" + } + }, + "description": "Scope of the extension. It can be either Cluster or Namespace; but not both." + }, + "ScopeCluster": { + "type": "object", + "properties": { + "releaseNamespace": { + "type": "string", + "description": "Namespace where the extension Release must be placed, for a Cluster scoped extension. If this namespace does not exist, it will be created" + } + }, + "description": "Specifies that the scope of the extension is Cluster" + }, + "ScopeNamespace": { + "type": "object", + "properties": { + "targetNamespace": { + "type": "string", + "description": "Namespace where the extension will be created for an Namespace scoped extension. If this namespace does not exist, it will be created" + } + }, + "description": "Specifies that the scope of the extension is Namespace" + }, + "ServicePrincipalDefinition": { + "type": "object", + "properties": { + "clientCertificate": { + "type": "string", + "description": "Base64-encoded certificate used to authenticate a Service Principal " + }, + "clientCertificatePassword": { + "type": "string", + "description": "The password for the certificate used to authenticate a Service Principal " + }, + "clientCertificateSendChain": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies whether to include x5c header in client claims when acquiring a token to enable subject name / issuer based authentication for the Client Certificate" + }, + "clientId": { + "type": "string", + "description": "The client Id for authenticating a Service Principal." + }, + "clientSecret": { + "type": "string", + "description": "The client secret for authenticating a Service Principal" + }, + "tenantId": { + "type": "string", + "description": "The tenant Id for authenticating a Service Principal" + } + }, + "description": "Parameters to authenticate using Service Principal." + }, + "SourceControlConfigurationProperties": { + "type": "object", + "properties": { + "configurationProtectedSettings": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Name-value pairs of protected configuration settings for the configuration" + }, + "enableHelmOperator": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Option to enable Helm Operator for this git configuration." + }, + "helmOperatorProperties": { + "oneOf": [ + { + "$ref": "#/definitions/HelmOperatorProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties for Helm operator." + }, + "operatorInstanceName": { + "type": "string", + "description": "Instance name of the operator - identifying the specific configuration." + }, + "operatorNamespace": { + "type": "string", + "default": "default", + "description": "The namespace to which this operator is installed to. Maximum of 253 lower case alphanumeric characters, hyphen and period only." + }, + "operatorParams": { + "type": "string", + "description": "Any Parameters for the Operator instance in string format." + }, + "operatorScope": { + "oneOf": [ + { + "type": "string", + "enum": [ + "cluster", + "namespace" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Scope at which the operator will be installed." + }, + "operatorType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Flux" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of the operator." + }, + "repositoryUrl": { + "type": "string", + "description": "Url of the SourceControl Repository." + }, + "sshKnownHostsContents": { + "type": "string", + "description": "Base64-encoded known_hosts contents containing public SSH keys required to access private Git instances" + } + }, + "description": "Properties to create a Source Control Configuration resource" + }, + "SubstituteFromDefinition": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "description": "Define whether it is ConfigMap or Secret that holds the variables to be used in substitution." + }, + "name": { + "type": "string", + "description": "Name of the ConfigMap/Secret that holds the variables to be used in substitution." + }, + "optional": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Set to True to proceed without ConfigMap/Secret, if it is not present." + } + }, + "description": "Array of ConfigMaps/Secrets from which the variables are substituted for this Kustomization." + }, + "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 timestamp of resource last modification (UTC)" + }, + "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." + } + } +} \ No newline at end of file From 282c6c38b641bf8e841d1cde8b6f39e5d939f316 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Thu, 18 May 2023 09:33:53 +0000 Subject: [PATCH 3/7] Autogenerate schemas --- .../Microsoft.IoTFirmwareDefense.json | 240 ++++++++++++++++++ schemas/common/autogeneratedResources.json | 6 + 2 files changed, 246 insertions(+) create mode 100644 schemas/2023-02-08-preview/Microsoft.IoTFirmwareDefense.json diff --git a/schemas/2023-02-08-preview/Microsoft.IoTFirmwareDefense.json b/schemas/2023-02-08-preview/Microsoft.IoTFirmwareDefense.json new file mode 100644 index 0000000000..649f74a578 --- /dev/null +++ b/schemas/2023-02-08-preview/Microsoft.IoTFirmwareDefense.json @@ -0,0 +1,240 @@ +{ + "id": "https://schema.management.azure.com/schemas/2023-02-08-preview/Microsoft.IoTFirmwareDefense.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.IoTFirmwareDefense", + "description": "Microsoft IoTFirmwareDefense Resource Types", + "resourceDefinitions": { + "workspaces": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-02-08-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_.-]*$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the firmware analysis workspace." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/WorkspaceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Workspace properties." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/workspaces_firmwares_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.IoTFirmwareDefense/workspaces" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.IoTFirmwareDefense/workspaces" + }, + "workspaces_firmwares": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-02-08-preview" + ] + }, + "name": { + "type": "string", + "description": "The id of the firmware." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/FirmwareProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Firmware properties." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.IoTFirmwareDefense/workspaces/firmwares" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.IoTFirmwareDefense/workspaces/firmwares" + } + }, + "definitions": { + "FirmwareProperties": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "User-specified description of the firmware." + }, + "fileName": { + "type": "string", + "description": "File name for a firmware that user uploaded." + }, + "fileSize": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "File size of the uploaded firmware image." + }, + "model": { + "type": "string", + "description": "Firmware model." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Pending", + "Extracting", + "Analyzing", + "Ready", + "Error" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The status of firmware scan." + }, + "statusMessages": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "object", + "properties": {} + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A list of errors or other messages generated during firmware analysis" + }, + "vendor": { + "type": "string", + "description": "Firmware vendor." + }, + "version": { + "type": "string", + "description": "Firmware version." + } + }, + "description": "Firmware properties." + }, + "WorkspaceProperties": { + "type": "object", + "properties": {}, + "description": "Workspace properties." + }, + "workspaces_firmwares_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-02-08-preview" + ] + }, + "name": { + "type": "string", + "description": "The id of the firmware." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/FirmwareProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Firmware properties." + }, + "type": { + "type": "string", + "enum": [ + "firmwares" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.IoTFirmwareDefense/workspaces/firmwares" + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index cd9ad5c3ba..ca07e88bbc 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -14899,6 +14899,12 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-11-01-preview/Microsoft.IotCentral.json#/resourceDefinitions/iotApps_privateEndpointConnections" }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-02-08-preview/Microsoft.IoTFirmwareDefense.json#/resourceDefinitions/workspaces" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-02-08-preview/Microsoft.IoTFirmwareDefense.json#/resourceDefinitions/workspaces_firmwares" + }, { "$ref": "https://schema.management.azure.com/schemas/2015-06-01/Microsoft.KeyVault.json#/resourceDefinitions/vaults" }, From 48ec547f4393cb3822d6860c9950254b15cdf8c0 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Thu, 18 May 2023 09:34:18 +0000 Subject: [PATCH 4/7] Update resource list --- generator/resources.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/generator/resources.json b/generator/resources.json index a29e2854e5..9163f53b48 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -6688,6 +6688,12 @@ "Microsoft.IoTCentral/iotApps/privateEndpointConnections": [ "2021-11-01-preview" ], + "Microsoft.IoTFirmwareDefense/workspaces": [ + "2023-02-08-preview" + ], + "Microsoft.IoTFirmwareDefense/workspaces/firmwares": [ + "2023-02-08-preview" + ], "Microsoft.IoTSecurity/defenderSettings": [ "2021-02-01-preview" ], From af2234117eb33ee4684209a95af37a3d91794f6b Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Fri, 19 May 2023 10:10:04 +0000 Subject: [PATCH 5/7] Autogenerate schemas --- .../subscriptionDeploymentTemplate.json | 9 + schemas/2018-06-01/Microsoft.DataFactory.json | 99 ++ .../managementGroupDeploymentTemplate.json | 6 + .../2019-08-01/tenantDeploymentTemplate.json | 6 + schemas/2022-03-03/Microsoft.Compute.json | 13 +- .../2023-03-01/Microsoft.CostManagement.json | 1461 +++++++++++++++++ schemas/2023-05-01/Microsoft.Databricks.json | 199 +++ schemas/common/autogeneratedResources.json | 12 + 8 files changed, 1797 insertions(+), 8 deletions(-) create mode 100644 schemas/2023-03-01/Microsoft.CostManagement.json create mode 100644 schemas/2023-05-01/Microsoft.Databricks.json diff --git a/schemas/2018-05-01/subscriptionDeploymentTemplate.json b/schemas/2018-05-01/subscriptionDeploymentTemplate.json index 79142a57f9..dbaa32504a 100644 --- a/schemas/2018-05-01/subscriptionDeploymentTemplate.json +++ b/schemas/2018-05-01/subscriptionDeploymentTemplate.json @@ -947,6 +947,15 @@ { "$ref": "https://schema.management.azure.com/schemas/2022-10-05-preview/Microsoft.CostManagement.json#/unknown_resourceDefinitions/views" }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-03-01/Microsoft.CostManagement.json#/unknown_resourceDefinitions/exports" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-03-01/Microsoft.CostManagement.json#/unknown_resourceDefinitions/scheduledActions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-03-01/Microsoft.CostManagement.json#/unknown_resourceDefinitions/views" + }, { "$ref": "https://schema.management.azure.com/schemas/2023-04-01-preview/Microsoft.CostManagement.json#/unknown_resourceDefinitions/budgets" }, diff --git a/schemas/2018-06-01/Microsoft.DataFactory.json b/schemas/2018-06-01/Microsoft.DataFactory.json index 2c41e09cf4..b038afb2ff 100644 --- a/schemas/2018-06-01/Microsoft.DataFactory.json +++ b/schemas/2018-06-01/Microsoft.DataFactory.json @@ -717,6 +717,37 @@ "type": "string", "description": "Activity name." }, + "onInactiveMarkAs": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Succeeded", + "Failed", + "Skipped" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Status result of the activity when the state is set to Inactive. This is an optional property and if not provided when the activity is inactive, the status will be Succeeded by default." + }, + "state": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Active", + "Inactive" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Activity state. This is an optional property and if not provided, the state will be Active by default." + }, "userProperties": { "oneOf": [ { @@ -1245,6 +1276,11 @@ "AmazonRdsForSqlServerSource": { "type": "object", "properties": { + "isolationLevel": { + "type": "object", + "properties": {}, + "description": "Specifies the transaction locking behavior for the SQL source. Allowed values: ReadCommitted/ReadUncommitted/RepeatableRead/Serializable/Snapshot. The default value is ReadCommitted. Type: string (or Expression with resultType string)." + }, "partitionOption": { "type": "object", "properties": {}, @@ -5895,6 +5931,11 @@ "AzureSqlSource": { "type": "object", "properties": { + "isolationLevel": { + "type": "object", + "properties": {}, + "description": "Specifies the transaction locking behavior for the SQL source. Allowed values: ReadCommitted/ReadUncommitted/RepeatableRead/Serializable/Snapshot. The default value is ReadCommitted. Type: string (or Expression with resultType string)." + }, "partitionOption": { "type": "object", "properties": {}, @@ -27666,6 +27707,11 @@ "SqlDWSource": { "type": "object", "properties": { + "isolationLevel": { + "type": "object", + "properties": {}, + "description": "Specifies the transaction locking behavior for the SQL source. Allowed values: ReadCommitted/ReadUncommitted/RepeatableRead/Serializable/Snapshot. The default value is ReadCommitted. Type: string (or Expression with resultType string)." + }, "partitionOption": { "type": "object", "properties": {}, @@ -27794,6 +27840,11 @@ "SqlMISource": { "type": "object", "properties": { + "isolationLevel": { + "type": "object", + "properties": {}, + "description": "Specifies the transaction locking behavior for the SQL source. Allowed values: ReadCommitted/ReadUncommitted/RepeatableRead/Serializable/Snapshot. The default value is ReadCommitted. Type: string (or Expression with resultType string)." + }, "partitionOption": { "type": "object", "properties": {}, @@ -28004,6 +28055,11 @@ "SqlServerSource": { "type": "object", "properties": { + "isolationLevel": { + "type": "object", + "properties": {}, + "description": "Specifies the transaction locking behavior for the SQL source. Allowed values: ReadCommitted/ReadUncommitted/RepeatableRead/Serializable/Snapshot. The default value is ReadCommitted. Type: string (or Expression with resultType string)." + }, "partitionOption": { "type": "object", "properties": {}, @@ -29170,6 +29226,22 @@ "properties": {}, "description": "Spark configuration properties, which will override the 'conf' of the notebook you provide." }, + "configurationType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Default", + "Customized", + "Artifact" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of the spark config." + }, "driverSize": { "type": "object", "properties": {}, @@ -29211,6 +29283,22 @@ ], "description": "Notebook parameters." }, + "sparkConfig": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": {} + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Spark configuration property." + }, "sparkPool": { "oneOf": [ { @@ -29221,6 +29309,17 @@ } ], "description": "Big data pool reference type." + }, + "targetSparkConfiguration": { + "oneOf": [ + { + "$ref": "#/definitions/SparkConfigurationParametrizationReference" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Spark configuration reference." } }, "required": [ diff --git a/schemas/2019-08-01/managementGroupDeploymentTemplate.json b/schemas/2019-08-01/managementGroupDeploymentTemplate.json index 9cdfc9b497..2544962f45 100644 --- a/schemas/2019-08-01/managementGroupDeploymentTemplate.json +++ b/schemas/2019-08-01/managementGroupDeploymentTemplate.json @@ -788,6 +788,12 @@ { "$ref": "https://schema.management.azure.com/schemas/2022-10-05-preview/Microsoft.CostManagement.json#/unknown_resourceDefinitions/views" }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-03-01/Microsoft.CostManagement.json#/unknown_resourceDefinitions/exports" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-03-01/Microsoft.CostManagement.json#/unknown_resourceDefinitions/views" + }, { "$ref": "https://schema.management.azure.com/schemas/2023-04-01-preview/Microsoft.CostManagement.json#/unknown_resourceDefinitions/budgets" }, diff --git a/schemas/2019-08-01/tenantDeploymentTemplate.json b/schemas/2019-08-01/tenantDeploymentTemplate.json index 19bccb4107..ab4685ddef 100644 --- a/schemas/2019-08-01/tenantDeploymentTemplate.json +++ b/schemas/2019-08-01/tenantDeploymentTemplate.json @@ -730,6 +730,12 @@ { "$ref": "https://schema.management.azure.com/schemas/2022-10-05-preview/Microsoft.CostManagement.json#/tenant_resourceDefinitions/views" }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-03-01/Microsoft.CostManagement.json#/tenant_resourceDefinitions/scheduledActions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-03-01/Microsoft.CostManagement.json#/tenant_resourceDefinitions/views" + }, { "$ref": "https://schema.management.azure.com/schemas/2023-04-01-preview/Microsoft.CostManagement.json#/tenant_resourceDefinitions/scheduledActions" }, diff --git a/schemas/2022-03-03/Microsoft.Compute.json b/schemas/2022-03-03/Microsoft.Compute.json index 89c03a51da..7228f46e36 100644 --- a/schemas/2022-03-03/Microsoft.Compute.json +++ b/schemas/2022-03-03/Microsoft.Compute.json @@ -965,8 +965,7 @@ "enum": [ "Standard_LRS", "Standard_ZRS", - "Premium_LRS", - "StandardSSD_LRS" + "Premium_LRS" ] }, { @@ -1413,8 +1412,7 @@ "enum": [ "Standard_LRS", "Standard_ZRS", - "Premium_LRS", - "StandardSSD_LRS" + "Premium_LRS" ] }, { @@ -1636,8 +1634,8 @@ "enum": [ "Standard_LRS", "Standard_ZRS", - "Premium_LRS", - "StandardSSD_LRS" + "StandardSSD_LRS", + "Premium_LRS" ] }, { @@ -1866,8 +1864,7 @@ "enum": [ "Standard_LRS", "Standard_ZRS", - "Premium_LRS", - "StandardSSD_LRS" + "Premium_LRS" ] }, { diff --git a/schemas/2023-03-01/Microsoft.CostManagement.json b/schemas/2023-03-01/Microsoft.CostManagement.json new file mode 100644 index 0000000000..95b1f7df4f --- /dev/null +++ b/schemas/2023-03-01/Microsoft.CostManagement.json @@ -0,0 +1,1461 @@ +{ + "id": "https://schema.management.azure.com/schemas/2023-03-01/Microsoft.CostManagement.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.CostManagement", + "description": "Microsoft CostManagement Resource Types", + "resourceDefinitions": {}, + "tenant_resourceDefinitions": { + "scheduledActions": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-03-01" + ] + }, + "kind": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Email", + "InsightAlert" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Kind of the scheduled action." + }, + "name": { + "type": "string", + "description": "Scheduled action name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ScheduledActionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of the scheduled action." + }, + "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.CostManagement/scheduledActions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.CostManagement/scheduledActions" + }, + "views": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-03-01" + ] + }, + "eTag": { + "type": "string", + "description": "eTag of the resource. To handle concurrent update scenario, this field will be used to determine whether the user is updating the latest version or not." + }, + "name": { + "type": "string", + "description": "View name" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ViewProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of the view." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.CostManagement/views" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.CostManagement/views" + } + }, + "unknown_resourceDefinitions": { + "exports": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-03-01" + ] + }, + "eTag": { + "type": "string", + "description": "eTag of the resource. To handle concurrent update scenario, this field will be used to determine whether the user is updating the latest version or not." + }, + "name": { + "type": "string", + "description": "Export Name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ExportProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of the export." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.CostManagement/exports" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.CostManagement/exports" + }, + "scheduledActions": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-03-01" + ] + }, + "kind": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Email", + "InsightAlert" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Kind of the scheduled action." + }, + "name": { + "type": "string", + "description": "Scheduled action name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ScheduledActionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of the scheduled action." + }, + "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.CostManagement/scheduledActions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.CostManagement/scheduledActions" + }, + "views": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-03-01" + ] + }, + "eTag": { + "type": "string", + "description": "eTag of the resource. To handle concurrent update scenario, this field will be used to determine whether the user is updating the latest version or not." + }, + "name": { + "type": "string", + "description": "View name" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ViewProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of the view." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.CostManagement/views" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.CostManagement/views" + } + }, + "definitions": { + "ExportDataset": { + "type": "object", + "properties": { + "configuration": { + "oneOf": [ + { + "$ref": "#/definitions/ExportDatasetConfiguration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The export dataset configuration. Allows columns to be selected for the export. If not provided then the export will include all available columns." + }, + "granularity": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Daily" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The granularity of rows in the export. Currently only 'Daily' is supported." + } + }, + "description": "The definition for data in the export." + }, + "ExportDatasetConfiguration": { + "type": "object", + "properties": { + "columns": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Array of column names to be included in the export. If not provided then the export will include all available columns. The available columns can vary by customer channel (see examples)." + } + }, + "description": "The export dataset configuration. Allows columns to be selected for the export. If not provided then the export will include all available columns." + }, + "ExportDefinition": { + "type": "object", + "properties": { + "dataSet": { + "oneOf": [ + { + "$ref": "#/definitions/ExportDataset" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The definition for data in the export." + }, + "timeframe": { + "oneOf": [ + { + "type": "string", + "enum": [ + "MonthToDate", + "BillingMonthToDate", + "TheLastMonth", + "TheLastBillingMonth", + "WeekToDate", + "Custom" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time frame for pulling data for the export. If custom, then a specific time period must be provided." + }, + "timePeriod": { + "oneOf": [ + { + "$ref": "#/definitions/ExportTimePeriod" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The date range for data in the export. This should only be specified with timeFrame set to 'Custom'. The maximum date range is 3 months." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Usage", + "ActualCost", + "AmortizedCost" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of the export. Note that 'Usage' is equivalent to 'ActualCost' and is applicable to exports that do not yet provide data for charges or amortization for service reservations." + } + }, + "required": [ + "timeframe", + "type" + ], + "description": "The definition of an export." + }, + "ExportDeliveryDestination": { + "type": "object", + "properties": { + "container": { + "type": "string", + "description": "The name of the container where exports will be uploaded. If the container does not exist it will be created." + }, + "resourceId": { + "type": "string", + "description": "The resource id of the storage account where exports will be delivered. This is not required if a sasToken and storageAccount are specified." + }, + "rootFolderPath": { + "type": "string", + "description": "The name of the directory where exports will be uploaded." + }, + "sasToken": { + "type": "string", + "description": "A SAS token for the storage account. For a restricted set of Azure customers this together with storageAccount can be specified instead of resourceId. Note: the value returned by the API for this property will always be obfuscated. Returning this same obfuscated value will not result in the SAS token being updated. To update this value a new SAS token must be specified." + }, + "storageAccount": { + "type": "string", + "description": "The storage account where exports will be uploaded. For a restricted set of Azure customers this together with sasToken can be specified instead of resourceId." + } + }, + "required": [ + "container" + ], + "description": "This represents the blob storage account location where exports of costs will be delivered. There are two ways to configure the destination. The approach recommended for most customers is to specify the resourceId of the storage account. This requires a one-time registration of the account's subscription with the Microsoft.CostManagementExports resource provider in order to give Cost Management services access to the storage. When creating an export in the Azure portal this registration is performed automatically but API users may need to register the subscription explicitly (for more information see https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-manager-supported-services ). Another way to configure the destination is available ONLY to Partners with a Microsoft Partner Agreement plan who are global admins of their billing account. These Partners, instead of specifying the resourceId of a storage account, can specify the storage account name along with a SAS token for the account. This allows exports of costs to a storage account in any tenant. The SAS token should be created for the blob service with Service/Container/Object resource types and with Read/Write/Delete/List/Add/Create permissions (for more information see https://docs.microsoft.com/en-us/azure/cost-management-billing/costs/export-cost-data-storage-account-sas-key )." + }, + "ExportDeliveryInfo": { + "type": "object", + "properties": { + "destination": { + "oneOf": [ + { + "$ref": "#/definitions/ExportDeliveryDestination" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This represents the blob storage account location where exports of costs will be delivered. There are two ways to configure the destination. The approach recommended for most customers is to specify the resourceId of the storage account. This requires a one-time registration of the account's subscription with the Microsoft.CostManagementExports resource provider in order to give Cost Management services access to the storage. When creating an export in the Azure portal this registration is performed automatically but API users may need to register the subscription explicitly (for more information see https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-manager-supported-services ). Another way to configure the destination is available ONLY to Partners with a Microsoft Partner Agreement plan who are global admins of their billing account. These Partners, instead of specifying the resourceId of a storage account, can specify the storage account name along with a SAS token for the account. This allows exports of costs to a storage account in any tenant. The SAS token should be created for the blob service with Service/Container/Object resource types and with Read/Write/Delete/List/Add/Create permissions (for more information see https://docs.microsoft.com/en-us/azure/cost-management-billing/costs/export-cost-data-storage-account-sas-key )." + } + }, + "required": [ + "destination" + ], + "description": "The delivery information associated with a export." + }, + "ExportExecutionListResult": { + "type": "object", + "properties": {}, + "description": "Result of listing the run history of an export." + }, + "ExportProperties": { + "type": "object", + "properties": { + "definition": { + "oneOf": [ + { + "$ref": "#/definitions/ExportDefinition" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The definition of an export." + }, + "deliveryInfo": { + "oneOf": [ + { + "$ref": "#/definitions/ExportDeliveryInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The delivery information associated with a export." + }, + "format": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Csv" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The format of the export being delivered. Currently only 'Csv' is supported." + }, + "partitionData": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If set to true, exported data will be partitioned by size and placed in a blob directory together with a manifest file. Note: this option is currently available only for Microsoft Customer Agreement commerce scopes." + }, + "runHistory": { + "oneOf": [ + { + "$ref": "#/definitions/ExportExecutionListResult" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Result of listing the run history of an export." + }, + "schedule": { + "oneOf": [ + { + "$ref": "#/definitions/ExportSchedule" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The schedule associated with the export." + } + }, + "required": [ + "definition", + "deliveryInfo" + ], + "description": "The properties of the export." + }, + "ExportRecurrencePeriod": { + "type": "object", + "properties": { + "from": { + "type": "string", + "format": "date-time", + "description": "The start date of recurrence." + }, + "to": { + "type": "string", + "format": "date-time", + "description": "The end date of recurrence." + } + }, + "required": [ + "from" + ], + "description": "The start and end date for recurrence schedule." + }, + "ExportSchedule": { + "type": "object", + "properties": { + "recurrence": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Daily", + "Weekly", + "Monthly", + "Annually" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The schedule recurrence." + }, + "recurrencePeriod": { + "oneOf": [ + { + "$ref": "#/definitions/ExportRecurrencePeriod" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The start and end date for recurrence schedule." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Active", + "Inactive" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The status of the export's schedule. If 'Inactive', the export's schedule is paused." + } + }, + "description": "The schedule associated with the export." + }, + "ExportTimePeriod": { + "type": "object", + "properties": { + "from": { + "type": "string", + "format": "date-time", + "description": "The start date for export data." + }, + "to": { + "type": "string", + "format": "date-time", + "description": "The end date for export data." + } + }, + "required": [ + "from", + "to" + ], + "description": "The date range for data in the export. This should only be specified with timeFrame set to 'Custom'. The maximum date range is 3 months." + }, + "FileDestination": { + "type": "object", + "properties": { + "fileFormats": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Csv" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Destination of the view data. Currently only CSV format is supported." + } + }, + "description": "Destination of the view data. This is optional. Currently only CSV format is supported." + }, + "KpiProperties": { + "type": "object", + "properties": { + "enabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "show the KPI in the UI?" + }, + "id": { + "type": "string", + "description": "ID of resource related to metric (budget)." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Forecast", + "Budget" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "KPI type (Forecast, Budget)." + } + }, + "description": "Each KPI must contain a 'type' and 'enabled' key." + }, + "NotificationProperties": { + "type": "object", + "properties": { + "language": { + "type": "string", + "description": "Language in which the email is localized, for ex: 'Fr'. When the specified language is not supported, email will be in english. The supported languages are cs (Czech), da (Danish), de (German), en (English), es (Spanish), fr (French), hu (Hungarian), id (Indonesian), it (Lithuanian), ja (Japanese), ko (Korean), nb (Norwegian Bokmål), nl (Dutch), pl (Polish), pt (Portuguese), ru (Russian), sv (Swedish), tr (Turkish), zh (Chinese) " + }, + "message": { + "type": "string", + "description": "Optional message to be added in the email. Length is limited to 250 characters." + }, + "regionalFormat": { + "type": "string", + "description": "Language for formatting the date/time and currency values in the email. For ex: 'fr'. Defaulted to English, when the specified regional format is not supported. " + }, + "subject": { + "type": "string", + "description": "Subject of the email. Length is limited to 70 characters." + }, + "to": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Array of email addresses." + } + }, + "required": [ + "subject", + "to" + ], + "description": "The properties of the scheduled action notification." + }, + "PivotProperties": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Data field to show in view." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Dimension", + "TagKey" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Data type to show in view." + } + }, + "description": "Each pivot must contain a 'type' and 'name'." + }, + "ReportConfigAggregation": { + "type": "object", + "properties": { + "function": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Sum" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the aggregation function to use." + }, + "name": { + "type": "string", + "description": "The name of the column to aggregate." + } + }, + "required": [ + "function", + "name" + ], + "description": "The aggregation expression to be used in the report." + }, + "ReportConfigComparisonExpression": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the column to use in comparison." + }, + "operator": { + "oneOf": [ + { + "type": "string", + "enum": [ + "In", + "Contains" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The operator to use for comparison." + }, + "values": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Array of values to use for comparison" + } + }, + "required": [ + "name", + "operator", + "values" + ], + "description": "The comparison expression to be used in the report." + }, + "ReportConfigDataset": { + "type": "object", + "properties": { + "aggregation": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/ReportConfigAggregation" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Dictionary of aggregation expression to use in the report. The key of each item in the dictionary is the alias for the aggregated column. Report can have up to 2 aggregation clauses." + }, + "configuration": { + "oneOf": [ + { + "$ref": "#/definitions/ReportConfigDatasetConfiguration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The configuration of dataset in the report." + }, + "filter": { + "oneOf": [ + { + "$ref": "#/definitions/ReportConfigFilter" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The filter expression to be used in the report." + }, + "granularity": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Daily", + "Monthly" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The granularity of rows in the report." + }, + "grouping": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ReportConfigGrouping" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Array of group by expression to use in the report. Report can have up to 2 group by clauses." + }, + "sorting": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ReportConfigSorting" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Array of order by expression to use in the report." + } + }, + "description": "The definition of data present in the report." + }, + "ReportConfigDatasetConfiguration": { + "type": "object", + "properties": { + "columns": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Array of column names to be included in the report. Any valid report column name is allowed. If not provided, then report includes all columns." + } + }, + "description": "The configuration of dataset in the report." + }, + "ReportConfigDefinition": { + "type": "object", + "properties": { + "dataSet": { + "oneOf": [ + { + "$ref": "#/definitions/ReportConfigDataset" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The definition of data present in the report." + }, + "includeMonetaryCommitment": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If true, report includes monetary commitment." + }, + "timeframe": { + "oneOf": [ + { + "type": "string", + "enum": [ + "WeekToDate", + "MonthToDate", + "YearToDate", + "Custom" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time frame for pulling data for the report. If custom, then a specific time period must be provided." + }, + "timePeriod": { + "oneOf": [ + { + "$ref": "#/definitions/ReportConfigTimePeriod" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The start and end date for pulling data for the report." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Usage" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of the report. Usage represents actual usage, forecast represents forecasted data and UsageAndForecast represents both usage and forecasted data. Actual usage and forecasted data can be differentiated based on dates." + } + }, + "required": [ + "timeframe", + "type" + ], + "description": "The definition of a report config." + }, + "ReportConfigFilter": { + "type": "object", + "properties": { + "and": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "object" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The logical \"AND\" expression. Must have at least 2 items." + }, + "dimensions": { + "oneOf": [ + { + "$ref": "#/definitions/ReportConfigComparisonExpression" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The comparison expression to be used in the report." + }, + "or": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "object" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The logical \"OR\" expression. Must have at least 2 items." + }, + "tags": { + "oneOf": [ + { + "$ref": "#/definitions/ReportConfigComparisonExpression" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The comparison expression to be used in the report." + } + }, + "description": "The filter expression to be used in the report." + }, + "ReportConfigGrouping": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the column to group. This version supports subscription lowest possible grain." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "TagKey", + "Dimension" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Has type of the column to group." + } + }, + "required": [ + "name", + "type" + ], + "description": "The group by expression to be used in the report." + }, + "ReportConfigSorting": { + "type": "object", + "properties": { + "direction": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Ascending", + "Descending" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Direction of sort." + }, + "name": { + "type": "string", + "description": "The name of the column to sort." + } + }, + "required": [ + "name" + ], + "description": "The order by expression to be used in the report." + }, + "ReportConfigTimePeriod": { + "type": "object", + "properties": { + "from": { + "type": "string", + "format": "date-time", + "description": "The start date to pull data from." + }, + "to": { + "type": "string", + "format": "date-time", + "description": "The end date to pull data to." + } + }, + "required": [ + "from", + "to" + ], + "description": "The start and end date for pulling data for the report." + }, + "ScheduledActionProperties": { + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "Scheduled action name." + }, + "fileDestination": { + "oneOf": [ + { + "$ref": "#/definitions/FileDestination" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Destination of the view data. This is optional. Currently only CSV format is supported." + }, + "notification": { + "oneOf": [ + { + "$ref": "#/definitions/NotificationProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of the scheduled action notification." + }, + "notificationEmail": { + "type": "string", + "description": "Email address of the point of contact that should get the unsubscribe requests and notification emails." + }, + "schedule": { + "oneOf": [ + { + "$ref": "#/definitions/ScheduleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of the schedule." + }, + "scope": { + "type": "string", + "description": "Cost Management scope like 'subscriptions/{subscriptionId}' for subscription scope, 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for BillingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}' for InvoiceSection scope, '/providers/Microsoft.CostManagement/externalBillingAccounts/{externalBillingAccountName}' for ExternalBillingAccount scope, and '/providers/Microsoft.CostManagement/externalSubscriptions/{externalSubscriptionName}' for ExternalSubscription scope." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Disabled", + "Enabled", + "Expired" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Status of the scheduled action." + }, + "viewId": { + "type": "string", + "description": "Cost analysis viewId used for scheduled action. For example, '/providers/Microsoft.CostManagement/views/swaggerExample'" + } + }, + "required": [ + "displayName", + "notification", + "schedule", + "status", + "viewId" + ], + "description": "The properties of the scheduled action." + }, + "ScheduleProperties": { + "type": "object", + "properties": { + "dayOfMonth": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "UTC day on which cost analysis data will be emailed. Must be between 1 and 31. This property is applicable when frequency is Monthly and overrides weeksOfMonth or daysOfWeek." + }, + "daysOfWeek": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Day names in english on which cost analysis data will be emailed. This property is applicable when frequency is Weekly or Monthly." + }, + "endDate": { + "type": "string", + "format": "date-time", + "description": "The end date and time of the scheduled action (UTC)." + }, + "frequency": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Daily", + "Weekly", + "Monthly" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Frequency of the schedule." + }, + "hourOfDay": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "UTC time at which cost analysis data will be emailed." + }, + "startDate": { + "type": "string", + "format": "date-time", + "description": "The start date and time of the scheduled action (UTC)." + }, + "weeksOfMonth": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "First", + "Second", + "Third", + "Fourth", + "Last" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Weeks in which cost analysis data will be emailed. This property is applicable when frequency is Monthly and used in combination with daysOfWeek." + } + }, + "required": [ + "endDate", + "frequency", + "startDate" + ], + "description": "The properties of the schedule." + }, + "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 timestamp of resource last modification (UTC)" + }, + "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." + }, + "ViewProperties": { + "type": "object", + "properties": { + "accumulated": { + "oneOf": [ + { + "type": "string", + "enum": [ + "true", + "false" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Show costs accumulated over time." + }, + "chart": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Area", + "Line", + "StackedColumn", + "GroupedColumn", + "Table" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Chart type of the main view in Cost Analysis. Required." + }, + "displayName": { + "type": "string", + "description": "User input name of the view. Required." + }, + "kpis": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/KpiProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of KPIs to show in Cost Analysis UI." + }, + "metric": { + "oneOf": [ + { + "type": "string", + "enum": [ + "ActualCost", + "AmortizedCost", + "AHUB" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metric to use when displaying costs." + }, + "pivots": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/PivotProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Configuration of 3 sub-views in the Cost Analysis UI." + }, + "query": { + "oneOf": [ + { + "$ref": "#/definitions/ReportConfigDefinition" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The definition of a report config." + }, + "scope": { + "type": "string", + "description": "Cost Management scope to save the view on. This includes 'subscriptions/{subscriptionId}' for subscription scope, 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for BillingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}' for InvoiceSection scope, 'providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope, '/providers/Microsoft.CostManagement/externalBillingAccounts/{externalBillingAccountName}' for ExternalBillingAccount scope, and '/providers/Microsoft.CostManagement/externalSubscriptions/{externalSubscriptionName}' for ExternalSubscription scope." + } + }, + "description": "The properties of the view." + } + } +} \ No newline at end of file diff --git a/schemas/2023-05-01/Microsoft.Databricks.json b/schemas/2023-05-01/Microsoft.Databricks.json new file mode 100644 index 0000000000..1c16aee71c --- /dev/null +++ b/schemas/2023-05-01/Microsoft.Databricks.json @@ -0,0 +1,199 @@ +{ + "id": "https://schema.management.azure.com/schemas/2023-05-01/Microsoft.Databricks.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.Databricks", + "description": "Microsoft Databricks Resource Types", + "resourceDefinitions": { + "accessConnectors": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-05-01" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Managed service identity (system assigned and/or user assigned identities)" + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 3, + "maxLength": 64, + "description": "The name of the azure databricks accessConnector." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/AccessConnectorProperties" + }, + { + "$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.Databricks/accessConnectors" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.Databricks/accessConnectors" + } + }, + "definitions": { + "AccessConnectorProperties": { + "type": "object", + "properties": {} + }, + "ManagedServiceIdentity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemAssigned,UserAssigned" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "userAssignedIdentities": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentity" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests." + } + }, + "required": [ + "type" + ], + "description": "Managed service identity (system assigned and/or user assigned identities)" + }, + "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 timestamp of resource last modification (UTC)" + }, + "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." + }, + "UserAssignedIdentity": { + "type": "object", + "properties": {}, + "description": "User assigned identity properties" + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index ca07e88bbc..894d70d206 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -7852,6 +7852,15 @@ { "$ref": "https://schema.management.azure.com/schemas/2022-10-05-preview/Microsoft.CostManagement.json#/unknown_resourceDefinitions/views" }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-03-01/Microsoft.CostManagement.json#/unknown_resourceDefinitions/exports" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-03-01/Microsoft.CostManagement.json#/unknown_resourceDefinitions/scheduledActions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-03-01/Microsoft.CostManagement.json#/unknown_resourceDefinitions/views" + }, { "$ref": "https://schema.management.azure.com/schemas/2023-04-01-preview/Microsoft.CostManagement.json#/unknown_resourceDefinitions/budgets" }, @@ -8503,6 +8512,9 @@ { "$ref": "https://schema.management.azure.com/schemas/2023-02-01/Microsoft.Databricks.json#/resourceDefinitions/workspaces_virtualNetworkPeerings" }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-05-01/Microsoft.Databricks.json#/resourceDefinitions/accessConnectors" + }, { "$ref": "https://schema.management.azure.com/schemas/2016-03-30/Microsoft.DataCatalog.json#/resourceDefinitions/catalogs" }, From 32d74414e9bf4854df472c0963bfc00a469a5733 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Fri, 19 May 2023 10:10:39 +0000 Subject: [PATCH 6/7] Update resource list --- generator/resources.json | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/generator/resources.json b/generator/resources.json index 9163f53b48..e41f6d54cb 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -3573,6 +3573,7 @@ "2021-01-01", "2021-10-01", "2022-10-01", + "2023-03-01", "2023-04-01-preview" ], "Microsoft.CostManagement/externalSubscriptions": [ @@ -3593,6 +3594,8 @@ "2022-06-01-preview", "2022-10-01", "2022-10-01", + "2023-03-01", + "2023-03-01", "2023-04-01-preview", "2023-04-01-preview" ], @@ -3618,6 +3621,8 @@ "2022-10-01-preview", "2022-10-05-preview", "2022-10-05-preview", + "2023-03-01", + "2023-03-01", "2023-04-01-preview", "2023-04-01-preview" ], @@ -4329,7 +4334,8 @@ ], "Microsoft.Databricks/accessConnectors": [ "2022-04-01-preview", - "2022-10-01-preview" + "2022-10-01-preview", + "2023-05-01" ], "Microsoft.Databricks/workspaces": [ "2018-04-01", From f7a54c2c55cd00df8603ea509f1c941ad5a4d37f Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Fri, 19 May 2023 14:01:49 +0000 Subject: [PATCH 7/7] 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 9a9db0e9a2..1ee007d936 100644 --- a/onboarded-report/result.json +++ b/onboarded-report/result.json @@ -563,6 +563,12 @@ "missing": [], "onboarded": [] }, + { + "basePath": "fist/resource-manager", + "onboardedToAutogen": "yes", + "missing": [], + "onboarded": [] + }, { "basePath": "fluidrelay/resource-manager", "onboardedToAutogen": "yes",