configuration.schema.0.1.json (3099B)
1 { 2 "$id": "https://aka.ms/schemas/dsc/configuration.schema.0.1.json", 3 "$schema": "https://json-schema.org/draft/2020-12/schema", 4 "description": "A representation of a configuration used by an orchestrator for WinDSC.", 5 "type": "object", 6 "properties": { 7 "properties": { 8 "type": "object", 9 "properties": { 10 "assertions": { 11 "type": "array", 12 "items": { "$ref": "#/$defs/resource" } 13 }, 14 "resources": { 15 "type": "array", 16 "items": { "$ref": "#/$defs/resource" } 17 }, 18 "parameters": { 19 "type": "array", 20 "items": { "$ref": "#/$defs/resource" }, 21 "description": "Resources that retrieve information via a 'get' operation." 22 }, 23 "configurationVersion": { 24 "type": "string", 25 "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$", 26 "maxLength": 128, 27 "default": "0.1.0", 28 "description": "The configuration syntax version." 29 } 30 }, 31 "required": ["configurationVersion"] 32 } 33 }, 34 35 "$defs": { 36 "resource": { 37 "type": "object", 38 "properties": { 39 "resource": { 40 "type": "string", 41 "maxLength": 128, 42 "description": "The name of the resource." 43 }, 44 "id": { 45 "type": "string", 46 "maxLength": 128, 47 "description": "The identifier of this item." 48 }, 49 "dependsOn": { 50 "type": [ "array", "null" ], 51 "items": { 52 "type": "string" 53 }, 54 "uniqueItems": true, 55 "description": "The list of resource ids identifying dependencies." 56 }, 57 "directives": { 58 "type": "object", 59 "properties": { 60 "module": { 61 "type": "string", 62 "maxLength": 128, 63 "description": "The name of the module." 64 }, 65 "description": { 66 "type": "string", 67 "maxLength": 512, 68 "description": "The description of the desired state." 69 } 70 }, 71 "additionalProperties": true 72 }, 73 "settings": { "type": "object" } 74 }, 75 "required": ["resource"] 76 } 77 } 78 }