azure-resource-manager-schemas/schemas/2022-10-01-preview/Microsoft.Dashboard.json

744 строки
23 KiB
JSON

{
"id": "https://schema.management.azure.com/schemas/2022-10-01-preview/Microsoft.Dashboard.json#",
"title": "Microsoft.Dashboard",
"description": "Microsoft Dashboard Resource Types",
"$schema": "http://json-schema.org/draft-04/schema#",
"resourceDefinitions": {
"grafana": {
"description": "Microsoft.Dashboard/grafana",
"properties": {
"apiVersion": {
"enum": [
"2022-10-01-preview"
],
"type": "string"
},
"identity": {
"description": "The managed identity of the grafana resource.",
"oneOf": [
{
"$ref": "#/definitions/ManagedServiceIdentity"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"location": {
"description": "The geo-location where the grafana resource lives",
"type": "string"
},
"name": {
"description": "The workspace name of Azure Managed Grafana.",
"type": "string"
},
"properties": {
"description": "Properties specific to the grafana resource.",
"oneOf": [
{
"$ref": "#/definitions/ManagedGrafanaProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"resources": {
"items": {
"oneOf": [
{
"$ref": "#/definitions/grafana_managedPrivateEndpoints_childResource"
},
{
"$ref": "#/definitions/grafana_privateEndpointConnections_childResource"
}
]
},
"type": "array"
},
"sku": {
"description": "The Sku of the grafana resource.",
"oneOf": [
{
"$ref": "#/definitions/ResourceSku"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"tags": {
"description": "The tags for grafana resource.",
"oneOf": [
{
"additionalProperties": {
"type": "string"
},
"properties": {},
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.Dashboard/grafana"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"grafana_managedPrivateEndpoints": {
"description": "Microsoft.Dashboard/grafana/managedPrivateEndpoints",
"properties": {
"apiVersion": {
"enum": [
"2022-10-01-preview"
],
"type": "string"
},
"location": {
"description": "The geo-location where the resource lives",
"type": "string"
},
"name": {
"description": "The managed private endpoint name of Azure Managed Grafana.",
"type": "string"
},
"properties": {
"description": "Resource properties.",
"oneOf": [
{
"$ref": "#/definitions/ManagedPrivateEndpointModelProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"tags": {
"description": "Resource tags.",
"oneOf": [
{
"additionalProperties": {
"type": "string"
},
"properties": {},
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.Dashboard/grafana/managedPrivateEndpoints"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"grafana_privateEndpointConnections": {
"description": "Microsoft.Dashboard/grafana/privateEndpointConnections",
"properties": {
"apiVersion": {
"enum": [
"2022-10-01-preview"
],
"type": "string"
},
"name": {
"description": "The private endpoint connection name of Azure Managed Grafana.",
"type": "string"
},
"properties": {
"description": "Resource properties.",
"oneOf": [
{
"$ref": "#/definitions/PrivateEndpointConnectionProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.Dashboard/grafana/privateEndpointConnections"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
}
},
"definitions": {
"AzureMonitorWorkspaceIntegration": {
"description": "Integrations for Azure Monitor Workspace.",
"properties": {
"azureMonitorWorkspaceResourceId": {
"description": "The resource Id of the connected Azure Monitor Workspace.",
"type": "string"
}
},
"type": "object"
},
"EnterpriseConfigurations": {
"description": "Enterprise settings of a Grafana instance",
"properties": {
"marketplaceAutoRenew": {
"description": "The AutoRenew setting of the Enterprise subscription",
"oneOf": [
{
"enum": [
"Disabled",
"Enabled"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"marketplacePlanId": {
"description": "The Plan Id of the Azure Marketplace subscription for the Enterprise plugins",
"type": "string"
}
},
"type": "object"
},
"GrafanaConfigurations": {
"description": "Server configurations of a Grafana instance",
"properties": {
"smtp": {
"description": "Email server settings.\r\nhttps://grafana.com/docs/grafana/v9.0/setup-grafana/configure-grafana/#smtp",
"oneOf": [
{
"$ref": "#/definitions/Smtp"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"type": "object"
},
"GrafanaIntegrations": {
"description": "GrafanaIntegrations is a bundled observability experience (e.g. pre-configured data source, tailored Grafana dashboards, alerting defaults) for common monitoring scenarios.",
"properties": {
"azureMonitorWorkspaceIntegrations": {
"description": "Array of AzureMonitorWorkspaceIntegration",
"oneOf": [
{
"items": {
"$ref": "#/definitions/AzureMonitorWorkspaceIntegration"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"type": "object"
},
"GrafanaPlugin": {
"description": "Plugin of Grafana",
"properties": {},
"type": "object"
},
"ManagedGrafanaProperties": {
"description": "Properties specific to the grafana resource.",
"properties": {
"apiKey": {
"description": "The api key setting of the Grafana instance.",
"oneOf": [
{
"enum": [
"Disabled",
"Enabled"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"autoGeneratedDomainNameLabelScope": {
"description": "Scope for dns deterministic name hash calculation.",
"oneOf": [
{
"enum": [
"TenantReuse"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"deterministicOutboundIP": {
"description": "Whether a Grafana instance uses deterministic outbound IPs.",
"oneOf": [
{
"enum": [
"Disabled",
"Enabled"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"enterpriseConfigurations": {
"description": "Enterprise settings of a Grafana instance",
"oneOf": [
{
"$ref": "#/definitions/EnterpriseConfigurations"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"grafanaConfigurations": {
"description": "Server configurations of a Grafana instance",
"oneOf": [
{
"$ref": "#/definitions/GrafanaConfigurations"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"grafanaIntegrations": {
"description": "GrafanaIntegrations is a bundled observability experience (e.g. pre-configured data source, tailored Grafana dashboards, alerting defaults) for common monitoring scenarios.",
"oneOf": [
{
"$ref": "#/definitions/GrafanaIntegrations"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"grafanaMajorVersion": {
"description": "The major Grafana software version to target.",
"type": "string"
},
"grafanaPlugins": {
"description": "Installed plugin list of the Grafana instance. Key is plugin id, value is plugin definition.",
"oneOf": [
{
"additionalProperties": {
"$ref": "#/definitions/GrafanaPlugin"
},
"properties": {},
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"publicNetworkAccess": {
"description": "Indicate the state for enable or disable traffic over the public interface.",
"oneOf": [
{
"enum": [
"Enabled",
"Disabled"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"zoneRedundancy": {
"description": "The zone redundancy setting of the Grafana instance.",
"oneOf": [
{
"enum": [
"Disabled",
"Enabled"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"type": "object"
},
"ManagedPrivateEndpointModelProperties": {
"description": "Properties specific to the managed private endpoint.",
"properties": {
"groupIds": {
"description": "The group Ids of the managed private endpoint.",
"oneOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"privateLinkResourceId": {
"description": "The ARM resource ID of the resource for which the managed private endpoint is pointing to.",
"type": "string"
},
"privateLinkResourceRegion": {
"description": "The region of the resource to which the managed private endpoint is pointing to.",
"type": "string"
},
"privateLinkServiceUrl": {
"description": "The URL of the data store behind the private link service. It would be the URL in the Grafana data source configuration page without the protocol and port.",
"type": "string"
},
"requestMessage": {
"description": "User input request message of the managed private endpoint.",
"type": "string"
}
},
"type": "object"
},
"ManagedServiceIdentity": {
"description": "Managed service identity (system assigned and/or user assigned identities)",
"properties": {
"type": {
"description": "Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).",
"oneOf": [
{
"enum": [
"None",
"SystemAssigned",
"UserAssigned",
"SystemAssigned,UserAssigned"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"userAssignedIdentities": {
"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.",
"oneOf": [
{
"additionalProperties": {
"$ref": "#/definitions/UserAssignedIdentity"
},
"properties": {},
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"required": [
"type"
],
"type": "object"
},
"PrivateEndpoint": {
"description": "The Private Endpoint resource.",
"properties": {},
"type": "object"
},
"PrivateEndpointConnectionProperties": {
"description": "Properties of the PrivateEndpointConnectProperties.",
"properties": {
"groupIds": {
"description": "The private endpoint connection group ids.",
"oneOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"privateEndpoint": {
"description": "The resource of private end point.",
"oneOf": [
{
"$ref": "#/definitions/PrivateEndpoint"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"privateLinkServiceConnectionState": {
"description": "A collection of information about the state of the connection between service consumer and provider.",
"oneOf": [
{
"$ref": "#/definitions/PrivateLinkServiceConnectionState"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"required": [
"privateLinkServiceConnectionState"
],
"type": "object"
},
"PrivateLinkServiceConnectionState": {
"description": "A collection of information about the state of the connection between service consumer and provider.",
"properties": {
"actionsRequired": {
"description": "A message indicating if changes on the service provider require any updates on the consumer.",
"type": "string"
},
"description": {
"description": "The reason for approval/rejection of the connection.",
"type": "string"
},
"status": {
"description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service.",
"oneOf": [
{
"enum": [
"Pending",
"Approved",
"Rejected"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"type": "object"
},
"ResourceSku": {
"properties": {
"name": {
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"Smtp": {
"description": "Email server settings.\r\nhttps://grafana.com/docs/grafana/v9.0/setup-grafana/configure-grafana/#smtp",
"properties": {
"enabled": {
"description": "Enable this to allow Grafana to send email. Default is false",
"oneOf": [
{
"default": false,
"type": "boolean"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"fromAddress": {
"description": "Address used when sending out emails\r\nhttps://pkg.go.dev/net/mail#Address",
"type": "string"
},
"fromName": {
"description": "Name to be used when sending out emails. Default is \"Azure Managed Grafana Notification\"\r\nhttps://pkg.go.dev/net/mail#Address",
"type": "string"
},
"host": {
"description": "SMTP server hostname with port, e.g. test.email.net:587",
"type": "string"
},
"password": {
"description": "Password of SMTP auth. If the password contains # or ;, then you have to wrap it with triple quotes",
"type": "string"
},
"skipVerify": {
"description": "Verify SSL for SMTP server. Default is false\r\nhttps://pkg.go.dev/crypto/tls#Config",
"oneOf": [
{
"type": "boolean"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"startTLSPolicy": {
"description": "The StartTLSPolicy setting of the SMTP configuration\r\nhttps://pkg.go.dev/github.com/go-mail/mail#StartTLSPolicy",
"oneOf": [
{
"enum": [
"OpportunisticStartTLS",
"MandatoryStartTLS",
"NoStartTLS"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"user": {
"description": "User of SMTP auth",
"type": "string"
}
},
"type": "object"
},
"UserAssignedIdentity": {
"description": "User assigned identity properties",
"properties": {},
"type": "object"
},
"grafana_managedPrivateEndpoints_childResource": {
"description": "Microsoft.Dashboard/grafana/managedPrivateEndpoints",
"properties": {
"apiVersion": {
"enum": [
"2022-10-01-preview"
],
"type": "string"
},
"location": {
"description": "The geo-location where the resource lives",
"type": "string"
},
"name": {
"description": "The managed private endpoint name of Azure Managed Grafana.",
"type": "string"
},
"properties": {
"description": "Resource properties.",
"oneOf": [
{
"$ref": "#/definitions/ManagedPrivateEndpointModelProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"tags": {
"description": "Resource tags.",
"oneOf": [
{
"additionalProperties": {
"type": "string"
},
"properties": {},
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"managedPrivateEndpoints"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"grafana_privateEndpointConnections_childResource": {
"description": "Microsoft.Dashboard/grafana/privateEndpointConnections",
"properties": {
"apiVersion": {
"enum": [
"2022-10-01-preview"
],
"type": "string"
},
"name": {
"description": "The private endpoint connection name of Azure Managed Grafana.",
"type": "string"
},
"properties": {
"description": "Resource properties.",
"oneOf": [
{
"$ref": "#/definitions/PrivateEndpointConnectionProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"privateEndpointConnections"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
}
}
}