Skip to content

schema: Define schema in CUE

Dduvall requested to merge try/cue into main

Implement initial CUE based schema and loading.

CUE loading is currently a bit strange due to the immaturity of the CUE language implementation in Go, specifically the loader implementation.

It relies on an overlay filesystem to essentially mock a cue.mod directory in the same directory as the user-defined configuration. The Python CUE schema files are placed in the overlay filesystem under cue.mod/pkg so that user configuration can import the schema without having to manage their own CUE modules.

Merge request reports