Files
chart/library/ix-dev/community/linkding/questions.yaml
Stavros Kois 30dba18b12 Add linkding to community train (#1582)
* initial commit

* add templates and values

* whops

* remove caps

* metadata + read me

* add more tests

* add questions and validation

* add group
2023-09-28 17:58:28 +03:00

388 lines
14 KiB
YAML

groups:
- name: Linkding Configuration
description: Configure Linkding
- name: Network Configuration
description: Configure Network for Linkding
- name: User and Group Configuration
description: Configure User and Group for Linkding
- name: Storage Configuration
description: Configure Storage for Linkding
- name: Resources Configuration
description: Configure Resources for Linkding
portals:
web_portal:
protocols:
- "$kubernetes-resource_configmap_portal_protocol"
host:
- "$kubernetes-resource_configmap_portal_host"
ports:
- "$kubernetes-resource_configmap_portal_port"
path: "$kubernetes-resource_configmap_portal_path"
questions:
- variable: linkdingConfig
label: ""
group: Linkding Configuration
schema:
type: dict
attrs:
- variable: username
label: Username
description: |
The username for Linkding. </br>
It creates a superuser if it doesn't exist.</br>
Leaving this empty will disable authentication.
schema:
type: string
default: ""
- variable: password
label: Password
description: |
The password for Linkding.</br>
It creates a superuser if it doesn't exist.</br>
Leaving this empty will disable authentication.
schema:
type: string
show_if: [["username", "!=", ""]]
default: ""
private: true
- variable: disableBackgroundTasks
label: Disable Background Tasks
description: |
Disables background tasks, such as creating snapshots for bookmarks
on the the Internet Archive Wayback Machine.
schema:
type: boolean
default: false
- variable: disableUrlValidation
label: Disable URL Validation
description: |
Completely disables URL validation for bookmarks.
This can be useful if you intend to store non fully qualified
domain name URLs, such as network paths, or you want to store
URLs that use another protocol than http or https.
schema:
type: boolean
default: false
- variable: enableAuthProxy
label: Enable Auth Proxy
description: |
Enable authentication proxy. </br>
This will disable the built-in authentication and use the
authentication proxy instead.
schema:
type: boolean
default: false
- variable: authProxyUsernameHeader
label: Auth Proxy Username Header
description: |
The HTTP header that contains the username for the authentication
proxy.
schema:
type: string
show_if: [["enableAuthProxy", "=", true]]
default: ""
required: true
- variable: authProxyLogoutUrl
label: Auth Proxy Logout URL
description: |
The URL to redirect to when logging out of the authentication proxy.
schema:
type: string
show_if: [["enableAuthProxy", "=", true]]
default: ""
- variable: csrfTrustedOrigins
label: CSRF Trusted Origins
description: |
A list of origins that are allowed to bypass the CSRF protection.
schema:
type: list
default: []
items:
- variable: origin
label: Origin
schema:
type: string
required: true
- variable: additionalEnvs
label: Additional Environment Variables
description: Configure additional environment variables for Linkding.
schema:
type: list
default: []
items:
- variable: env
label: Environment Variable
schema:
type: dict
attrs:
- variable: name
label: Name
schema:
type: string
required: true
- variable: value
label: Value
schema:
type: string
required: true
- variable: linkdingNetwork
label: ""
group: Network Configuration
schema:
type: dict
attrs:
- variable: webPort
label: Web Port
description: The port for the Linkding Web UI.
schema:
type: int
default: 30083
min: 9000
max: 65535
required: true
- variable: hostNetwork
label: Host Network
description: |
Bind to the host network. It's recommended to keep this disabled.</br>
schema:
type: boolean
default: false
- variable: linkdingRunAs
label: ""
group: User and Group Configuration
schema:
type: dict
attrs:
- variable: user
label: User ID
description: The user id that Linkding will run as.
schema:
type: int
min: 2
default: 568
required: true
- variable: group
label: Group ID
description: The group id that Linkding will run as.
schema:
type: int
min: 2
default: 568
required: true
- variable: linkdingStorage
label: ""
group: Storage Configuration
schema:
type: dict
attrs:
- variable: data
label: Linkding Data Storage
description: The path to store Linkding Data.
schema:
type: dict
attrs:
- variable: type
label: Type
description: |
ixVolume: Is dataset created automatically by the system.</br>
Host Path: Is a path that already exists on the system.
schema:
type: string
required: true
default: "ixVolume"
enum:
- value: "hostPath"
description: Host Path (Path that already exists on the system)
- value: "ixVolume"
description: ixVolume (Dataset created automatically by the system)
- variable: datasetName
label: Dataset Name
schema:
type: string
show_if: [["type", "=", "ixVolume"]]
required: true
hidden: true
immutable: true
default: "data"
$ref:
- "normalize/ixVolume"
- variable: hostPath
label: Host Path
schema:
type: hostpath
show_if: [["type", "=", "hostPath"]]
immutable: true
required: true
- variable: pgData
label: Postgres Data Storage
description: The path to store Postgres Data.
schema:
type: dict
attrs:
- variable: type
label: Type
description: |
ixVolume: Is dataset created automatically by the system.</br>
Host Path: Is a path that already exists on the system.
schema:
type: string
required: true
default: "ixVolume"
enum:
- value: "hostPath"
description: Host Path (Path that already exists on the system)
- value: "ixVolume"
description: ixVolume (Dataset created automatically by the system)
- variable: datasetName
label: Dataset Name
schema:
type: string
show_if: [["type", "=", "ixVolume"]]
required: true
hidden: true
immutable: true
default: "pgData"
$ref:
- "normalize/ixVolume"
- variable: hostPath
label: Host Path
schema:
type: hostpath
show_if: [["type", "=", "hostPath"]]
immutable: true
required: true
- variable: pgBackup
label: Postgres Backup Storage
description: The path to store Postgres Backup.
schema:
type: dict
attrs:
- variable: type
label: Type
description: |
ixVolume: Is dataset created automatically by the system.</br>
Host Path: Is a path that already exists on the system.
schema:
type: string
required: true
default: "ixVolume"
enum:
- value: "hostPath"
description: Host Path (Path that already exists on the system)
- value: "ixVolume"
description: ixVolume (Dataset created automatically by the system)
- variable: datasetName
label: Dataset Name
schema:
type: string
show_if: [["type", "=", "ixVolume"]]
required: true
hidden: true
immutable: true
default: "pgBackup"
$ref:
- "normalize/ixVolume"
- variable: hostPath
label: Host Path
schema:
type: hostpath
show_if: [["type", "=", "hostPath"]]
immutable: true
required: true
- variable: additionalStorages
label: Additional Storage
description: Additional storage for Linkding.
schema:
type: list
default: []
items:
- variable: storageEntry
label: Storage Entry
schema:
type: dict
attrs:
- variable: type
label: Type
description: |
ixVolume: Is dataset created automatically by the system.</br>
Host Path: Is a path that already exists on the system.
schema:
type: string
required: true
default: "ixVolume"
enum:
- value: "hostPath"
description: Host Path (Path that already exists on the system)
- value: "ixVolume"
description: ixVolume (Dataset created automatically by the system)
- variable: mountPath
label: Mount Path
description: The path inside the container to mount the storage.
schema:
type: path
required: true
- variable: hostPath
label: Host Path
description: The host path to use for storage.
schema:
type: hostpath
show_if: [["type", "=", "hostPath"]]
required: true
- variable: datasetName
label: Dataset Name
description: The name of the dataset to use for storage.
schema:
type: string
show_if: [["type", "=", "ixVolume"]]
required: true
immutable: true
default: "storage_entry"
$ref:
- "normalize/ixVolume"
- variable: resources
group: Resources Configuration
label: ""
schema:
type: dict
attrs:
- variable: limits
label: Limits
schema:
type: dict
attrs:
- variable: cpu
label: CPU
description: CPU limit for Linkding.
schema:
type: string
max_length: 6
valid_chars: '^(0\.[1-9]|[1-9][0-9]*)(\.[0-9]|m?)$'
valid_chars_error: |
Valid CPU limit formats are</br>
- Plain Integer - eg. 1</br>
- Float - eg. 0.5</br>
- Milicpu - eg. 500m
default: "4000m"
required: true
- variable: memory
label: Memory
description: Memory limit for Linkding.
schema:
type: string
max_length: 12
valid_chars: '^[1-9][0-9]*([EPTGMK]i?|e[0-9]+)?$'
valid_chars_error: |
Valid Memory limit formats are</br>
- Suffixed with E/P/T/G/M/K - eg. 1G</br>
- Suffixed with Ei/Pi/Ti/Gi/Mi/Ki - eg. 1Gi</br>
- Plain Integer in bytes - eg. 1024</br>
- Exponent - eg. 134e6
default: "8Gi"
required: true