This sets up the boilerplate for validating the values.yaml file using a values.schema.json file. The schema file is created through pydantic's DSL. I've also added a cli tool to update the helm repo's schema. The workflow for updating the schema should look something like this:
- Make changes to pydantic models
- Show changes using dagster-helm schema | git diff --no-index --exit-code -- helm/dagster/values.schema.json -
- If the changes are good, dagster-helm schema --command=apply to update the current values.schema.json.
As an example, we add schema validation for the helm values that configure the Dagit webserver.