1# SPDX-License-Identifier: Apache-2.0
2#
3# Copyright (c) 2024, Nordic Semiconductor ASA
4
5# A pykwalify schema for basic validation of the Zephyr build info YAML file.
6
7type: map
8mapping:
9  version:
10    required: true
11    type: str
12  cmake:
13    type: map
14    mapping:
15      application:
16        type: map
17        mapping:
18          source-dir:
19            type: str
20          configuration-dir:
21            type: str
22      board:
23        type: map
24        mapping:
25          name:
26            required: true
27            type: str
28          qualifiers:
29            type: str
30          revision:
31            type: str
32          path:
33            type: seq
34            sequence:
35              - type: str
36      devicetree:
37        type: map
38        mapping:
39          files:
40            type: seq
41            sequence:
42              - type: str
43          user-files:
44            type: seq
45            sequence:
46              - type: str
47          extra-user-files:
48            type: seq
49            sequence:
50              - type: str
51          include-dirs:
52            type: seq
53            sequence:
54              - type: str
55          bindings-dirs:
56            type: seq
57            sequence:
58              - type: str
59      kconfig:
60        type: map
61        mapping:
62          files:
63            type: seq
64            sequence:
65              - type: str
66          user-files:
67            type: seq
68            sequence:
69              - type: str
70          extra-user-files:
71            type: seq
72            sequence:
73              - type: str
74      sysbuild:
75        type: bool
76      toolchain:
77        type: map
78        mapping:
79          name:
80            type: str
81          version:
82            type: str
83          path:
84            type: str
85      zephyr:
86        type: map
87        mapping:
88          zephyr-base:
89            type: str
90          version:
91            type: str
92      vendor-specific:
93        type: map
94        mapping:
95          regex;(.*):
96            type: map
97            mapping:
98              regex;(.*):
99                type: str
100  west:
101    type: map
102    mapping:
103      command:
104        type: str
105      topdir:
106        type: str
107      version:
108        type: str
109