winget-cli

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

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 }