Skip to content

feat(charts): add UI settings category to all chart schemas (+ redis mutable fix)#293

Open
arunesh-j wants to merge 2 commits into
mainfrom
feat/all-charts-schema-category
Open

feat(charts): add UI settings category to all chart schemas (+ redis mutable fix)#293
arunesh-j wants to merge 2 commits into
mainfrom
feat/all-charts-schema-category

Conversation

@arunesh-j

Copy link
Copy Markdown
Contributor

What

Adds the UI settings category key to every chart schema that has a values.schema.json but wasn't yet categorised, using the fixed vocabulary the ZopDay imported-service Settings UI standardises on: runtime · compute · environment · advanced. Also fixes a mutable typo in the redis schema.

service and cron-job already carry these categories (merged earlier); this covers the remaining 21 charts.

Why

helm-manager reads category off each top-level property and the ZopDay Settings drawer groups fields into tabs by it. Without a category, a chart's fields don't surface in the tabbed Settings view. This is UI-only metadatacategory is a non-standard JSON-Schema keyword that Helm ignores at install time, so no repackaging or Chart.yaml bump is needed (helm-manager reads the schema from the branch/main source, not the packaged .tgz).

Mapping (top-level properties)

  • computeresources, diskSize/disk_size, replication, per-component resource objects (master, slave, zero, alpha), scheduling
  • runtimeversion, services/service, ports
  • environmentauth, supersetNode (db/redis connections)
  • advancedcustomConfig/customMyCnf, tls, zookeeper, solr-operator, bundled dependencies (postgres/redis/mysql), init, jupyterhub hub/proxy/prePuller/cull, uptime prometheus/targets
  • image/name left uncategorised (hidden from settings, same as service)

redis mutable fix

The four resources.{requests,limits}.{cpu,memory} fields had "mutable": "true" (a quoted string). helm-manager asserts props["mutable"].(bool), which fails on a string, so those fields were never emitted and redis resources didn't render. Changed to boolean true.

Notes

  • 87 additive category insertions across 21 charts + 4 redis boolean fixes; no existing lines removed.
  • All schemas validated as well-formed JSON; every category value is one of the four allowed.

Adds the fixed `category` key (runtime|compute|environment|advanced) to the
top-level properties of every chart that has a values.schema.json but wasn't
yet categorised — the same standardisation service/cron-job already carry.
helm-manager reads this to group fields into Settings tabs; it's UI-only
metadata (a non-standard JSON-Schema keyword Helm ignores at install time),
so no repackaging or Chart.yaml bump is needed.

Mapping follows the service rules: resources/diskSize/replication/replicas →
compute; version/services/ports → runtime; auth/connections/env → environment;
customConfig/tls/operator/bundled-deps/scheduling → advanced.

87 additive insertions across 21 charts; no existing lines changed.
The four resources cpu/memory fields had "mutable": "true" (a quoted
string). helm-manager asserts props["mutable"].(bool), which fails on a
string, so the fields were never emitted and redis resources didn't show
in the settings form. Change them to boolean true.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant