mirror of
https://github.com/cozystack/cozystack.git
synced 2026-11-03 10:37:21 +09:00
Gate the Proxied ingress Service on _namespace.etcd like the addon HelmRelease it fronts, so an etcd-less tenant with the addon pinned on does not get a selector-less Service (+ test). Correct the secrets framing: the tenant-visible surface is an allowlist (include: [] withholds everything), so drop the never-load-bearing exclude entry, the bats cross-check and the rename-coupling comments, and state the real mechanism. Fix the etcd prerequisite docs (an ancestor's etcd satisfies the wrapped chart; the awaiting-etcd beacon is the diagnostic), reword the tenant toggle to stop advertising the not-yet-shipped placement routing, require maxReplicas >= 1 on the ingress-role node group, and fix comment drift (Service name after the release rename, placement-hook label, package-guard lookup semantics). Assisted-By: Claude <noreply@anthropic.com> Signed-off-by: Andrei Kvapil <andrei.kvapil@aenix.io>
63 lines
2.6 KiB
JSON
63 lines
2.6 KiB
JSON
{
|
|
"title": "Chart Values",
|
|
"type": "object",
|
|
"properties": {
|
|
"host": {
|
|
"description": "The hostname used to access tenant services (defaults to using the tenant name as a subdomain for its parent tenant host).",
|
|
"type": "string",
|
|
"default": ""
|
|
},
|
|
"etcd": {
|
|
"description": "Deploy own Etcd cluster.",
|
|
"type": "boolean",
|
|
"default": false
|
|
},
|
|
"monitoring": {
|
|
"description": "Deploy own Monitoring Stack.",
|
|
"type": "boolean",
|
|
"default": false
|
|
},
|
|
"ingress": {
|
|
"description": "Deploy own Ingress Controller.",
|
|
"type": "boolean",
|
|
"default": false
|
|
},
|
|
"gateway": {
|
|
"description": "Deploy own Gateway API Gateway (backed by Cilium Gateway API controller). When unset (the default), the chart auto-enables the Gateway for tenants whose apex is derived from the parent (i.e. `host` is empty), and leaves it off for tenants with a custom non-derived apex. Set to `true` or `false` explicitly to override that auto-behaviour. Note: leave the key absent (do not write `gateway: null`) — the chart distinguishes \"unset\" via missing-key, not via null value, to satisfy the JSON schema generated from this comment.",
|
|
"type": "boolean"
|
|
},
|
|
"seaweedfs": {
|
|
"description": "Deploy own SeaweedFS.",
|
|
"type": "boolean",
|
|
"default": false
|
|
},
|
|
"computeplane": {
|
|
"description": "Deploy own ComputePlane — a single-tenant, Cozystack-managed cluster for untrusted-code applications. The tenant receives no admin kubeconfig for it. Automatic routing of catalog applications onto it (placement: ComputePlane) is a planned follow-up and is not available yet; until it lands, external catalogs target the cluster via its computeplane-cluster-admin-kubeconfig Secret. See design-proposals/compute-plane in cozystack/community.",
|
|
"type": "boolean",
|
|
"default": false
|
|
},
|
|
"schedulingClass": {
|
|
"description": "The name of a SchedulingClass CR to apply scheduling constraints for this tenant's workloads.",
|
|
"type": "string",
|
|
"default": ""
|
|
},
|
|
"resourceQuotas": {
|
|
"description": "Define resource quotas for the tenant.",
|
|
"type": "object",
|
|
"default": {},
|
|
"additionalProperties": {
|
|
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "string"
|
|
}
|
|
],
|
|
"x-kubernetes-int-or-string": true
|
|
}
|
|
}
|
|
}
|
|
}
|