mirror of
https://github.com/cozystack/cozystack.git
synced 2026-11-06 20:13:43 +09:00
Rewrite resourcesPreset values in every apps/* and extras/* chart from the legacy flat names to the new instance-type form, using the 1:1 mapping: nano -> t1.nano micro -> t1.micro small -> t1.small medium -> c1.small large -> c1.medium xlarge -> c1.large 2xlarge -> c1.xlarge Each affected values.yaml carries the canonical 47-value enum (40 instance-type names plus 7 legacy aliases) so the schema accepts both forms during the deprecation window. cozyvalues-gen regenerates the matching api/apps/v1alpha1/*/types.go kubebuilder enum and defaults, the chart values.schema.json, the README parameter table, and the ApplicationDefinition openAPISchema in packages/system/*-rd/cozyrds. Three hardcoded legacy literals in chart templates migrated: - packages/apps/harbor/templates/harbor.yaml:121 (portal) - packages/apps/opensearch/templates/opensearch.yaml:43 (dashboards) - packages/system/keycloak/templates/sts.yaml:115 (heap fallback) packages/apps/foundationdb/Makefile gains the missing hack/update-crd.sh call. Without it, every regen left foundationdb-rd cozyrds stale and new FoundationDB app CRs through cozystack-api were rejected at validation for any non-legacy resourcesPreset value. Every default-rendered chart produces identical CPU and memory to the value applied before the rename, courtesy of the legacy alias table in cozy-lib and the 1:1 default mapping. Co-authored-by: Matthieu ROBIN <matthieu@hidora.com> Signed-off-by: Aleksei Sviridkin <f@lex.la>
152 lines
4.1 KiB
YAML
152 lines
4.1 KiB
YAML
##
|
|
## @section Common parameters
|
|
##
|
|
|
|
## @typedef {struct} Resources - Explicit CPU and memory configuration for each OpenSearch node.
|
|
## @field {quantity} [cpu] - CPU available to each node.
|
|
## @field {quantity} [memory] - Memory (RAM) available to each node.
|
|
|
|
## @enum {string} ResourcesPreset - Default sizing preset.
|
|
## @value t1.nano
|
|
## @value t1.micro
|
|
## @value t1.small
|
|
## @value t1.medium
|
|
## @value t1.large
|
|
## @value t1.xlarge
|
|
## @value t1.2xlarge
|
|
## @value t1.4xlarge
|
|
## @value c1.nano
|
|
## @value c1.micro
|
|
## @value c1.small
|
|
## @value c1.medium
|
|
## @value c1.large
|
|
## @value c1.xlarge
|
|
## @value c1.2xlarge
|
|
## @value c1.4xlarge
|
|
## @value s1.nano
|
|
## @value s1.micro
|
|
## @value s1.small
|
|
## @value s1.medium
|
|
## @value s1.large
|
|
## @value s1.xlarge
|
|
## @value s1.2xlarge
|
|
## @value s1.4xlarge
|
|
## @value u1.nano
|
|
## @value u1.micro
|
|
## @value u1.small
|
|
## @value u1.medium
|
|
## @value u1.large
|
|
## @value u1.xlarge
|
|
## @value u1.2xlarge
|
|
## @value u1.4xlarge
|
|
## @value m1.nano
|
|
## @value m1.micro
|
|
## @value m1.small
|
|
## @value m1.medium
|
|
## @value m1.large
|
|
## @value m1.xlarge
|
|
## @value m1.2xlarge
|
|
## @value m1.4xlarge
|
|
## @value nano
|
|
## @value micro
|
|
## @value small
|
|
## @value medium
|
|
## @value large
|
|
## @value xlarge
|
|
## @value 2xlarge
|
|
|
|
## @param {int} replicas - Number of OpenSearch nodes in the cluster.
|
|
replicas: 3
|
|
|
|
## @param {Resources} [resources] - Explicit CPU and memory configuration for each OpenSearch node. When omitted, the preset defined in `resourcesPreset` is applied.
|
|
resources: {}
|
|
|
|
## @param {ResourcesPreset} resourcesPreset="c1.medium" - Default sizing preset used when `resources` is omitted. OpenSearch requires minimum 2Gi memory.
|
|
resourcesPreset: "c1.medium"
|
|
|
|
## @param {quantity} size - Persistent Volume Claim size available for application data.
|
|
size: 10Gi
|
|
|
|
## @param {string} storageClass - StorageClass used to store the data.
|
|
storageClass: ""
|
|
|
|
## @param {bool} external - Enable external access from outside the cluster.
|
|
external: false
|
|
|
|
## @enum {string} TopologySpreadPolicy - Pod distribution policy across nodes/zones.
|
|
## @value soft - Best-effort distribution (ScheduleAnyway) - pods may be scheduled on same node if needed
|
|
## @value hard - Strict distribution (DoNotSchedule) - pods will not schedule if spread cannot be achieved
|
|
|
|
## @param {TopologySpreadPolicy} topologySpreadPolicy="soft" - How strictly to enforce pod distribution across nodes and zones.
|
|
topologySpreadPolicy: "soft"
|
|
|
|
##
|
|
## @enum {string} Version
|
|
## @value v3
|
|
## @value v2
|
|
## @value v1
|
|
|
|
## @param {Version} version - OpenSearch major version to deploy.
|
|
version: v2
|
|
|
|
##
|
|
## @section Image configuration
|
|
##
|
|
|
|
## @typedef {struct} Images - Container image configuration.
|
|
## @field {string} opensearch - OpenSearch image.
|
|
|
|
## @param {Images} images - Container images used by the operator.
|
|
images:
|
|
opensearch: ""
|
|
|
|
##
|
|
## @section Node roles configuration
|
|
##
|
|
|
|
## @typedef {struct} NodeRoles - OpenSearch node roles.
|
|
## @field {bool} master - Enable cluster_manager role.
|
|
## @field {bool} data - Enable data role.
|
|
## @field {bool} ingest - Enable ingest role.
|
|
## @field {bool} ml - Enable machine learning role.
|
|
|
|
## @param {NodeRoles} nodeRoles - Node roles configuration.
|
|
nodeRoles:
|
|
master: true
|
|
data: true
|
|
ingest: true
|
|
ml: false
|
|
|
|
##
|
|
## @section Users configuration
|
|
##
|
|
|
|
## @typedef {struct} User - User configuration.
|
|
## @field {string} [password] - Password for the user (auto-generated if omitted).
|
|
## @field {[]string} roles - List of OpenSearch roles.
|
|
|
|
## @param {map[string]User} users - Custom OpenSearch users configuration map.
|
|
users: {}
|
|
## Example:
|
|
## users:
|
|
## myuser:
|
|
## roles:
|
|
## - all_access
|
|
|
|
##
|
|
## @section OpenSearch Dashboards configuration
|
|
##
|
|
|
|
## @typedef {struct} Dashboards - OpenSearch Dashboards deployment configuration.
|
|
## @field {bool} enabled - Enable OpenSearch Dashboards deployment.
|
|
## @field {int} replicas - Number of Dashboards replicas.
|
|
## @field {Resources} [resources] - Explicit CPU and memory configuration for Dashboards.
|
|
## @field {ResourcesPreset} resourcesPreset - Default sizing preset for Dashboards.
|
|
|
|
## @param {Dashboards} dashboards - OpenSearch Dashboards configuration.
|
|
dashboards:
|
|
enabled: false
|
|
replicas: 1
|
|
resources: {}
|
|
resourcesPreset: "c1.small"
|