Files
poky/meta/files/layers.schema.json
Yoann Congal 20c60e5ae3 oe-setup-layers: make "path" optional
Layer names and path are often redundant. Allow users to omit the path
key when it is equal to the layer name by using the layer name as a
default value for its path.

For example, from layers.example.json:
  "sources": {
      "meta-alex": {
          "path": "meta-alex"
      },
      "meta-intel": {
          "path": "meta-intel"
      },
      "poky": {
          "path": "poky"
      }
  },

Update the schema to stop requiring "path" and remove it in example for
"meta-intel".

(From OE-Core rev: 7f36f0526fae5a81f9bc02e16cc849a2b1ea5797)

Signed-off-by: Yoann Congal <yoann.congal@smile.fr>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-11-03 17:40:41 +00:00

74 lines
3.5 KiB
JSON

{
"description": "OpenEmbedder Layer Setup Manifest",
"type": "object",
"additionalProperties": false,
"required": [
"version"
],
"properties": {
"version": {
"description": "The version of this document; currently '1.0'",
"enum": ["1.0"]
},
"sources": {
"description": "The dict of layer sources",
"type": "object",
"patternProperties": { ".*" : {
"type": "object",
"description": "The upstream source from which a set of layers may be fetched",
"additionalProperties": false,
"properties": {
"path": {
"description": "The path where this layer source will be placed when fetching",
"type": "string"
},
"contains_this_file": {
"description": "Whether the directory with the layer source also contains this json description. Tools may want to skip the checkout of the source then.",
"type": "boolean"
},
"git-remote": {
"description": "A remote git source from which to fetch",
"type": "object",
"additionalProperties": false,
"required": [
"rev"
],
"properties": {
"branch": {
"description": "The git branch to fetch (optional)",
"type": "string"
},
"rev": {
"description": "The git revision to checkout",
"type": "string"
},
"describe": {
"description": "The output of 'git describe' (human readable description of the revision using tags in revision history).",
"type": "string"
},
"remotes": {
"description": "The dict of git remotes to add to this repository",
"type": "object",
"patternProperties": { ".*" : {
"description": "A git remote",
"type": "object",
"addtionalProperties": false,
"required": [
"uri"
],
"properties": {
"uri": {
"description": "The URI for the remote",
"type": "string"
}
}
}}
}
}
}
}
}
}}
}
}