TrueChartsClone/charts/stable/collabora-online/SCALE/questions.yaml

310 lines
11 KiB
YAML
Raw Normal View History

groups:
- name: "Container Image"
description: "Image to be used for container"
- name: "Workload Configuration"
description: "Configure workload deployment"
- name: "Configuration"
description: "additional container configuration"
- name: "Networking"
description: "Configure Network and Services for container"
- name: "Storage"
description: "Persist and share data that is separate from the lifecycle of the container"
2021-04-15 21:30:44 +00:00
- name: "Resources and Devices"
description: "Specify resources/devices to be allocated to workload"
- name: "Ingress Configuration"
description: "Ingress Configuration"
- name: "Security"
description: "Configure security context"
- name: "Advanced"
description: "Advanced Configuration"
- name: "WARNING"
description: "WARNING"
portals:
web_portal:
protocols:
- "$kubernetes-resource_configmap_portal_protocol"
host:
- "$kubernetes-resource_configmap_portal_host"
ports:
- "$kubernetes-resource_configmap_portal_port"
path: "/loleaflet/dist/admin/admin.html"
questions:
- variable: portal
group: "Container Image"
label: "Configure Portal Button"
schema:
type: dict
hidden: true
attrs:
- variable: enabled
label: "Enable"
description: "enable the portal button"
schema:
hidden: true
editable: false
type: boolean
default: true
# Update Policy
- variable: strategyType
group: "Container Image"
label: "Update Strategy"
schema:
type: string
default: "Recreate"
enum:
- value: "RollingUpdate"
description: "Create new pods and then kill old ones"
- value: "Recreate"
description: "Kill existing pods before creating new ones"
- variable: env
group: "Configuration"
label: "Image Environment"
schema:
type: dict
attrs:
- variable: TZ
label: "Timezone"
schema:
type: string
default: "Etc/UTC"
$ref:
- "definitions/timezone"
- variable: domain
label: "Domains will be using collabora"
description: 'Use backslash "\" before dots ".". Use pipe "|" to separate multiple domains'
schema:
type: string
default: 'nextcloud\.domain\.tld|othernextcloud\.domain\.tld'
required: true
- variable: username
label: "Username for WebUI"
schema:
type: string
default: "admin"
required: true
- variable: password
label: "Password for WebUI"
schema:
type: string
private: true
default: ""
required: true
- variable: dictionaries
label: "Dictionaries to use, leave empty to use all"
schema:
type: string
default: "de_DE en_GB en_US es_ES fr_FR it nl pt_BR pt_PT ru"
- variable: extra_params
label: "Extra Parameters to add"
description: 'e.g. "o:welcome.enable=false", See more on /etc/loolwsd/loowsd.xml. Separate params with space'
schema:
type: string
default: "-o:welcome.enable=false -o:user_interface.mode=notebookbar -o:ssl.termination=true -o:ssl.enable=false"
- variable: server_name
label: "Server Name"
description: "When this environment variable is set (is not “”), then its value will be used as server name in /etc/loolwsd/loolwsd.xml. Without this, CODE is not delivering a correct host for the websocket connection in case of a proxy in front of it."
schema:
type: string
default: 'collabora\.domain\.tld'
# Configure Enviroment Variables
- variable: envList
label: "Image environment"
group: "Configuration"
schema:
type: list
default: []
items:
- variable: envItem
label: "Environment Variable"
schema:
type: dict
attrs:
- variable: name
label: "Name"
schema:
type: string
- variable: value
label: "Value"
schema:
type: string
# Enable Host Networking
- variable: hostNetwork
group: "Networking"
label: "Enable Host Networking"
schema:
type: boolean
default: false
- variable: service
group: "Networking"
label: "Configure Service(s)"
schema:
type: dict
attrs:
- variable: main
label: "Main Service"
description: "The Primary service on which the healthcheck runs, often the webUI"
schema:
type: dict
attrs:
- variable: enabled
label: "Enable the service"
schema:
type: boolean
default: true
hidden: true
- variable: type
label: "Service Type"
description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer"
schema:
type: string
default: "NodePort"
enum:
- value: "NodePort"
description: "NodePort"
- value: "ClusterIP"
description: "ClusterIP"
- value: "LoadBalancer"
description: "LoadBalancer"
- variable: loadBalancerIP
label: "LoadBalancer IP"
description: "LoadBalancerIP"
schema:
show_if: [["type", "=", "LoadBalancer"]]
type: string
default: ""
- variable: externalIPs
label: "External IP's"
description: "External IP's"
schema:
show_if: [["type", "=", "LoadBalancer"]]
type: list
default: []
items:
- variable: externalIP
label: "External IP"
schema:
type: string
- variable: ports
label: "Service's Port(s) Configuration"
schema:
type: dict
attrs:
- variable: main
label: "Main Service Port Configuration"
schema:
type: dict
attrs:
- variable: protocol
label: "Port Type"
schema:
type: string
default: "HTTP"
hidden: false
enum:
- value: HTTP
description: "HTTP"
- value: "HTTPS"
description: "HTTPS"
- value: TCP
description: "TCP"
- value: "UDP"
description: "UDP"
- variable: port
label: "Container Port"
schema:
type: int
default: 9980
editable: false
hidden: true
- variable: targetport
label: "Target Port"
description: "This port exposes the container port on the service"
schema:
type: int
default: 9980
editable: true
hidden: false
required: true
- variable: nodePort
label: "Node Port (Optional)"
description: "This port gets exposed to the node. Only considered when service type is NodePort"
schema:
type: int
min: 9000
max: 65535
default: 36004
required: true
# Reverse Proxy
- variable: hostPathMounts
label: "Custom app storage"
group: "Storage"
schema:
type: list
default: []
items:
- variable: volumeMount
label: "Custom Storage"
schema:
type: dict
attrs:
- variable: enabled
label: "Enabled"
schema:
type: boolean
default: true
required: true
hidden: true
editable: false
- variable: setPermissions
label: "Automatic Permissions"
description: "Automatically set permissions on install"
schema:
type: boolean
default: true
hidden: false
- variable: readOnly
label: "Mount as ReadOnly"
description: "prevent any write from being done to the mounted volume"
schema:
type: boolean
default: false
hidden: false
- variable: emptyDir
label: "EmptyDir Volume"
schema:
type: dict
hidden: false
attrs:
- variable: enabled
label: "Use emptyDir volume"
schema:
type: boolean
default: false
hidden: false
show_subquestions_if: true
subquestions:
- variable: medium
label: "EmptyDir Medium"
schema:
type: string
default: ""
enum:
- value: ""
description: "Default"
- value: "Memory"
description: "Memory"
- variable: mountPath
label: "Mount Path"
description: "Path to mount inside the pod"
schema:
type: path
required: true
default: ""
editable: true
- variable: hostPath
label: "Host Path"
description: "Path on the host to mount inside the container, ignored when emptyDir is enabled"
schema:
type: hostpath
required: true