Resources/Schema/New-CmAzCustomExtension.Schema.json
{
"$schema": "http://json-schema.org/draft-07/schema", "$id": "New-CmAzCustomExtension", "type": "object", "title": "New-CmAzCustomExtension", "description": "Settings Root.", "properties": { "component": { "$id": "#/component", "type": [ "string", "null" ], "title": "Component", "description": "Value to determine what cmdlet should be dynamically loaded for these settings." }, "names": { "$id": "#/names", "type": "array", "title": "Names", "description": "Contains containers with properties required to create standard names for resources." }, "templates": { "$id": "#/templates", "type": "array", "title": "Templates", "description": "Contains details required to deploy custom templates.", "items": { "$id": "#/templates/items", "minItems": 1, "allOf": [ { "$id": "#/templates/items/allOf", "type": "object", "required": [ "name", "parameters" ], "properties": { "name": { "$id": "#/templates/items/allOf/name", "type": "string", "title": "Name", "description": "Name and path of the template. Defaults to _extension folder." }, "location": { "$id": "#/templates/items/allOf/location", "title": "Location", "description": "Location for subscription scoped deployment", "type": ["string", "null"] }, "parameters": { "$id": "#/templates/items/allOf/parameters", "type": [ "array", "object" ], "title": "Parameters", "description": "Parameters to be passed to template.", "patternProperties": { "^[a-zA-Z0-9]+$": { "type": "object", "properties": { "type": { "description": "Type of operation to be performed before returning value to template.", "type": "string", "enum": ["name", "static", "dependency", "secureDependency"] }, "value": { "description": "Value to be returned to template.", "type": ["string", "array", "boolean", "integer", "null", "number", "object"] }, "property": { "description": "Used to return specific property of dependency.", "type": ["string", "null"] }, "throwIfMultiple": { "description": "Check to enforce non-duplication of service located resource.", "type": ["boolean", "null"], "default": true }, "throwIfUnavailable": { "description": "Check to ensure dependency exists.", "type": ["boolean", "null"], "default": true }, "location": { "description": "Fetch resource from a particular location using service locator.", "type": ["string", "null"] }, "secretName": { "description": "Name of key vault secret containing secure string.", "type": "string" } }, "required": [ "type", "value" ], "additionalProperties": false } }, "additionalProperties": false }, "service": { "$id": "#/templates/items/allOf/service", "type": ["object", "null"], "title": "Service", "description": "Contains dependency and publish details for service location.", "properties": { "dependencies": { "$id": "#/templates/items/allOf/service/dependencies", "type": ["object", "null"], "title": "Dependencies", "description": "Contains dependency details for service location.", "properties": { "resourceGroup": { "$id": "#/templates/items/allOf/service/dependencies/resourceGroup", "type": ["string", "null"], "title": "ResourceGroup", "description": "Local overriding dependency value to fetch existing resource type." } }, "additionalProperties": false } }, "additionalProperties": false } }, "additionalProperties": false } ] } } }, "additionalProperties": false } |