diff mbox series

meta/files/bitbake-setup.schema.json: move to bitbake repo

Message ID 20251118120020.3627144-1-alex.kanavin@gmail.com
State Accepted, archived
Commit 399a6117356f56dff2685274d80ff03abe77fc35
Headers show
Series meta/files/bitbake-setup.schema.json: move to bitbake repo | expand

Commit Message

Alexander Kanavin Nov. 18, 2025, noon UTC
From: Alexander Kanavin <alex@linutronix.de>

The schema for bitbake-setup configurations was provisionally
placed into oe-core, as it is an extension of an earlier
layer setup schema, but with bitbake-setup becoming the primary
way to set up layers, it makes sense to maintain both schemas
in bitbake, so that any updates and tweaks can be done in
lockstep in a single repository.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
 meta/files/bitbake-setup.schema.json     | 115 -----------------------
 meta/files/layers.schema.json            |  73 --------------
 meta/lib/oeqa/selftest/cases/bblayers.py |   2 +-
 3 files changed, 1 insertion(+), 189 deletions(-)
 delete mode 100644 meta/files/bitbake-setup.schema.json
 delete mode 100644 meta/files/layers.schema.json
diff mbox series

Patch

diff --git a/meta/files/bitbake-setup.schema.json b/meta/files/bitbake-setup.schema.json
deleted file mode 100644
index 7030f1d6d55..00000000000
--- a/meta/files/bitbake-setup.schema.json
+++ /dev/null
@@ -1,115 +0,0 @@ 
-{
-    "$schema": "https://json-schema.org/draft/2020-12/schema",
-    "description": "Schema for bitbake-setup configuration files",
-    "type": "object",
-    "required": [
-        "description",
-        "bitbake-setup",
-        "version"
-    ],
-    "properties": {
-        "description": {
-            "type": "string",
-            "description": "Description of the bitbake-setup configuration file"
-        },
-        "sources": {
-            "$ref": "layers.schema.json#/properties/sources"
-        },
-        "bitbake-setup": {
-            "type": "object",
-            "description": "BitBake-setup configurations",
-            "required": [
-                "configurations"
-            ],
-            "properties": {
-                "configurations": {
-                    "type": "array",
-                    "minItems": 1,
-                    "$anchor": "configurations",
-                    "items": {
-                        "type": "object",
-                        "properties": {
-                            "name": {
-                                "type": "string",
-                                "description": "Name of the configuration"
-                            },
-                            "description": {
-                                "type": "string",
-                                "description": "Human-readable description of the configuration"
-                            },
-                            "bb-layers": {
-                                "type": "array",
-                                "description": "List of BitBake layer paths to include, relative to the layers download directory",
-                                "items": {
-                                    "type": "string"
-                                }
-                            },
-                            "bb-layers-file-relative": {
-                                "type": "array",
-                                "description": "List of BitBake layers paths to include, relative to the directory with the configuration file",
-                                "items": {
-                                    "type": "string"
-                                }
-                            },
-                            "oe-template": {
-                                "type": "string",
-                                "description": "OE-template configuration"
-                            },
-                            "oe-fragments": {
-                                "$anchor": "oe-fragments",
-                                "type": "array",
-                                "description": "List of BitBake configuration fragments to enable",
-                                "items": {
-                                    "type": "string"
-                                }
-                            },
-                            "oe-fragments-one-of": {
-                                "type": "object",
-                                "description": "Mutually exclusive bitbake configuration fragment",
-                                "patternProperties": {
-                                    ".*": {
-                                        "type": "object",
-                                        "required": [
-                                            "description",
-                                            "options"
-                                        ],
-                                        "properties": {
-                                            "description": {
-                                                "type": "string",
-                                                "description": "Human-readable description of the fragment category"
-                                            },
-                                            "options": {
-                                                "$ref": "#oe-fragments"
-                                            }
-                                        },
-                                        "additionalProperties": false
-                                    }
-                                },
-                                "additionalProperties": false
-                            },
-                            "configurations": {
-                                "$ref": "#configurations"
-                            },
-                            "bb-env-passthrough-additions": {
-                                "type": "array",
-                                "description": "List of environment variables to include in BB_ENV_PASSTHROUGH_ADDITIONS",
-                                "items": {
-                                    "type": "string"
-                                }
-                            }
-                        },
-                        "additionalProperties": false
-                    }
-                }
-            },
-            "additionalProperties": false
-        },
-        "version": {
-            "description": "The version of this document; currently '1.0'",
-            "enum": [
-                "1.0"
-            ]
-        }
-    },
-    "additionalProperties": false
-}
diff --git a/meta/files/layers.schema.json b/meta/files/layers.schema.json
deleted file mode 100644
index b5c13fdb5c9..00000000000
--- a/meta/files/layers.schema.json
+++ /dev/null
@@ -1,73 +0,0 @@ 
-{
-    "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"
-                                                }
-                                            }
-                                        }}
-                                    }
-                                }
-                    }
-                }
-            }
-        }}
-    }
-}
diff --git a/meta/lib/oeqa/selftest/cases/bblayers.py b/meta/lib/oeqa/selftest/cases/bblayers.py
index 6c710b27516..1817e2c68a8 100644
--- a/meta/lib/oeqa/selftest/cases/bblayers.py
+++ b/meta/lib/oeqa/selftest/cases/bblayers.py
@@ -145,7 +145,7 @@  class BitbakeLayers(OESelftestTestCase):
     def validate_json(self, json, jsonschema):
         python = os.path.join(self.jsonschema_staging_bindir, 'nativepython3')
         jsonvalidator = os.path.join(self.jsonschema_staging_bindir, 'jsonschema')
-        schemas_dir = os.path.join(self.corebase, "meta/files/")
+        schemas_dir = os.path.join(self.bitbakepath, "..", "setup-schema")
         if not os.path.isabs(jsonschema):
             jsonschema = os.path.join(schemas_dir, jsonschema)