diff --git a/test/collabora/1.0.0/questions.yaml b/test/collabora/1.0.0/questions.yaml index ee37b82e23..d5d6a87efd 100644 --- a/test/collabora/1.0.0/questions.yaml +++ b/test/collabora/1.0.0/questions.yaml @@ -1,4 +1,6 @@ groups: + - name: "Collabora Configuration" + description: "Configure Collabora" - name: "Storage" description: "Configure Storage for Collabora" - name: "Collabora Environment Variables" @@ -15,6 +17,71 @@ portals: path: "/loleaflet/dist/admin/admin.html" questions: + - variable: config + label: "Container Configuration" + group: "Collabora Configuration" + schema: + type: dict + attrs: + - variable: timezone + label: "Timezone" + group: "Collabora Configuration" + schema: + type: string + $ref: + - "definitions/timezone" + - variable: domain + label: "Domain(s) using collabora" + description: 'Use backslash "\" before dots ".". Use pipe "|" to separate multiple domains' + schema: + type: string + default: 'nextcloud\.domain\.tld|othernextcloud\.domain\.tld' + valid_chars: '^([a-z]{1,}\\{1}\.{1}[a-z]{1,}\\{1}\.{1}[a-z]{1,}\|{0,1})*$' + 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: "" + valid_chars: "[a-zA-Z0-9!@#$%^&*?]{8,}" + 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: DONT_GEN_SSL_CERT + label: "DONT_GEN_SSL_CERT" + description: "When set to true it does NOT generate an SSL cert, you have to use your own" + schema: + type: string + default: "true" + enum: + - value: "true" + description: "true" + - value: "" + description: "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: '' + valid_chars: '^[a-z]{1,}\\{1}\.{1}[a-z]{1,}\\{1}\.{1}[a-z]{1,}$' + - variable: extraAppVolumeMounts label: "Collabora Extra Host Path Volumes" group: "Storage" @@ -41,7 +108,7 @@ questions: required: true - variable: environmentVariables - label: "Environment Variables for Collabora" + label: "Environment Variables" group: "Collabora Environment Variables" schema: type: list diff --git a/test/collabora/1.0.0/templates/deployment.yaml b/test/collabora/1.0.0/templates/deployment.yaml index 76aba05b07..20ed92ecd6 100644 --- a/test/collabora/1.0.0/templates/deployment.yaml +++ b/test/collabora/1.0.0/templates/deployment.yaml @@ -28,8 +28,15 @@ spec: protocol: TCP containerPort: 9980 {{ $envList := (default list .Values.environmentVariables) }} - {{ $envList = mustAppend $envList (dict "name" "keys" "value" "/plots/keyfile") }} - {{ $envList = mustAppend $envList (dict "name" "farmr" "value" $.Values.farmr_env) }} + {{ $envConfig := .Values.config }} + {{ $envList = mustAppend $envList (dict "name" "timezone" "value" $envConfig.timezone) }} + {{ $envList = mustAppend $envList (dict "name" "domain" "value" $envConfig.domain) }} + {{ $envList = mustAppend $envList (dict "name" "username" "value" $envConfig.username) }} + {{ $envList = mustAppend $envList (dict "name" "password" "value" $envConfig.password) }} + {{ $envList = mustAppend $envList (dict "name" "dictionaries" "value" $envConfig.dictionaries) }} + {{ $envList = mustAppend $envList (dict "name" "extra_params" "value" $envConfig.extra_params) }} + {{ $envList = mustAppend $envList (dict "name" "DONT_GEN_SSL_CERT" "value" $envConfig.DONT_GEN_SSL_CERT) }} + {{ $envList = mustAppend $envList (dict "name" "server_name" "value" $envConfig.server_name) }} {{ include "common.containers.allEnvironmentVariables" (dict "environmentVariables" $envList) | nindent 10 }} {{ if .Values.extraAppVolumeMounts }} volumes: diff --git a/test/collabora/1.0.0/test_values.yaml b/test/collabora/1.0.0/test_values.yaml index f31037979d..99815d7405 100644 --- a/test/collabora/1.0.0/test_values.yaml +++ b/test/collabora/1.0.0/test_values.yaml @@ -1,13 +1,15 @@ -appVolumeMounts: - data: - emptyDir: true - mountPath: /data - staging: - emptyDir: true - mountPath: /plots image: pullPolicy: IfNotPresent repository: collabora/code tag: 6.4.10.10 updateStrategy: Recreate +config: + timezone: "America/Los_Angeles" + domain: "somedomain" + username: "admin" + password: "changeme" + dictionaries: "de_DE en_GB en_US es_ES fr_FR it nl pt_BR pt_PT ru" + extra_params: "--o:welcome.enable=false --o:user_interface.mode=notebookbar --o:ssl.termination=true --o:ssl.enable=false" + DONT_GEN_SSL_CERT: "true" + server_name: "collabora"