mirror of
https://github.com/outbackdingo/cozystack.git
synced 2026-01-27 18:18:41 +00:00
248 lines
7.2 KiB
JSON
248 lines
7.2 KiB
JSON
{
|
|
"title": "Chart Values",
|
|
"type": "object",
|
|
"properties": {
|
|
"backup": {
|
|
"description": "Backup configuration",
|
|
"type": "object",
|
|
"default": {},
|
|
"properties": {
|
|
"destinationPath": {
|
|
"description": "Path to store the backup (i.e. s3://bucket/path/to/folder)",
|
|
"type": "string",
|
|
"default": "s3://bucket/path/to/folder/"
|
|
},
|
|
"enabled": {
|
|
"description": "Enable regular backups",
|
|
"type": "boolean",
|
|
"default": false
|
|
},
|
|
"endpointURL": {
|
|
"description": "S3 Endpoint used to upload data to the cloud",
|
|
"type": "string",
|
|
"default": "http://minio-gateway-service:9000"
|
|
},
|
|
"retentionPolicy": {
|
|
"description": "Retention policy",
|
|
"type": "string",
|
|
"default": "30d"
|
|
},
|
|
"s3AccessKey": {
|
|
"description": "Access key for S3, used for authentication",
|
|
"type": "string",
|
|
"default": "\u003cyour-access-key\u003e"
|
|
},
|
|
"s3SecretKey": {
|
|
"description": "Secret key for S3, used for authentication",
|
|
"type": "string",
|
|
"default": "\u003cyour-secret-key\u003e"
|
|
},
|
|
"schedule": {
|
|
"description": "Cron schedule for automated backups",
|
|
"type": "string",
|
|
"default": "0 2 * * * *"
|
|
}
|
|
}
|
|
},
|
|
"bootstrap": {
|
|
"description": "Bootstrap configuration",
|
|
"type": "object",
|
|
"default": {},
|
|
"required": [
|
|
"enabled",
|
|
"oldName"
|
|
],
|
|
"properties": {
|
|
"enabled": {
|
|
"description": "Restore database cluster from a backup",
|
|
"type": "boolean",
|
|
"default": false
|
|
},
|
|
"oldName": {
|
|
"description": "Name of database cluster before deleting",
|
|
"type": "string"
|
|
},
|
|
"recoveryTime": {
|
|
"description": "Timestamp (PITR) up to which recovery will proceed, expressed in RFC 3339 format. If left empty, will restore latest",
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"databases": {
|
|
"description": "Databases configuration",
|
|
"type": "object",
|
|
"default": {},
|
|
"additionalProperties": {
|
|
"type": "object",
|
|
"properties": {
|
|
"extensions": {
|
|
"description": "Extensions enabled for the database",
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"roles": {
|
|
"description": "Roles for the database",
|
|
"type": "object",
|
|
"properties": {
|
|
"admin": {
|
|
"description": "List of users with admin privileges",
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"readonly": {
|
|
"description": "List of users with read-only privileges",
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"external": {
|
|
"description": "Enable external access from outside the cluster",
|
|
"type": "boolean",
|
|
"default": false
|
|
},
|
|
"postgresql": {
|
|
"description": "PostgreSQL server configuration",
|
|
"type": "object",
|
|
"default": {},
|
|
"required": [
|
|
"parameters"
|
|
],
|
|
"properties": {
|
|
"parameters": {
|
|
"description": "PostgreSQL server parameters",
|
|
"type": "object",
|
|
"default": {},
|
|
"required": [
|
|
"max_connections"
|
|
],
|
|
"properties": {
|
|
"max_connections": {
|
|
"description": "Determines the maximum number of concurrent connections to the database server. The default is typically 100 connections",
|
|
"type": "integer",
|
|
"default": 100
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"quorum": {
|
|
"description": "Quorum configuration for synchronous replication",
|
|
"type": "object",
|
|
"default": {},
|
|
"required": [
|
|
"maxSyncReplicas",
|
|
"minSyncReplicas"
|
|
],
|
|
"properties": {
|
|
"maxSyncReplicas": {
|
|
"description": "Maximum number of synchronous replicas that can acknowledge a transaction (must be lower than the number of instances).",
|
|
"type": "integer",
|
|
"default": 0
|
|
},
|
|
"minSyncReplicas": {
|
|
"description": "Minimum number of synchronous replicas that must acknowledge a transaction before it is considered committed.",
|
|
"type": "integer",
|
|
"default": 0
|
|
}
|
|
}
|
|
},
|
|
"replicas": {
|
|
"description": "Number of Postgres replicas",
|
|
"type": "integer",
|
|
"default": 2
|
|
},
|
|
"resources": {
|
|
"description": "Explicit CPU and memory configuration for each PostgreSQL replica. When left empty, the preset defined in `resourcesPreset` is applied.",
|
|
"type": "object",
|
|
"default": {},
|
|
"properties": {
|
|
"cpu": {
|
|
"description": "CPU available to each replica",
|
|
"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
|
|
},
|
|
"memory": {
|
|
"description": "Memory (RAM) available to each replica",
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"resourcesPreset": {
|
|
"description": "Default sizing preset used when `resources` is omitted. Allowed values: `nano`, `micro`, `small`, `medium`, `large`, `xlarge`, `2xlarge`.",
|
|
"type": "string",
|
|
"default": "micro",
|
|
"enum": [
|
|
"nano",
|
|
"micro",
|
|
"small",
|
|
"medium",
|
|
"large",
|
|
"xlarge",
|
|
"2xlarge"
|
|
]
|
|
},
|
|
"size": {
|
|
"description": "Persistent Volume Claim size, available for application data",
|
|
"default": "10Gi",
|
|
"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
|
|
},
|
|
"storageClass": {
|
|
"description": "StorageClass used to store the data",
|
|
"type": "string"
|
|
},
|
|
"users": {
|
|
"description": "Users configuration",
|
|
"type": "object",
|
|
"default": {},
|
|
"additionalProperties": {
|
|
"type": "object",
|
|
"properties": {
|
|
"password": {
|
|
"description": "Password for the user",
|
|
"type": "string"
|
|
},
|
|
"replication": {
|
|
"description": "Whether the user has replication privileges",
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} |