PTU5KAS/kas/schema-kas.json
Jan Kiszka 241d03f159 Switch overrides and dump plugin to new commit/branch schema
Lock files are now using the commit key, rather than legacy refspec, and
the plugin writes out flattened configs that are in line with the input
configs (only write refspec if input repo was using refspec).

This also requires slight adjustments of the related test case. Enhance
the dump test at this chance to actually validate the written commit ID
against the expected one.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
2023-05-30 17:32:03 +02:00

290 lines
9.5 KiB
JSON

{
"$schema": "http://json-schema.org/draft-04/schema#",
"$id": "https://github.com/siemens/kas/blob/master/kas/schema-kas.json",
"title": "kas configuration",
"description": "kas, a setup tool for bitbake based projects",
"type": "object",
"required": [
"header"
],
"additionalProperties": false,
"properties": {
"header": {
"type": "object",
"required": [
"version"
],
"additionalProperties": false,
"properties": {
"version": {
"oneOf": [
{
"type": "string",
"enum": [
"0.10"
]
},
{
"type": "integer"
}
]
},
"includes": {
"type": "array",
"items": {
"oneOf": [
{
"type": "string"
},
{
"type": "object",
"required": [
"repo",
"file"
],
"additionalProperties": false,
"properties": {
"repo": {
"type": "string"
},
"file": {
"type": "string"
}
}
}
]
}
}
}
},
"build_system": {
"type": "string",
"enum": [
"openembedded",
"oe",
"isar"
]
},
"defaults": {
"type": "object",
"additionalProperties": false,
"properties": {
"repos": {
"type": "object",
"additionalProperties": false,
"properties": {
"branch": {
"type": "string"
},
"refspec": {
"type": "string"
},
"patches": {
"type": "object",
"additionalProperties": false,
"properties": {
"repo": {
"type": "string"
}
}
}
}
}
}
},
"overrides": {
"type": "object",
"additionalProperties": false,
"properties": {
"repos": {
"type": "object",
"additionalProperties": {
"type": "object",
"additionalProperties": false,
"properties": {
"commit": {
"type": "string"
}
}
}
}
}
},
"machine": {
"type": "string"
},
"distro": {
"type": "string"
},
"env": {
"type": "object",
"additionalProperties": {
"type": ["string", "null"]
}
},
"target": {
"oneOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"task": {
"type": "string"
},
"repos": {
"type": "object",
"additionalProperties": {
"oneOf": [
{
"type": "object",
"additionalProperties": false,
"properties": {
"name": {
"type": "string"
},
"url": {
"oneOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"type": {
"type": "string"
},
"commit": {
"type": "string"
},
"branch": {
"type": "string"
},
"refspec": {
"type": "string"
},
"path": {
"oneOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"layers": {
"type": "object",
"additionalProperties": {
"oneOf": [
{
"type": "null"
},
{
"type": "integer"
},
{
"type": "boolean"
},
{
"type": "string"
}
]
}
},
"patches": {
"type": "object",
"additionalProperties": {
"oneOf": [
{
"type": "object",
"additionalProperties": false,
"required": [
"path"
],
"properties": {
"repo": {
"type": "string"
},
"path": {
"type": "string"
}
}
},
{
"type": "null"
}
]
}
}
}
},
{
"type": "null"
}
]
}
},
"bblayers_conf_header": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"local_conf_header": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"proxy_config": {
"type": "object",
"additionalProperties": false,
"properties": {
"http_proxy": {
"type": "string"
},
"https_proxy": {
"type": "string"
},
"ftp_proxy": {
"type": "string"
},
"no_proxy": {
"type": "string"
}
}
},
"menu_configuration": {
"type": "object",
"additionalProperties": {
"oneOf": [
{
"type": "boolean"
},
{
"type": "string"
},
{
"type": "integer"
}
]
}
},
"_source_dir": {
"type": "string"
},
"_source_dir_host": {
"type": "string"
}
}
}