For any capabilities installed via Definition Objects,
KubeVela will automatically generate OpenAPI v3 JSON schema based on its parameter list, and store it in a
ConfigMap in the same
namespace with the definition object.
The default KubeVela system
vela-system, the built-in capabilities and schemas are laid there.
ConfigMap will have a common label
definition.oam.dev=schema, so you can find easily by:
ConfigMap name is in the format of
and the data key is
For example, we can use the following command to get the JSON schema of
Specifically, this schema is generated based on
parameter section in capability definition:
- For CUE based definition: the
parameteris a keyword in CUE template.
- For Helm based definition: the
parameteris generated from
values.yamlin Helm chart.
Below is a form rendered with
If a Helm based component definition is installed in KubeVela, it will also generate OpenAPI v3 JSON schema based on the
values.schema.json in the Helm chart, and store it in the
ConfigMap following convention above. If
values.schema.json is not provided by the chart author, KubeVela will automatically generate OpenAPI v3 JSON schema based on its
values.yaml file automatically.
It's by design that KubeVela supports multiple ways to define the schematic. Hence, we will explain
.schematic field in detail with following guides.