feat(Joplin-Server): Add Email config for users (#4036)

* feat(Joplin-Server): Add Email config for users

* Update charts/stable/joplin-server/questions.yaml

Signed-off-by: Stavros Kois <47820033+stavros-k@users.noreply.github.com>

* Apply suggestions from code review

Signed-off-by: Stavros Kois <47820033+stavros-k@users.noreply.github.com>

* update questions

* fix catalog

* fix

Signed-off-by: Stavros Kois <47820033+stavros-k@users.noreply.github.com>
Co-authored-by: Stavros Kois <47820033+stavros-k@users.noreply.github.com>
This commit is contained in:
StevenMcElligott 2022-10-08 16:47:28 -04:00 committed by GitHub
parent 154fdd27e1
commit dd91adfe27
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 91 additions and 25 deletions

View File

@ -2,7 +2,7 @@ apiVersion: v2
appVersion: "2.7.4" appVersion: "2.7.4"
description: This server allows you to sync any Joplin client description: This server allows you to sync any Joplin client
name: joplin-server name: joplin-server
version: 8.0.42 version: 8.1.0
kubeVersion: ">=1.16.0-0" kubeVersion: ">=1.16.0-0"
keywords: keywords:
- joplin - joplin

View File

@ -13,24 +13,82 @@ questions:
# Include{controllerExpert} # Include{controllerExpert}
# Include{controllerExpertExtraArgs} # Include{controllerExpertExtraArgs}
- variable: env - variable: env
group: "Container Configuration" group: Container Configuration
label: "Image Environment" label: Image Environment
schema: schema:
additional_attrs: true additional_attrs: true
type: dict type: dict
attrs: attrs:
- variable: APP_BASE_URL - variable: APP_BASE_URL
label: "APP_BASE_URL" label: APP_BASE_URL
description: "Sets the APP_BASE_URL env var" description: Sets the APP_BASE_URL env var
schema: schema:
type: string type: string
required: true required: true
default: "" default: ""
- variable: MAILER_ENABLED
label: MAILER_ENABLED
description: Set 1 to enabled and 0 to disable
schema:
type: int
min: 0
max: 1
default: 0
- variable: MAILER_HOST
label: Mailer Host
description: Sets the MAILER_HOST env var, eg smtp.example.com
schema:
show_if: [["MAILER_ENABLED", "=", "1"]]
type: string
default: ""
- variable: MAILER_PORT
label: Mailer Port
description: Sets the MAILER_PORT env var, eg SMTP PORT 465
schema:
show_if: [["MAILER_ENABLED", "=", "1"]]
type: int
default: 465
- variable: MAILER_SECURE
label: Mailer Secure
description: Sets the MAILER_SECURE env var, HTTPS for the smtp
schema:
show_if: [["MAILER_ENABLED", "=", "1"]]
type: boolean
default: true
- variable: MAILER_AUTH_USER
label: Mailer Auth User
description: Sets the MAILER_AUTH_USER env var, username for Email server
schema:
show_if: [["MAILER_ENABLED", "=", "1"]]
type: string
default: ""
- variable: MAILER_AUTH_PASSWORD
label: Mailer Auth Password
description: Sets the MAILER_AUTH_PASSWORD env var, password for Email server
schema:
show_if: [["MAILER_ENABLED", "=", "1"]]
type: string
private: true
default: ""
- variable: MAILER_NOREPLY_NAME
label: Mailer No Reply Name
description: Sets the MAILER_NOREPLY_NAME env var, No Reply email name
schema:
show_if: [["MAILER_ENABLED", "=", "1"]]
type: string
default: ""
- variable: MAILER_NOREPLY_EMAIL
label: Mailer No Reply Email
description: Sets the MAILER_NOREPLY_EMAIL env var, No Reply default email
schema:
show_if: [["MAILER_ENABLED", "=", "1"]]
type: string
default: ""
# Include{containerConfig} # Include{containerConfig}
# Include{serviceRoot} # Include{serviceRoot}
- variable: main - variable: main
label: "Main Service" label: Main Service
description: "The Primary service on which the healthcheck runs, often the webUI" description: The Primary service on which the healthcheck runs, often the webUI
schema: schema:
additional_attrs: true additional_attrs: true
type: dict type: dict
@ -38,22 +96,22 @@ questions:
# Include{serviceSelectorLoadBalancer} # Include{serviceSelectorLoadBalancer}
# Include{serviceSelectorExtras} # Include{serviceSelectorExtras}
- variable: main - variable: main
label: "Main Service Port Configuration" label: Main Service Port Configuration
schema: schema:
additional_attrs: true additional_attrs: true
type: dict type: dict
attrs: attrs:
- variable: port - variable: port
label: "Port" label: Port
description: "This port exposes the container port on the service" description: This port exposes the container port on the service
schema: schema:
type: int type: int
default: 22300 default: 22300
required: true required: true
# Include{advancedPortHTTP} # Include{advancedPortHTTP}
- variable: targetPort - variable: targetPort
label: "Target Port" label: Target Port
description: "The internal(!) port on the container the Application runs on" description: The internal(!) port on the container the Application runs on
schema: schema:
type: int type: int
default: 22300 default: 22300
@ -63,8 +121,8 @@ questions:
# Include{serviceList} # Include{serviceList}
# Include{persistenceRoot} # Include{persistenceRoot}
- variable: config - variable: config
label: "App Config Storage" label: App Config Storage
description: "Stores the Application Configuration." description: Stores the Application Configuration.
schema: schema:
additional_attrs: true additional_attrs: true
type: dict type: dict
@ -74,7 +132,7 @@ questions:
# Include{persistenceList} # Include{persistenceList}
# Include{ingressRoot} # Include{ingressRoot}
- variable: main - variable: main
label: "Main Ingress" label: Main Ingress
schema: schema:
additional_attrs: true additional_attrs: true
type: dict type: dict
@ -87,42 +145,42 @@ questions:
# Include{security} # Include{security}
# Include{securityContextAdvancedRoot} # Include{securityContextAdvancedRoot}
- variable: privileged - variable: privileged
label: "Privileged mode" label: Privileged mode
schema: schema:
type: boolean type: boolean
default: false default: false
- variable: readOnlyRootFilesystem - variable: readOnlyRootFilesystem
label: "ReadOnly Root Filesystem" label: ReadOnly Root Filesystem
schema: schema:
type: boolean type: boolean
default: false default: false
- variable: allowPrivilegeEscalation - variable: allowPrivilegeEscalation
label: "Allow Privilege Escalation" label: Allow Privilege Escalation
schema: schema:
type: boolean type: boolean
default: false default: false
- variable: runAsNonRoot - variable: runAsNonRoot
label: "runAsNonRoot" label: runAsNonRoot
schema: schema:
type: boolean type: boolean
default: false default: false
# Include{securityContextAdvanced} # Include{securityContextAdvanced}
# Include{podSecurityContextRoot} # Include{podSecurityContextRoot}
- variable: runAsUser - variable: runAsUser
label: "runAsUser" label: runAsUser
description: "The UserID of the user running the application" description: The UserID of the user running the application
schema: schema:
type: int type: int
default: 0 default: 0
- variable: runAsGroup - variable: runAsGroup
label: "runAsGroup" label: runAsGroup
description: "The groupID this App of the user running the application" description: The groupID this App of the user running the application
schema: schema:
type: int type: int
default: 0 default: 0
- variable: fsGroup - variable: fsGroup
label: "fsGroup" label: fsGroup
description: "The group that should own ALL storage." description: The group that should own ALL storage.
schema: schema:
type: int type: int
default: 568 default: 568

View File

@ -26,6 +26,14 @@ env:
secretKeyRef: secretKeyRef:
name: dbcreds name: dbcreds
key: plainhost key: plainhost
MAILER_ENABLED: 0
MAILER_HOST: ""
MAILER_PORT: 465
MAILER_SECURE: true
MAILER_AUTH_USER: ""
MAILER_AUTH_PASSWORD: ""
MAILER_NOREPLY_NAME: ""
MAILER_NOREPLY_EMAIL: ""
probes: probes:
liveness: liveness: