PTU5KAS/kas/schema-kas.json
Harald Seiler 5ecef9f919 Allow "deleting" url/path of repo in override
Make "null" an allowed type for the `url` and `path` properties of a
repository.  This allows "deleting" them in an override kas-file to e.g.
point a repository at a local directory instead of a git remote:

"Original" file:

    repos:
      meta-foo:
        url: https://example.org/foo.git
        refspec: badc0ffee

Override:

    repos:
      meta-foo:
        url:
        path: /path/to/local/foo

Without the explicit "nulling" of the URL, kas would start messing with
the repo in /path/to/local/foo (changing remote URL, switching to a
different rev, etc.).  With this change, we can instead force kas to use
the recipes in that directory untouched.

Signed-off-by: Harald Seiler <hws@denx.de>
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
2022-04-11 18:22:38 +02:00

253 lines
8.2 KiB
JSON

{
"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": {
"refspec": {
"type": "string"
},
"patches": {
"type": "object",
"additionalProperties": false,
"properties": {
"repo": {
"type": "string"
}
}
}
}
}
}
},
"machine": {
"type": "string"
},
"distro": {
"type": "string"
},
"env": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"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"
},
"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"
}
]
}
}
}
}