azure-resource-manager-schemas/schemas/2021-05-01-preview/NGINX.NGINXPLUS.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"
}
}
}