2023-02-28 15:50:35 +01:00
|
|
|
{
|
2024-03-12 16:22:35 +01:00
|
|
|
"$schema": "https://json-schema.org/draft/2019-09/schema",
|
2023-02-28 15:50:35 +01:00
|
|
|
"$id": "https://uci.emissary.cadoles.com/spec.json",
|
|
|
|
"title": "UCISpec",
|
|
|
|
"description": "Emissary 'UCI' specification",
|
|
|
|
"type": "object",
|
|
|
|
"properties": {
|
|
|
|
"config": {
|
|
|
|
"type": "object",
|
|
|
|
"properties": {
|
|
|
|
"packages": {
|
|
|
|
"type": "array",
|
|
|
|
"items": {
|
|
|
|
"$ref": "#/$defs/package"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
2024-03-12 16:22:35 +01:00
|
|
|
"required": [
|
|
|
|
"packages"
|
|
|
|
],
|
2023-02-28 15:50:35 +01:00
|
|
|
"additionalProperties": false
|
|
|
|
},
|
|
|
|
"postImportCommands": {
|
|
|
|
"type": "array",
|
|
|
|
"items": {
|
|
|
|
"type": "object",
|
|
|
|
"properties": {
|
|
|
|
"command": {
|
|
|
|
"type": "string"
|
|
|
|
},
|
|
|
|
"args": {
|
|
|
|
"type": "array",
|
|
|
|
"items": {
|
|
|
|
"type": "string"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
2024-03-12 16:22:35 +01:00
|
|
|
"required": [
|
|
|
|
"command",
|
|
|
|
"args"
|
|
|
|
],
|
2023-02-28 15:50:35 +01:00
|
|
|
"additionalProperties": false
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
2024-03-12 16:22:35 +01:00
|
|
|
"required": [
|
|
|
|
"config",
|
|
|
|
"postImportCommands"
|
|
|
|
],
|
2023-02-28 15:50:35 +01:00
|
|
|
"additionalProperties": false,
|
|
|
|
"$defs": {
|
|
|
|
"package": {
|
|
|
|
"type": "object",
|
|
|
|
"properties": {
|
|
|
|
"name": {
|
|
|
|
"type": "string"
|
|
|
|
},
|
|
|
|
"configs": {
|
|
|
|
"type": "array",
|
|
|
|
"items": {
|
|
|
|
"$ref": "#/$defs/config"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
2024-03-12 16:22:35 +01:00
|
|
|
"required": [
|
|
|
|
"name",
|
|
|
|
"configs"
|
|
|
|
],
|
2023-02-28 15:50:35 +01:00
|
|
|
"additionalProperties": false
|
|
|
|
},
|
|
|
|
"config": {
|
|
|
|
"type": "object",
|
|
|
|
"properties": {
|
|
|
|
"name": {
|
|
|
|
"type": "string"
|
|
|
|
},
|
|
|
|
"section": {
|
|
|
|
"type": "string"
|
|
|
|
},
|
|
|
|
"options": {
|
2023-03-08 20:18:40 +01:00
|
|
|
"anyOf": [
|
|
|
|
{
|
2023-03-09 15:14:54 +01:00
|
|
|
"type": "array",
|
2023-03-08 20:18:40 +01:00
|
|
|
"items": {
|
|
|
|
"$ref": "#/$defs/option"
|
|
|
|
}
|
|
|
|
},
|
2024-03-12 16:22:35 +01:00
|
|
|
{
|
|
|
|
"type": "null"
|
|
|
|
}
|
2023-03-08 20:18:40 +01:00
|
|
|
]
|
2023-02-28 15:50:35 +01:00
|
|
|
}
|
|
|
|
},
|
2024-03-12 16:22:35 +01:00
|
|
|
"required": [
|
|
|
|
"name"
|
|
|
|
],
|
2023-02-28 15:50:35 +01:00
|
|
|
"additionalProperties": false
|
|
|
|
},
|
|
|
|
"option": {
|
|
|
|
"type": "object",
|
|
|
|
"properties": {
|
|
|
|
"type": {
|
|
|
|
"type": "string",
|
2024-03-12 16:22:35 +01:00
|
|
|
"enum": [
|
|
|
|
"list",
|
|
|
|
"option"
|
|
|
|
]
|
2023-02-28 15:50:35 +01:00
|
|
|
},
|
|
|
|
"name": {
|
|
|
|
"type": "string"
|
|
|
|
},
|
|
|
|
"value": {
|
|
|
|
"type": "string"
|
|
|
|
}
|
|
|
|
},
|
2024-03-12 16:22:35 +01:00
|
|
|
"required": [
|
|
|
|
"type",
|
|
|
|
"name",
|
|
|
|
"value"
|
|
|
|
],
|
2023-02-28 15:50:35 +01:00
|
|
|
"additionalProperties": false
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|