blob: e0d8d6c23904ab0f2dbb507dcb2681c101dbec82 [file] [edit]
# SPDX-FileCopyrightText: Copyright The Zephyr Project Contributors
#
# SPDX-License-Identifier: Apache-2.0
# JSON Schema for the zephyr/module.yml file that describes a Zephyr module.
# When possible, constraints and validation rules should be modeled directly in this file.
#
# NOTE: keep in sync with doc/develop/modules.rst
$schema: "https://json-schema.org/draft/2020-12/schema"
$id: "https://zephyrproject.org/schemas/zephyr/module"
title: Zephyr Module Schema
description: Schema for validating a Zephyr module's zephyr/module.yml description
type: object
properties:
name:
type: string
build:
type: object
properties:
cmake:
type: string
kconfig:
type: string
cmake-ext:
type: boolean
kconfig-ext:
type: boolean
sysbuild-cmake:
type: string
sysbuild-kconfig:
type: string
sysbuild-cmake-ext:
type: boolean
sysbuild-kconfig-ext:
type: boolean
depends:
type: array
items:
type: string
settings:
type: object
properties:
board_root:
type: string
dts_root:
type: string
snippet_root:
type: string
soc_root:
type: string
arch_root:
type: string
module_ext_root:
type: string
sca_root:
type: string
tests:
type: array
items:
type: string
samples:
type: array
items:
type: string
boards:
type: array
items:
type: string
blobs:
type: array
items:
type: object
properties:
path:
type: string
sha256:
type: string
type:
type: string
enum: ['img', 'lib']
version:
type: string
license-path:
type: string
click-through:
type: boolean
url:
anyOf:
- type: string
- type: array
items:
type: string
description:
type: string
doc-url:
type: string
fetcher:
type: string
size:
type: integer
required:
- path
- sha256
- type
- version
- license-path
- url
- description
security:
type: object
properties:
external-references:
type: array
items:
type: string
package-managers:
type: object
properties:
pip:
type: object
properties:
requirement-files:
type: array
items:
type: string
runners:
type: array
items:
type: object
properties:
file:
type: string
required:
- file