618 строки
16 KiB
JSON
618 строки
16 KiB
JSON
{
|
|
"id": "https://schema.management.azure.com/schemas/2021-05-01-preview/NGINX.NGINXPLUS.json#",
|
|
"title": "Nginx.NginxPlus",
|
|
"description": "Nginx NginxPlus Resource Types",
|
|
"$schema": "http://json-schema.org/draft-04/schema#",
|
|
"resourceDefinitions": {
|
|
"nginxDeployments": {
|
|
"description": "Nginx.NginxPlus/nginxDeployments",
|
|
"properties": {
|
|
"apiVersion": {
|
|
"enum": [
|
|
"2021-05-01-preview"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"identity": {
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/IdentityProperties"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
},
|
|
"location": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "The name of targeted Nginx deployment",
|
|
"type": "string"
|
|
},
|
|
"properties": {
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/NginxDeploymentProperties"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
},
|
|
"resources": {
|
|
"items": {
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/nginxDeployments_certificates_childResource"
|
|
},
|
|
{
|
|
"$ref": "#/definitions/nginxDeployments_configurations_childResource"
|
|
}
|
|
]
|
|
},
|
|
"type": "array"
|
|
},
|
|
"sku": {
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/ResourceSku"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
},
|
|
"tags": {
|
|
"description": "Dictionary of <string>",
|
|
"oneOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"properties": {},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"enum": [
|
|
"Nginx.NginxPlus/nginxDeployments"
|
|
],
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"name",
|
|
"properties",
|
|
"apiVersion",
|
|
"type"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"nginxDeployments_certificates": {
|
|
"description": "Nginx.NginxPlus/nginxDeployments/certificates",
|
|
"properties": {
|
|
"apiVersion": {
|
|
"enum": [
|
|
"2021-05-01-preview"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"location": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "The name of certificate",
|
|
"type": "string"
|
|
},
|
|
"properties": {
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/NginxCertificateProperties"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
},
|
|
"tags": {
|
|
"description": "Dictionary of <string>",
|
|
"oneOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"properties": {},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"enum": [
|
|
"Nginx.NginxPlus/nginxDeployments/certificates"
|
|
],
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"name",
|
|
"properties",
|
|
"apiVersion",
|
|
"type"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"nginxDeployments_configurations": {
|
|
"description": "Nginx.NginxPlus/nginxDeployments/configurations",
|
|
"properties": {
|
|
"apiVersion": {
|
|
"enum": [
|
|
"2021-05-01-preview"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"location": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "The name of configuration, only 'default' is supported value due to the singleton of Nginx conf",
|
|
"type": "string"
|
|
},
|
|
"properties": {
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/NginxConfigurationProperties"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
},
|
|
"tags": {
|
|
"description": "Dictionary of <string>",
|
|
"oneOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"properties": {},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"enum": [
|
|
"Nginx.NginxPlus/nginxDeployments/configurations"
|
|
],
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"name",
|
|
"properties",
|
|
"apiVersion",
|
|
"type"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"definitions": {
|
|
"IdentityProperties": {
|
|
"properties": {
|
|
"type": {
|
|
"oneOf": [
|
|
{
|
|
"enum": [
|
|
"SystemAssigned",
|
|
"UserAssigned",
|
|
"SystemAssigned, UserAssigned",
|
|
"None"
|
|
],
|
|
"type": "string"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
},
|
|
"userAssignedIdentities": {
|
|
"description": "Dictionary of <UserIdentityProperties>",
|
|
"oneOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"$ref": "#/definitions/UserIdentityProperties"
|
|
},
|
|
"properties": {},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"NginxCertificateProperties": {
|
|
"properties": {
|
|
"certificateVirtualPath": {
|
|
"type": "string"
|
|
},
|
|
"keyVaultSecretId": {
|
|
"type": "string"
|
|
},
|
|
"keyVirtualPath": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"NginxConfigurationFile": {
|
|
"properties": {
|
|
"content": {
|
|
"type": "string"
|
|
},
|
|
"virtualPath": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"NginxConfigurationPackage": {
|
|
"properties": {
|
|
"data": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"NginxConfigurationProperties": {
|
|
"properties": {
|
|
"files": {
|
|
"description": "Array of NginxConfigurationFile",
|
|
"oneOf": [
|
|
{
|
|
"items": {
|
|
"$ref": "#/definitions/NginxConfigurationFile"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
},
|
|
"package": {
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/NginxConfigurationPackage"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
},
|
|
"protectedFiles": {
|
|
"description": "Array of NginxConfigurationFile",
|
|
"oneOf": [
|
|
{
|
|
"items": {
|
|
"$ref": "#/definitions/NginxConfigurationFile"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
},
|
|
"rootFile": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"NginxDeploymentProperties": {
|
|
"properties": {
|
|
"enableDiagnosticsSupport": {
|
|
"oneOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
},
|
|
"logging": {
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/NginxLogging"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
},
|
|
"managedResourceGroup": {
|
|
"description": "The managed resource group to deploy VNet injection related network resources.",
|
|
"type": "string"
|
|
},
|
|
"networkProfile": {
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/NginxNetworkProfile"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"NginxFrontendIPConfiguration": {
|
|
"properties": {
|
|
"privateIPAddresses": {
|
|
"description": "Array of NginxPrivateIPAddress",
|
|
"oneOf": [
|
|
{
|
|
"items": {
|
|
"$ref": "#/definitions/NginxPrivateIPAddress"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
},
|
|
"publicIPAddresses": {
|
|
"description": "Array of NginxPublicIPAddress",
|
|
"oneOf": [
|
|
{
|
|
"items": {
|
|
"$ref": "#/definitions/NginxPublicIPAddress"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"NginxLogging": {
|
|
"properties": {
|
|
"storageAccount": {
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/NginxStorageAccount"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"NginxNetworkInterfaceConfiguration": {
|
|
"properties": {
|
|
"subnetId": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"NginxNetworkProfile": {
|
|
"properties": {
|
|
"frontEndIPConfiguration": {
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/NginxFrontendIPConfiguration"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
},
|
|
"networkInterfaceConfiguration": {
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/NginxNetworkInterfaceConfiguration"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"NginxPrivateIPAddress": {
|
|
"properties": {
|
|
"privateIPAddress": {
|
|
"type": "string"
|
|
},
|
|
"privateIPAllocationMethod": {
|
|
"oneOf": [
|
|
{
|
|
"enum": [
|
|
"Static",
|
|
"Dynamic"
|
|
],
|
|
"type": "string"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
},
|
|
"subnetId": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"NginxPublicIPAddress": {
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"NginxStorageAccount": {
|
|
"properties": {
|
|
"accountName": {
|
|
"type": "string"
|
|
},
|
|
"containerName": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"ResourceSku": {
|
|
"properties": {
|
|
"name": {
|
|
"description": "Name of the SKU.",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"name"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"UserIdentityProperties": {
|
|
"properties": {},
|
|
"type": "object"
|
|
},
|
|
"nginxDeployments_certificates_childResource": {
|
|
"description": "Nginx.NginxPlus/nginxDeployments/certificates",
|
|
"properties": {
|
|
"apiVersion": {
|
|
"enum": [
|
|
"2021-05-01-preview"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"location": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "The name of certificate",
|
|
"type": "string"
|
|
},
|
|
"properties": {
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/NginxCertificateProperties"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
},
|
|
"tags": {
|
|
"description": "Dictionary of <string>",
|
|
"oneOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"properties": {},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"enum": [
|
|
"certificates"
|
|
],
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"name",
|
|
"properties",
|
|
"apiVersion",
|
|
"type"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"nginxDeployments_configurations_childResource": {
|
|
"description": "Nginx.NginxPlus/nginxDeployments/configurations",
|
|
"properties": {
|
|
"apiVersion": {
|
|
"enum": [
|
|
"2021-05-01-preview"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"location": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "The name of configuration, only 'default' is supported value due to the singleton of Nginx conf",
|
|
"type": "string"
|
|
},
|
|
"properties": {
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/definitions/NginxConfigurationProperties"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
},
|
|
"tags": {
|
|
"description": "Dictionary of <string>",
|
|
"oneOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"properties": {},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"enum": [
|
|
"configurations"
|
|
],
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"name",
|
|
"properties",
|
|
"apiVersion",
|
|
"type"
|
|
],
|
|
"type": "object"
|
|
}
|
|
}
|
|
} |