groups:
- name: Image
description: |
Configured the images to be used for the Chart.
It's wise to use "digest pinned" tags and to avoid using "latest".
Checkout the following documentation for more information:
- https://truecharts.org/common/#images
- name: General
description: |
For TrueNAS SCALE We've grouped a number of settings here, that all effact how apps run in general.
Checkout the following documentation for more information:
- https://truecharts.org/common/global/
- https://truecharts.org/common/#tz
- https://truecharts.org/common/podoptions/
- Image Pull Secrets
- name: Workload
description: |
These settings configure how the actual Pods and containers are running.
Generally, on SCALE, we only expose a limited subset of these settings for the primary workload and container.
Checkout the following documentation for more information:
- https://truecharts.org/common/workload/
- https://truecharts.org/common/container/
- name: App Configuration
description: |
Every application has different values that may be required to run or have multiple options that the user may choose to enable or disable to change the behavior of the application.
Most options should have a Tooltip (Circled Question Mark) to further describe said option.
To find more information, lookup your chart-specific documentation in the Charts List: https://truecharts.org/charts/description-list/
- name: Services
description: |
Service and Networking options for any applications are contained here.
Some applications may have complicated networking setups with multiple options or some may have no options here at all.
Options here include the service and port configurations for the application, and more may be enabled or changed under the Advanced Settings and Show Expert Config boxes.
Checkout the following documentation for more information:
- https://truecharts.org/common/service/
- name: Networking
description: |
Contains advanced networking options that are not actively supported by the TrueCharts team.
Currently only contains scaleExternalInterfaces.
Checkout the following documentation for more information:
- https://truecharts.org/common/scaleexternalinterface/
- name: Persistence
description: |
Many applications will have certain options for storage to be configurable by the user, the main two being PVC and hostpath but may include other types.
This storage is called Persistence since it is not deleted upon restart or upgrade of an application.
Checkout the following documentation for more information:
- https://truecharts.org/common/persistence/
- https://truecharts.org/scale/guides/nfs-share/
- https://truecharts.org/general/faq/#why-pvc-is-recommended-over-hostpath
- name: Ingress
description: |
Ingress (more commonly known as Reverse Proxy) settings can be configured here. This is how Kubernetes connects your Applications in containers to FQDNs (fully qualified domain names).
If you choose to enable this you must have a "Ingress Provider" aka "Reverse Proxy" installed (We highly advice Traefik: https://truecharts.org/charts/premium/traefik/)
It also requiresa DNS service to actually resolve the DNS name of the FQDN specified.
Checkout the following documentation for more information:
- https://truecharts.org/common/ingress/
- name: SecurityContext
description: |
The security settings for each application and/or permissions that each application may have for the files/directories created.
Each application will come with predefined permissions but users may want to change certain setting depending on their usage or capabilities.
Unless necessary users are advised to keep this section mostly to defaults.
Checkout the following documentation for more information:
- https://truecharts.org/common/securitycontext/
- name: Resources
description: |
Resources limits that have been defined by each application are in this section.
Most will have a specific default that some users may want to change based on their specific hardware or needs.
This also contains the options to mount GPUs or, more precisely, "request" GPU's to be mounted.
Checkout the following documentation for more information:
- https://truecharts.org/common/resources/
- name: Devices
description: |
These are special "mountpoints" that can be used to mount miscelanious USB and PCI devices using special hostPath mounts.
For clearity we've decided to seperate this from persistence on SCALE.
Checkout the following documentation for more information:
- https://truecharts.org/common/persistence/device/
- https://truecharts.org/scale/guides/pci-passthrough/
- name: Middlewares
description: Traefik Middlewares
- name: StorageClass
description: |
StorageClasses define where to storage Storage.
Checkout the following documentation for more information:
- name: Metrics
description: |
Contains options to configure Prometheus metrics for the application.
Checkout the following documentation for more information:
- https://truecharts.org/common/metrics/
- name: Addons
description: |
Addons that are supplied by the TrueCharts team to add additional capabilities for users to use on top of the application’s defaults.
Things included here are VPN addons, Codeserver for editing files inside the application’s container, Netshoot for network troubelshooting, etc.
Generally not required for use but may be necessary or usefull at times for specific applications.
Checkout the following documentation for more information:
- https://truecharts.org/common/addons/
- https://truecharts.org/scale/guides/vpn-setup/
- name: Experimental
description: |
Experimental Configuration Options
Often these are not fully flushed-out, could randomly break or might not work at-all.
- name: Postgresql
description: |
For Postgresql we use "CloudNative-PG" as a backend, which has to be installed first.
Checkout the following documentation for more information:
- https://truecharts.org/common/cnpg/
- https://truecharts.org/scale/guides/sql-export/
- https://truecharts.org/scale/guides/recover-cnpg/
- name: Dependencies
description: |
contains dependency setting for which we, currently, do not have seperate catagories (yet)
- name: Documentation
description: |
We added this section to make everyone aware that OpenSource isn't always easy.
It doesn't keep existing without signficant ongoing support, so please consider supporting TrueCharts and other OpenSource projects.
Before installing, be sure you've followed the https://truecharts.org/scale/guides/getting-started/
We would also advice going over our https://truecharts.org/scale/guides/scale-intro/
and many of the other documentation pages...
portals:
open:
protocols:
- "$kubernetes-resource_configmap_tcportal-open_protocol"
host:
- "$kubernetes-resource_configmap_tcportal-open_host"
ports:
- "$kubernetes-resource_configmap_tcportal-open_port"
questions:
- variable: global
group: General
label: "Global Settings"
schema:
additional_attrs: true
type: dict
attrs:
- variable: stopAll
label: Stop All
description: "Stops All Running pods and hibernates cnpg"
schema:
type: boolean
default: false
- variable: credentialsList
group: General
label: "Credentials (Experimental)"
schema:
type: list
default: []
items:
- variable: credentialsEntry
label: "Enter Credentials"
schema:
additional_attrs: true
type: dict
attrs:
- variable: name
label: Name
description: "Name"
schema:
type: string
required: true
default: ""
- variable: type
label: Type
description: "Type of Credential"
schema:
type: string
default: "s3"
enum:
- value: s3
description: s3 Storage
- variable: url
label: "url"
schema:
type: string
default: ""
required: true
- variable: path
label: "path"
description: "Path Prefix not needed for most cases"
schema:
type: string
default: ""
- variable: region
label: "region"
description: "region is primarily for AWS not needed for most cases"
schema:
show_if: [["type", "=", "s3"]]
type: string
default: ""
- variable: bucket
label: "bucket"
schema:
show_if: [["type", "=", "s3"]]
type: string
default: ""
required: true
- variable: accessKey
label: "accessKey"
schema:
show_if: [["type", "=", "s3"]]
type: string
default: ""
required: true
- variable: secretKey
label: "secretKey"
schema:
show_if: [["type", "=", "s3"]]
type: string
default: ""
required: true
- variable: encrKey
label: "encrKey"
description: "The Encryption key is needed for tools like volsync if not needed it will be ignored"
schema:
show_if: [["type", "=", "s3"]]
type: string
default: "MYSECRETPASSPHRASE"
required: true
- variable: workload
group: "Workload"
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: main
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: type
label: Type (Advanced)
schema:
type: string
default: Deployment
enum:
- value: Deployment
description: Deployment
- value: DaemonSet
description: DaemonSet
- variable: replicas
label: Replicas (Advanced)
description: Set the number of Replicas
schema:
type: int
show_if: [["type", "!=", "DaemonSet"]]
default: 1
- variable: podSpec
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: containers
label: Containers
schema:
additional_attrs: true
type: dict
attrs:
- variable: main
label: Main Container
schema:
additional_attrs: true
type: dict
attrs:
- variable: env
group: "App Configuration"
label: "Image Environment"
schema:
additional_attrs: true
type: dict
attrs:
- variable: generalsettings
label: "General Settings"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: CMD_FORBIDDEN_NOTE_IDS
label: "CMD_FORBIDDEN_NOTE_IDS"
description: "disallow creation of notes, even if allowFreeUrl or CMD_ALLOW_FREEURL is true"
schema:
type: string
default: "robots.txt, favicon.ico, api, build, css, docs, fonts, js, uploads, vendor, views"
- variable: CMD_IMAGE_UPLOAD_TYPE
label: "CMD_IMAGE_UPLOAD_TYPE"
description: "Where to upload images."
schema:
type: string
default: "filesystem"
enum:
- value: "filesystem"
description: "filesystem"
- value: "imgur"
description: "imgur"
- value: "s3"
description: "s3"
- value: "minio"
description: "minio"
- value: "azure"
description: "azure"
- value: "lutim"
description: "lutim"
- variable: CMD_SOURCE_URL
label: "CMD_SOURCE_URL"
description: "Provides the link to the source code of HedgeDoc on the entry page"
schema:
type: string
default: ""
- variable: CMD_TOOBUSY_LAG
label: "CMD_TOOBUSY_LAG"
description: "CPU time for one event loop tick until node throttles connections. (milliseconds)"
schema:
type: int
default: 70
- variable: CMD_ALLOW_GRAVATAR
label: "CMD_ALLOW_GRAVATAR"
description: "Set to false to disable Libravatar as profile picture source on your instance."
schema:
type: boolean
default: true
- variable: httpsettings
label: "HTTP Settings"
schema:
type: boolean
default: true
show_subquestions_if: true
subquestions:
- variable: CMD_DOMAIN
label: "CMD_DOMAIN"
description: "Domain name (eg. hedgedoc.org)"
schema:
type: string
default: ""
- variable: CMD_PROTOCOL_USESSL
label: "CMD_PROTOCOL_USESSL"
description: "Set to use SSL protocol for resources path (only applied when domain is set)"
schema:
type: boolean
default: false
- variable: CMD_URL_ADDPORT
label: "CMD_URL_ADDPORT"
description: "Set to add port on callback URL (ports 80 or 443 won't be applied) (only applied when domain is set)"
schema:
type: boolean
default: false
- variable: CMD_ALLOW_ORIGIN
label: "CMD_ALLOW_ORIGIN"
description: "Domain name whitelist (use comma to separate)"
schema:
type: string
default: "localhost"
- variable: websecsettings
label: "Web Security Settings"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: CMD_HSTS_ENABLE
label: "CMD_HSTS_ENABLE"
description: "Set to enable HSTS if HTTPS is also enabled"
schema:
type: boolean
default: true
- variable: CMD_HSTS_INCLUDE_SUBDOMAINS
label: "CMD_HSTS_INCLUDE_SUBDOMAINS"
description: "Set to include subdomains in HSTS"
schema:
type: boolean
default: true
- variable: CMD_HSTS_MAX_AGE
label: "CMD_HSTS_MAX_AGE"
description: "Max duration in seconds to tell clients to keep HSTS status"
schema:
type: int
default: 31536000
- variable: CMD_HSTS_PRELOAD
label: "CMD_HSTS_PRELOAD"
description: "Whether to allow preloading of the site's HSTS status"
schema:
type: boolean
default: true
- variable: CMD_CSP_ENABLE
label: "CMD_CSP_ENABLE"
description: "Whether to apply a Content-Security-Policy header to responses"
schema:
type: boolean
default: true
- variable: CMD_CSP_ADD_DISQUS
label: "CMD_CSP_ADD_DISQUS"
description: "Enable to allow users to add Disqus comments to their notes or presentations."
schema:
type: boolean
default: false
- variable: CMD_CSP_ADD_GOOGLE_ANALYTICS
label: "CMD_CSP_ADD_GOOGLE_ANALYTICS"
description: "Enable to allow users to add Google Analytics to their notes."
schema:
type: boolean
default: false
- variable: CMD_CSP_REPORTURI
label: "CMD_CSP_REPORTURI"
description: "Allows to add a URL for CSP reports in case of violations."
schema:
type: string
default: ""
- variable: CMD_CSP_ALLOW_FRAMING
label: "CMD_CSP_ALLOW_FRAMING"
description: "Disable to disallow embedding of the instance via iframe."
schema:
type: boolean
default: true
- variable: CMD_CSP_ALLOW_PDF_EMBED
label: "CMD_CSP_ALLOW_PDF_EMBED"
description: "Disable to disallow embedding PDFs."
schema:
type: boolean
default: true
- variable: CMD_COOKIE_POLICY
label: "CMD_COOKIE_POLICY"
description: "Set a SameSite policy whether cookies are send from cross-origin"
schema:
type: string
default: "lax"
enum:
- value: "lax"
description: "lax"
- value: "strict"
description: "strict"
- value: "none"
description: "none"
- variable: userprivillegesettings
label: "Users and Privileges Settings"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: CMD_ALLOW_ANONYMOUS
label: "CMD_ALLOW_ANONYMOUS"
description: "Set to allow anonymous usage"
schema:
type: boolean
default: false
- variable: CMD_ALLOW_ANONYMOUS_EDITS
label: "CMD_ALLOW_ANONYMOUS_EDITS"
description: "If allowAnonymous is false: allow users to select freely permission, allowing guests to edit existing notes"
schema:
type: boolean
default: false
- variable: CMD_ALLOW_FREEURL
label: "CMD_ALLOW_FREEURL"
description: "Set to allow new note creation by accessing a nonexistent note URL"
schema:
type: boolean
default: false
- variable: CMD_REQUIRE_FREEURL_AUTHENTICATION
label: "CMD_REQUIRE_FREEURL_AUTHENTICATION"
description: "Set to require authentication for FreeURL mode style note creation"
schema:
type: boolean
default: true
- variable: CMD_DEFAULT_PERMISSION
label: "CMD_DEFAULT_PERMISSION"
description: "Set notes default permission (only applied on signed-in users)"
schema:
type: string
default: "editable"
enum:
- value: "editable"
description: "editable"
- value: "freely"
description: "freely"
- value: "limited"
description: "limited"
- value: "locked"
description: "locked"
- value: "protected"
description: "protected"
- value: "private"
description: "private"
- variable: CMD_SESSION_LIFE
label: "CMD_SESSION_LIFE"
description: "Cookie session life time in milliseconds."
schema:
type: int
default: 1209600000
- variable: loginsettings
label: "Login Settings"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: CMD_EMAIL
label: "CMD_EMAIL"
description: "Set to allow email sign-in"
schema:
type: boolean
default: true
- variable: CMD_ALLOW_EMAIL_REGISTER
label: "CMD_ALLOW_EMAIL_REGISTER"
description: "Set to allow registration of new accounts using an email address."
schema:
type: boolean
default: true
- variable: dropboxsettings
label: "Dropbox Login Settings"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: CMD_DROPBOX_CLIENTID
label: "CMD_DROPBOX_CLIENTID"
description: "Dropbox API client id"
schema:
type: string
private: true
default: ""
- variable: CMD_DROPBOX_CLIENTSECRET
label: "CMD_DROPBOX_CLIENTSECRET"
description: "Dropbox API client secret"
schema:
type: string
private: true
default: ""
- variable: facebooksettings
label: "Facebook Login Settings"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: CMD_FACEBOOK_CLIENTID
label: "CMD_FACEBOOK_CLIENTID"
description: "Facebook API client id"
schema:
type: string
private: true
default: ""
- variable: CMD_FACEBOOK_CLIENTSECRET
label: "CMD_FACEBOOK_CLIENTSECRET"
description: "Facebook API client secret"
schema:
type: string
private: true
default: ""
- variable: githubsettings
label: "Github Login Settings"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: CMD_GITHUB_CLIENTID
label: "CMD_GITHUB_CLIENTID"
description: "Github API client id"
schema:
type: string
private: true
default: ""
- variable: CMD_GITHUB_CLIENTSECRET
label: "CMD_GITHUB_CLIENTSECRET"
description: "Github API client secret"
schema:
type: string
private: true
default: ""
- variable: gitlabsettings
label: "GitLab Login Settings"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: CMD_GITLAB_SCOPE
label: "CMD_GITLAB_SCOPE"
description: "GitLab API requested scope"
schema:
type: string
default: "api"
enum:
- value: "api"
description: "api"
- value: "read_user"
description: "read_user"
- variable: CMD_GITLAB_BASEURL
label: "CMD_GITLAB_BASEURL"
description: "GitLab authentication endpoint"
schema:
type: string
default: ""
- variable: CMD_GITLAB_CLIENTID
label: "CMD_GITLAB_CLIENTID"
description: "GitLab API client id"
schema:
type: string
private: true
default: ""
- variable: CMD_GITLAB_CLIENTSECRET
label: "CMD_GITLAB_CLIENTSECRET"
description: "GitLab API client secret"
schema:
type: string
private: true
default: ""
- variable: CMD_GITLAB_VERSION
label: "CMD_GITLAB_VERSION"
description: "GitLab API version"
schema:
type: string
default: "v4"
enum:
- value: "v4"
description: "v4"
- value: "v3"
description: "v3"
- variable: googlesettings
label: "Google Login Settings"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: CMD_GOOGLE_CLIENTID
label: "CMD_GOOGLE_CLIENTID"
description: "Google API client id"
schema:
type: string
private: true
default: ""
- variable: CMD_GOOGLE_CLIENTSECRET
label: "CMD_GOOGLE_CLIENTSECRET"
description: "Google API client secret"
schema:
type: string
private: true
default: ""
- variable: CMD_GOOGLE_HOSTEDDOMAIN
label: "CMD_GOOGLE_HOSTEDDOMAIN"
description: "Provided only if the user belongs to a hosted domain"
schema:
type: string
default: ""
- variable: twittersettings
label: "Twitter Login Settings"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: CMD_TWITTER_CONSUMERKEY
label: "CMD_TWITTER_CONSUMERKEY"
description: "Twitter API consumer key"
schema:
type: string
private: true
default: ""
- variable: CMD_TWITTER_CONSUMERSECRET
label: "CMD_TWITTER_CONSUMERSECRET"
description: "Twitter API consumer secret"
schema:
type: string
private: true
default: ""
- variable: mattermostsettings
label: "Mattermost Login Settings"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: CMD_MATTERMOST_BASEURL
label: "CMD_MATTERMOST_BASEURL"
description: "Mattermost authentication endpoint for versions below 5.0"
schema:
type: string
default: ""
- variable: CMD_MATTERMOST_CLIENTID
label: "CMD_MATTERMOST_CLIENTID"
description: "Mattermost API client id"
schema:
type: string
private: true
default: ""
- variable: CMD_MATTERMOST_CLIENTSECRET
label: "CMD_MATTERMOST_CLIENTSECRET"
description: "Mattermost API client secret"
schema:
type: string
private: true
default: ""
- variable: oauthsettings
label: "OAuth2 Login Settings"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: CMD_OAUTH2_USER_PROFILE_URL
label: "CMD_OAUTH2_USER_PROFILE_URL"
description: "Where to retrieve information about a user after successful login"
schema:
type: string
default: ""
- variable: CMD_OAUTH2_USER_PROFILE_USERNAME_ATTR
label: "CMD_OAUTH2_USER_PROFILE_USERNAME_ATTR"
description: "Where to find the username in the JSON from the user profile URL"
schema:
type: string
default: ""
- variable: CMD_OAUTH2_USER_PROFILE_DISPLAY_NAME_ATTR
label: "CMD_OAUTH2_USER_PROFILE_DISPLAY_NAME_ATTR"
description: "Where to find the display-name in the JSON from the user profile URL"
schema:
type: string
default: ""
- variable: CMD_OAUTH2_USER_PROFILE_EMAIL_ATTR
label: "CMD_OAUTH2_USER_PROFILE_EMAIL_ATTR"
description: "Where to find the email address in the JSON from the user profile URL"
schema:
type: string
default: ""
- variable: CMD_OAUTH2_USER_PROFILE_ID_ATTR
label: "CMD_OAUTH2_USER_PROFILE_ID_ATTR"
description: "Where to find the dedicated user ID (optional, overrides CMD_OAUTH2_USER_PROFILE_USERNAME_ATTR)"
schema:
type: string
default: ""
- variable: CMD_OAUTH2_TOKEN_URL
label: "CMD_OAUTH2_TOKEN_URL"
description: "Sometimes called token endpoint, please refer to the documentation of your OAuth2 provider"
schema:
type: string
default: ""
- variable: CMD_OAUTH2_AUTHORIZATION_URL
label: "CMD_OAUTH2_AUTHORIZATION_URL"
description: "Authorization URL of your provider, please refer to the documentation of your OAuth2 provider"
schema:
type: string
default: ""
- variable: CMD_OAUTH2_CLIENT_ID
label: "CMD_OAUTH2_CLIENT_ID"
description: "You will get this from your OAuth2 provider when you register HedgeDoc as OAuth2-client"
schema:
type: string
private: true
default: ""
- variable: CMD_OAUTH2_CLIENT_SECRET
label: "CMD_OAUTH2_CLIENT_SECRET"
description: "You will get this from your OAuth2 provider when you register HedgeDoc as OAuth2-client"
schema:
type: string
default: ""
- variable: CMD_OAUTH2_PROVIDERNAME
label: "CMD_OAUTH2_PROVIDERNAME"
description: "Optional name to be displayed at login form indicating the oAuth2 provider"
schema:
type: string
default: ""
- variable: CMD_OAUTH2_SCOPE
label: "CMD_OAUTH2_SCOPE"
description: "Scope to request for OIDC (OpenID Connect) providers"
schema:
type: string
default: ""
- variable: CMD_OAUTH2_ROLES_CLAIM
label: "CMD_OAUTH2_ROLES_CLAIM"
description: "ID token claim, which is supposed to provide an array of strings of roles"
schema:
type: string
default: ""
- variable: CMD_OAUTH2_ACCESS_ROLE
label: "CMD_OAUTH2_ACCESS_ROLE"
description: "The role which should be included in the ID token roles claim to grant access"
schema:
type: string
default: ""
- variable: ldapsettings
label: "LDAP Login Settings"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: CMD_LDAP_URL
label: "CMD_LDAP_URL"
description: "URL of LDAP server"
schema:
type: string
default: ""
- variable: CMD_LDAP_BINDDN
label: "CMD_LDAP_BINDDN"
description: "bindDn for LDAP access"
schema:
type: string
default: ""
- variable: CMD_LDAP_BINDCREDENTIALS
label: "CMD_LDAP_BINDCREDENTIALS"
description: "bindCredentials for LDAP access"
schema:
type: string
default: ""
- variable: CMD_LDAP_SEARCHBASE
label: "CMD_LDAP_SEARCHBASE"
description: "LDAP directory to begin search from"
schema:
type: string
default: ""
- variable: CMD_LDAP_SEARCHFILTER
label: "CMD_LDAP_SEARCHFILTER"
description: "LDAP filter to search with"
schema:
type: string
default: ""
- variable: CMD_LDAP_SEARCHATTRIBUTES
label: "CMD_LDAP_SEARCHATTRIBUTES"
description: "LDAP attributes to search with (use comma to separate)"
schema:
type: string
default: ""
- variable: CMD_LDAP_USERIDFIELD
label: "CMD_LDAP_USERIDFIELD"
description: "The LDAP field which is used uniquely identify a user on HedgeDoc"
schema:
type: string
default: ""
- variable: CMD_LDAP_USERNAMEFIELD
label: "CMD_LDAP_USERNAMEFIELD"
description: "The LDAP field which is used as the username on HedgeDoc"
schema:
type: string
default: ""
- variable: CMD_LDAP_TLS_CA
label: "CMD_LDAP_TLS_CA"
description: "Root CA for LDAP TLS in PEM format (use comma to separate)"
schema:
type: string
default: ""
- variable: CMD_LDAP_PROVIDERNAME
label: "CMD_LDAP_PROVIDERNAME"
description: "CMD_LDAP_PROVIDERNAME"
schema:
type: string
default: ""
- variable: samlsettings
label: "SAML Login Settings"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: CMD_SAML_IDPSSOURL
label: "CMD_SAML_IDPSSOURL"
description: "Authentication endpoint of IdP. for details"
schema:
type: string
default: ""
- variable: CMD_SAML_IDPCERT
label: "CMD_SAML_IDPCERT"
description: "Certificate file path of IdP in PEM format"
schema:
type: string
default: ""
- variable: CMD_SAML_CLIENTCERT
label: "CMD_SAML_CLIENTCERT"
description: "Certificate file path for the client in PEM format"
schema:
type: string
default: ""
- variable: CMD_SAML_ISSUER
label: "CMD_SAML_ISSUER"
description: "Issuer to supply to identity provider"
schema:
type: string
default: ""
- variable: CMD_SAML_DISABLEREQUESTEDAUTHNCONTEXT
label: "CMD_SAML_DISABLEREQUESTEDAUTHNCONTEXT"
description: "True to allow any authentication method, false restricts to password authentication"
schema:
type: boolean
default: false
- variable: CMD_SAML_IDENTIFIERFORMAT
label: "CMD_SAML_IDENTIFIERFORMAT"
description: "Name identifier format"
schema:
type: string
default: "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress"
- variable: CMD_SAML_GROUPATTRIBUTE
label: "CMD_SAML_GROUPATTRIBUTE"
description: "Attribute name for group list"
schema:
type: string
default: ""
- variable: CMD_SAML_REQUIREDGROUPS
label: "CMD_SAML_REQUIREDGROUPS"
description: "Group names that allowed (use vertical bar to separate)"
schema:
type: string
default: ""
- variable: CMD_SAML_EXTERNALGROUPS
label: "CMD_SAML_EXTERNALGROUPS"
description: "Group names that not allowed (use vertical bar to separate) "
schema:
type: string
default: ""
- variable: CMD_SAML_ATTRIBUTE_ID
label: "CMD_SAML_ATTRIBUTE_ID"
description: "Attribute map for id"
schema:
type: string
default: ""
- variable: CMD_SAML_ATTRIBUTE_USERNAME
label: "CMD_SAML_ATTRIBUTE_USERNAME"
description: "Attribute map for username"
schema:
type: string
default: ""
- variable: CMD_SAML_ATTRIBUTE_EMAIL
label: "CMD_SAML_ATTRIBUTE_EMAIL"
description: "Attribute map for email"
schema:
type: string
default: ""
- variable: CMD_SAML_PROVIDERNAME
label: "CMD_SAML_PROVIDERNAME"
description: "Optional name to be displayed at login form indicating the SAML provider"
schema:
type: string
default: ""
- variable: amazonsettings
label: "Amazon S3 Settings"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: CMD_S3_ACCESS_KEY_ID
label: "CMD_S3_ACCESS_KEY_ID"
description: "AWS access key id"
schema:
type: string
private: true
default: ""
- variable: CMD_S3_SECRET_ACCESS_KEY
label: "CMD_S3_SECRET_ACCESS_KEY"
description: "AWS secret key"
schema:
type: string
private: true
default: ""
- variable: CMD_S3_REGION
label: "CMD_S3_REGION"
description: "AWS S3 region"
schema:
type: string
default: ""
- variable: CMD_S3_BUCKET
label: "CMD_S3_BUCKET"
description: "AWS S3 bucket name"
schema:
type: string
default: ""
- variable: CMD_S3_ENDPOINT
label: "CMD_S3_ENDPOINT "
description: "S3 API endpoint if you don't use AWS name"
schema:
type: string
default: ""
- variable: azuresettings
label: "Azure Blob Storage Settings"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: CMD_AZURE_CONNECTION_STRING
label: "CMD_AZURE_CONNECTION_STRING"
description: "Azure Blob Storage connection string"
schema:
type: string
default: ""
- variable: CMD_AZURE_CONTAINER
label: "CMD_AZURE_CONTAINER"
description: "Azure Blob Storage container name (automatically created if non existent)"
schema:
type: string
default: ""
- variable: miniosettings
label: "Minio Settings"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: CMD_MINIO_ACCESS_KEY
label: "CMD_MINIO_ACCESS_KEY"
description: "Minio access key"
schema:
type: string
private: true
default: ""
- variable: CMD_MINIO_SECRET_KEY
label: "CMD_MINIO_SECRET_KEY"
description: "Minio secret key"
schema:
type: string
private: true
default: ""
- variable: CMD_MINIO_ENDPOINT
label: "CMD_MINIO_ENDPOINT"
description: "Address of your Minio endpoint/instance"
schema:
type: string
default: ""
- variable: CMD_MINIO_PORT
label: "CMD_MINIO_ACCESS_KEY"
description: "Port that is used for your Minio instance"
schema:
type: string
default: ""
- variable: CMD_MINIO_SECURE
label: "CMD_MINIO_SECURE"
description: "If set to true HTTPS is used for Minio"
schema:
type: boolean
default: true
- variable: imgursettings
label: "Imgur Settings"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: CMD_IMGUR_CLIENTID
label: "CMD_IMGUR_CLIENTID"
description: "Imgur API client id"
schema:
type: string
private: true
default: ""
- variable: lutimsettings
label: "Lutim Settings"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: CMD_LUTIM_URL
label: "CMD_LUTIM_URL"
description: "When CMD_IMAGE_UPLOAD_TYPE is set to lutim, you can setup the lutim url"
schema:
type: string
default: ""
- variable: logsettings
label: "Logs Settings"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: DEBUG
label: "DEBUG"
description: "Set debug mode, show more logs"
schema:
type: boolean
default: false
- variable: CMD_LOGLEVEL
label: "CMD_LOGLEVEL"
description: "Defines what kind of logs are provided to stdout."
schema:
type: string
default: "info"
enum:
- value: "info"
description: "info"
- value: "warn"
description: "warn"
- value: "error"
description: "error"
- value: "verbose"
description: "verbose"
- value: "debug"
description: "debug"
- variable: envList
label: Extra Environment Variables
description: "Please be aware that some variables are set in the background, adding duplicates here might cause issues or prevent the app from starting..."
schema:
type: list
default: []
items:
- variable: envItem
label: Environment Variable
schema:
additional_attrs: true
type: dict
attrs:
- variable: name
label: Name
schema:
type: string
- variable: value
label: Value
schema:
type: string
- variable: extraArgs
label: Extra Args
schema:
type: list
default: []
items:
- variable: arg
label: Arg
schema:
type: string
- variable: advanced
label: Show Advanced Settings
description: Advanced settings are not covered by TrueCharts Support
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: command
label: Command
schema:
type: list
default: []
items:
- variable: param
label: Param
schema:
type: string
- variable: TZ
label: Timezone
group: "General"
schema:
type: string
default: "Etc/UTC"
$ref:
- "definitions/timezone"
- variable: podOptions
group: "General"
label: "Global Pod Options (Advanced)"
schema:
additional_attrs: true
type: dict
attrs:
- variable: expertPodOpts
label: "Expert - Pod Options"
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: hostNetwork
label: "Host Networking"
schema:
type: boolean
default: false
- variable: dnsConfig
label: "DNS Configuration"
schema:
type: dict
additional_attrs: true
attrs:
- variable: options
label: "Options"
schema:
type: list
default: [{"name": "ndots", "value": "1"}]
items:
- variable: optionsEntry
label: "Option Entry"
schema:
type: dict
additional_attrs: true
attrs:
- variable: name
label: "Name"
schema:
type: string
required: true
- variable: value
label: "Value"
schema:
type: string
- variable: nameservers
label: "Nameservers"
schema:
type: list
default: []
items:
- variable: nsEntry
label: "Nameserver Entry"
schema:
type: string
required: true
- variable: searches
label: "Searches"
schema:
type: list
default: []
items:
- variable: searchEntry
label: "Search Entry"
schema:
type: string
required: true
- variable: imagePullSecretList
group: "General"
label: "Image Pull Secrets"
schema:
type: list
default: []
items:
- variable: pullsecretentry
label: "Pull Secret"
schema:
type: dict
additional_attrs: true
attrs:
- variable: enabled
label: Enabled
schema:
type: boolean
default: true
- variable: data
label: Data
schema:
type: dict
additional_attrs: true
attrs:
- variable: registry
label: "Registry"
schema:
type: string
required: true
default: "https://index.docker.io/v1/"
- variable: username
label: "Username"
schema:
type: string
required: true
default: ""
- variable: password
label: "Password"
schema:
type: string
required: true
private: true
default: ""
- variable: email
label: "Email"
schema:
type: string
required: true
default: ""
- variable: service
group: Services
label: Configure Service(s)
schema:
additional_attrs: true
type: dict
attrs:
- variable: main
label: "Main Service"
description: "The Primary service on which the healthcheck runs, often the webUI"
schema:
additional_attrs: true
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 and Loadbalancer exposes the service using the system loadbalancer"
schema:
type: string
default: LoadBalancer
enum:
- value: LoadBalancer
description: LoadBalancer (Expose Ports)
- value: ClusterIP
description: ClusterIP (Do Not Expose Ports)
- variable: loadBalancerIP
label: LoadBalancer IP
description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB"
schema:
show_if: [["type", "=", "LoadBalancer"]]
type: string
default: ""
- variable: ports
label: "Service's Port(s) Configuration"
schema:
additional_attrs: true
type: dict
attrs:
- variable: main
label: "Main Service Port Configuration"
schema:
additional_attrs: true
type: dict
attrs:
- variable: port
label: "Port"
description: "This port exposes the container port on the service"
schema:
type: int
default: 10132
required: true
- variable: scaleExternalInterface
description: 'Add External Interfaces (Experimental, might change or be removed without further notice)'
label: Add external Interfaces (Experimental)
group: Networking
schema:
type: list
items:
- variable: interfaceConfiguration
description: Interface Configuration
label: Interface Configuration
schema:
additional_attrs: true
type: dict
$ref:
- "normalize/interfaceConfiguration"
attrs:
- variable: hostInterface
description: Please Specify Host Interface
label: Host Interface
schema:
type: string
required: true
$ref:
- "definitions/interface"
- variable: ipam
description: Define how IP Address will be managed
label: IP Address Management
schema:
additional_attrs: true
type: dict
required: true
attrs:
- variable: type
description: Specify type for IPAM
label: IPAM Type
schema:
type: string
required: true
enum:
- value: dhcp
description: Use DHCP
- value: static
description: Use Static IP
- variable: staticIPConfigurations
label: Static IP Addresses
schema:
type: list
show_if: [["type", "=", "static"]]
items:
- variable: staticIP
label: Static IP
schema:
type: ipaddr
cidr: true
- variable: staticRoutes
label: Static Routes
schema:
type: list
show_if: [["type", "=", "static"]]
items:
- variable: staticRouteConfiguration
label: Static Route Configuration
schema:
additional_attrs: true
type: dict
attrs:
- variable: destination
label: Destination
schema:
type: ipaddr
cidr: true
required: true
- variable: gateway
label: Gateway
schema:
type: ipaddr
cidr: false
required: true
- variable: serviceList
label: Add Manual Custom Services
group: Services
schema:
type: list
default: []
items:
- variable: serviceListEntry
label: Custom Service
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: Enable the service
schema:
type: boolean
default: true
hidden: true
- variable: name
label: Name
schema:
type: string
default: ""
- variable: type
label: Service Type
description: "ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer"
schema:
type: string
default: LoadBalancer
enum:
- value: LoadBalancer
description: LoadBalancer (Expose Ports)
- value: ClusterIP
description: ClusterIP (Do Not Expose Ports)
- value: Simple
description: Deprecated CHANGE THIS
- variable: loadBalancerIP
label: LoadBalancer IP
description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB"
schema:
show_if: [["type", "=", "LoadBalancer"]]
type: string
default: ""
- variable: advancedsvcset
label: Show Advanced Service Settings
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: externalIPs
label: "External IP's"
description: "External IP's"
schema:
type: list
default: []
items:
- variable: externalIP
label: External IP
schema:
type: string
- variable: ipFamilyPolicy
label: IP Family Policy
description: Specify the IP Policy
schema:
type: string
default: SingleStack
enum:
- value: SingleStack
description: SingleStack
- value: PreferDualStack
description: PreferDualStack
- value: RequireDualStack
description: RequireDualStack
- variable: ipFamilies
label: IP Families
description: (Advanced) The IP Families that should be used
schema:
type: list
default: []
items:
- variable: ipFamily
label: IP Family
schema:
type: string
- variable: portsList
label: Additional Service Ports
schema:
type: list
default: []
items:
- variable: portsListEntry
label: Custom ports
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: Enable the Port
schema:
type: boolean
default: true
hidden: true
- variable: name
label: Port Name
schema:
type: string
default: ""
- variable: protocol
label: Port Type
schema:
type: string
default: tcp
enum:
- value: http
description: HTTP
- value: https
description: HTTPS
- value: tcp
description: TCP
- value: udp
description: UDP
- variable: targetPort
label: Target Port
description: This port exposes the container port on the service
schema:
type: int
required: true
- variable: port
label: Container Port
schema:
type: int
required: true
- variable: persistence
label: Integrated Persistent Storage
description: Integrated Persistent Storage
group: Persistence
schema:
additional_attrs: true
type: dict
attrs:
- variable: uploads
label: "App Uploads Storage"
description: "Stores the Application Uploads."
schema:
additional_attrs: true
type: dict
attrs:
- variable: type
label: Type of Storage
description: Sets the persistence type, Anything other than PVC could break rollback!
schema:
type: string
default: pvc
enum:
- value: pvc
description: PVC
- value: hostPath
description: Host Path
- value: emptyDir
description: emptyDir
- value: nfs
description: NFS Share
- value: iscsi
description: iSCSI Share
- variable: server
label: NFS Server
schema:
show_if: [["type", "=", "nfs"]]
type: string
default: ""
- variable: path
label: Path on NFS Server
schema:
show_if: [["type", "=", "nfs"]]
type: string
default: ""
- variable: iscsi
label: iSCSI Options
schema:
show_if: [["type", "=", "iscsi"]]
type: dict
additional_attrs: true
attrs:
- variable: targetPortal
label: targetPortal
schema:
type: string
required: true
default: ""
- variable: iqn
label: iqn
schema:
type: string
required: true
default: ""
- variable: lun
label: lun
schema:
type: int
default: 0
- variable: authSession
label: authSession
schema:
type: dict
additional_attrs: true
attrs:
- variable: username
label: username
schema:
type: string
default: ""
- variable: password
label: password
schema:
type: string
default: ""
- variable: usernameInitiator
label: usernameInitiator
schema:
type: string
default: ""
- variable: passwordInitiator
label: passwordInitiator
schema:
type: string
default: ""
- variable: authDiscovery
label: authDiscovery
schema:
type: dict
additional_attrs: true
attrs:
- variable: username
label: username
schema:
type: string
default: ""
- variable: password
label: password
schema:
type: string
default: ""
- variable: usernameInitiator
label: usernameInitiator
schema:
type: string
default: ""
- variable: passwordInitiator
label: passwordInitiator
schema:
type: string
default: ""
- variable: autoPermissions
label: Automatic Permissions Configuration
description: Automatically set permissions
schema:
show_if: [["type", "!=", "pvc"]]
type: dict
additional_attrs: true
attrs:
- variable: enabled
label: enabled
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: chown
label: Run CHOWN
description: |
It will run CHOWN on the path with the given fsGroup
schema:
type: boolean
default: false
- variable: chmod
label: Run CHMOD
description: |
It will run CHMOD on the path with the given value
Format should be 3 digits, e.g. 770
schema:
type: string
valid_chars: '[0-9]{3}'
default: ""
- variable: recursive
label: Recursive
description: |
It will run CHOWN and CHMOD recursively
schema:
type: boolean
default: false
- variable: readOnly
label: Read Only
schema:
type: boolean
default: false
- variable: hostPath
label: Host Path
description: Path inside the container the storage is mounted
schema:
show_if: [["type", "=", "hostPath"]]
type: hostpath
- variable: medium
label: EmptyDir Medium
schema:
show_if: [["type", "=", "emptyDir"]]
type: string
default: ""
enum:
- value: ""
description: Default
- value: Memory
description: Memory
- variable: size
label: Size quotum of Storage (Do NOT REDUCE after installation)
description: This value can ONLY be INCREASED after the installation
schema:
show_if: [["type", "=", "pvc"]]
type: string
default: 256Gi
- variable: storageClass
label: 'storageClass (Advanced)'
description: 'sets the storageClass to something other than iX default. Only for advanced usecases!'
schema:
show_if: [["type", "=", "pvc"]]
type: string
default: ""
- variable: volsync
label: 'VolSync (Experimental)'
description: Backup, Restore and Synchronise PVC storage
schema:
show_if: [["type", "=", "pvc"]]
type: list
default: []
items:
- variable: VolSyncEntry
label: VolSync Configuration
schema:
additional_attrs: true
type: dict
attrs:
- variable: name
label: Name
description: "Name of backup configuration"
schema:
type: string
default: ""
required: true
- variable: type
label: Type VolSync/Backup
description: Sets the VolSync Type
schema:
type: string
default: "restic"
enum:
- value: restic
description: Restic
- variable: credentials
label: Credentials
description: "Name of credentials in the credentials section"
schema:
type: string
default: ""
required: true
- variable: dest
label: VolSync Destination (Restore)
description: VolSYnc Destination is the location where data is the reciever and configures recovery of backups
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: Enable
schema:
type: boolean
default: true
- variable: src
label: VolSync Source (Backup)
description: VolSYnc Source is the location where data is the sender and creates backups to storage
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: Enable
schema:
type: boolean
default: true
- variable: static
label: 'Static Fixed PVC Bindings (Experimental)'
description: Link a PVC to a specific storage location
schema:
show_if: [["type", "=", "pvc"]]
type: dict
additional_attrs: true
attrs:
- variable: mode
label: mode
description: |
disabled: use normal dynamic PVCs
smb: connect to an SMB share
nfs: connect to an NFS share
schema:
type: string
default: "disabled"
enum:
- value: disabled
description: disabled
- value: smb
description: smb
- value: nfs
description: nfs
- variable: server
label: Server
description: server to connect to
schema:
type: string
show_if: [["mode", "!=", "disabled"]]
default: "myserver"
- variable: share
label: Share
description: share to connect to
schema:
type: string
show_if: [["mode", "!=", "disabled"]]
default: "/myshare"
- variable: user
label: User
description: connecting user
schema:
type: string
show_if: [["mode", "=", "smb"]]
default: "myuser"
- variable: domain
label: Domain
description: user domain
schema:
type: string
show_if: [["mode", "=", "smb"]]
default: ""
- variable: password
label: Password
description: connecting password
schema:
type: string
show_if: [["mode", "=", "smb"]]
default: ""
- variable: volumeSnapshots
label: 'Volume Snapshots (Experimental)'
description: Add an entry to the list to force creation of a volumeSnapshot of this PVC
schema:
show_if: [["type", "=", "pvc"]]
type: list
default: []
items:
- variable: volumeSnapshotEntry
label: Custom volumeSnapshot
schema:
additional_attrs: true
type: dict
attrs:
- variable: name
label: Name
description: 'WARNING: renaming this, means deletion of the snapshot with the old name!'
schema:
type: string
default: "mysnapshot"
required: true
- variable: volumeSnapshotClassName
label: 'volumeSnapshot Class Name (Advanced)'
description: For use with PVCs using a non-default storageClass
schema:
type: string
default: ""
- variable: persistenceList
label: Additional App Storage
group: Persistence
schema:
type: list
default: []
items:
- variable: persistenceListEntry
label: Custom Storage
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: Enable the storage
schema:
type: boolean
default: true
hidden: true
- variable: type
label: Type of Storage
description: Sets the persistence type, Anything other than PVC could break rollback!
schema:
type: string
default: hostPath
enum:
- value: pvc
description: PVC
- value: hostPath
description: Host Path
- value: emptyDir
description: emptyDir
- value: nfs
description: NFS Share
- variable: server
label: NFS Server
schema:
show_if: [["type", "=", "nfs"]]
type: string
default: ""
- variable: path
label: Path on NFS Server
schema:
show_if: [["type", "=", "nfs"]]
type: string
default: ""
- variable: iscsi
label: iSCSI Options
schema:
show_if: [["type", "=", "iscsi"]]
type: dict
additional_attrs: true
attrs:
- variable: targetPortal
label: targetPortal
schema:
type: string
required: true
default: ""
- variable: iqn
label: iqn
schema:
type: string
required: true
default: ""
- variable: lun
label: lun
schema:
type: int
default: 0
- variable: authSession
label: authSession
schema:
type: dict
additional_attrs: true
attrs:
- variable: username
label: username
schema:
type: string
default: ""
- variable: password
label: password
schema:
type: string
default: ""
- variable: usernameInitiator
label: usernameInitiator
schema:
type: string
default: ""
- variable: passwordInitiator
label: passwordInitiator
schema:
type: string
default: ""
- variable: authDiscovery
label: authDiscovery
schema:
type: dict
additional_attrs: true
attrs:
- variable: username
label: username
schema:
type: string
default: ""
- variable: password
label: password
schema:
type: string
default: ""
- variable: usernameInitiator
label: usernameInitiator
schema:
type: string
default: ""
- variable: passwordInitiator
label: passwordInitiator
schema:
type: string
default: ""
- variable: autoPermissions
label: Automatic Permissions Configuration
description: Automatically set permissions
schema:
show_if: [["type", "!=", "pvc"]]
type: dict
additional_attrs: true
attrs:
- variable: enabled
label: enabled
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: chown
label: Run CHOWN
description: |
It will run CHOWN on the path with the given fsGroup
schema:
type: boolean
default: false
- variable: chmod
label: Run CHMOD
description: |
It will run CHMOD on the path with the given value
Format should be 3 digits, e.g. 770
schema:
type: string
valid_chars: '[0-9]{3}'
default: ""
- variable: recursive
label: Recursive
description: |
It will run CHOWN and CHMOD recursively
schema:
type: boolean
default: false
- variable: readOnly
label: Read Only
schema:
type: boolean
default: false
- variable: hostPath
label: Host Path
description: Path inside the container the storage is mounted
schema:
show_if: [["type", "=", "hostPath"]]
type: hostpath
- variable: mountPath
label: Mount Path
description: Path inside the container the storage is mounted
schema:
type: string
default: ""
required: true
valid_chars: '^\/([a-zA-Z0-9._-]+(\s?[a-zA-Z0-9._-]+|\/?))+$'
- variable: medium
label: EmptyDir Medium
schema:
show_if: [["type", "=", "emptyDir"]]
type: string
default: ""
enum:
- value: ""
description: Default
- value: Memory
description: Memory
- variable: size
label: Size Quotum of Storage
schema:
show_if: [["type", "=", "pvc"]]
type: string
default: 256Gi
- variable: storageClass
label: 'storageClass (Advanced)'
description: 'sets the storageClass to something other than iX default. Only for advanced usecases!'
schema:
show_if: [["type", "=", "pvc"]]
type: string
default: ""
- variable: volsync
label: 'VolSync (Experimental)'
description: Backup, Restore and Synchronise PVC storage
schema:
show_if: [["type", "=", "pvc"]]
type: list
default: []
items:
- variable: VolSyncEntry
label: VolSync Configuration
schema:
additional_attrs: true
type: dict
attrs:
- variable: name
label: Name
description: "Name of backup configuration"
schema:
type: string
default: ""
required: true
- variable: type
label: Type VolSync/Backup
description: Sets the VolSync Type
schema:
type: string
default: "restic"
enum:
- value: restic
description: Restic
- variable: credentials
label: Credentials
description: "Name of credentials in the credentials section"
schema:
type: string
default: ""
required: true
- variable: dest
label: VolSync Destination (Restore)
description: VolSYnc Destination is the location where data is the reciever and configures recovery of backups
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: Enable
schema:
type: boolean
default: true
- variable: src
label: VolSync Source (Backup)
description: VolSYnc Source is the location where data is the sender and creates backups to storage
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: Enable
schema:
type: boolean
default: true
- variable: static
label: 'Static Fixed PVC Bindings (Experimental)'
description: Link a PVC to a specific storage location
schema:
show_if: [["type", "=", "pvc"]]
type: dict
additional_attrs: true
attrs:
- variable: mode
label: mode
description: |
disabled: use normal dynamic PVCs
smb: connect to an SMB share
nfs: connect to an NFS share
schema:
type: string
default: "disabled"
enum:
- value: "disabled"
description: disabled
- value: smb
description: smb
- value: nfs
description: nfs
- variable: server
label: Server
description: server to connect to
schema:
type: string
show_if: [["mode", "!=", "disabled"]]
default: "myserver"
- variable: share
label: Share
description: share to connect to
schema:
type: string
show_if: [["mode", "!=", "disabled"]]
default: "/myshare"
- variable: user
label: User
description: connecting user
schema:
type: string
show_if: [["mode", "=", "smb"]]
default: "myuser"
- variable: domain
label: Domain
description: user domain
schema:
type: string
show_if: [["mode", "=", "smb"]]
default: ""
- variable: password
label: Password
description: connecting password
schema:
type: string
show_if: [["mode", "=", "smb"]]
default: ""
- variable: volumeSnapshots
label: 'Volume Snapshots (Experimental)'
description: Add an entry to the list to force creation of a volumeSnapshot of this PVC
schema:
show_if: [["type", "=", "pvc"]]
type: list
default: []
items:
- variable: volumeSnapshotEntry
label: Custom volumeSnapshot
schema:
additional_attrs: true
type: dict
attrs:
- variable: name
label: Name
description: 'WARNING: renaming this, means deletion of the snapshot with the old name!'
schema:
type: string
default: "mysnapshot"
required: true
- variable: volumeSnapshotClassName
label: 'volumeSnapshot Class Name (Advanced)'
description: For use with PVCs using a non-default storageClass
schema:
type: string
default: ""
- variable: ingress
label: ""
group: Ingress
schema:
additional_attrs: true
type: dict
attrs:
- variable: main
label: "Main Ingress"
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: Enable Ingress
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: hosts
label: Hosts
schema:
type: list
default: []
items:
- variable: hostEntry
label: Host
schema:
additional_attrs: true
type: dict
attrs:
- variable: host
label: HostName
schema:
type: string
default: ""
required: true
- variable: paths
label: Paths
schema:
type: list
default: [{path: "/", pathType: "Prefix"}]
items:
- variable: pathEntry
label: Host
schema:
additional_attrs: true
type: dict
attrs:
- variable: path
label: Path
schema:
type: string
required: true
default: "/"
- variable: pathType
label: Path Type
schema:
type: string
required: true
default: Prefix
- variable: integrations
label: Integrations
description: Connect ingress with other charts
schema:
additional_attrs: true
type: dict
attrs:
- variable: traefik
label: Traefik
description: Connect ingress with Traefik
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: enabled
schema:
type: boolean
default: true
- variable: allowCors
label: 'Allow Cross Origin Requests (advanced)'
schema:
type: boolean
default: false
show_if: [["enabled", "=", true]]
- variable: entrypoints
label: Entrypoints
schema:
type: list
default: ["websecure"]
show_if: [["enabled", "=", true]]
items:
- variable: entrypoint
label: Entrypoint
schema:
type: string
- variable: middlewares
label: Middlewares
schema:
type: list
default: []
show_if: [["enabled", "=", true]]
items:
- variable: middleware
label: Middleware
schema:
additional_attrs: true
type: dict
attrs:
- variable: name
label: name
schema:
type: string
default: ""
required: true
- variable: namespace
label: 'namespace (optional)'
schema:
type: string
default: ""
- variable: certManager
label: certManager
description: Connect ingress with certManager
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: enabled
schema:
type: boolean
default: false
- variable: certificateIssuer
label: certificateIssuer
description: defaults to chartname
schema:
type: string
default: ""
show_if: [["enabled", "=", true]]
- variable: homepage
label: Homepage
description: Connect ingress with Homepage
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: enabled
schema:
type: boolean
default: false
- variable: name
label: Name (Optional)
description: Defaults to chart name
schema:
type: string
default: ""
show_if: [["enabled", "=", true]]
- variable: description
label: Description (Optional)
description: Defaults to chart description
schema:
type: string
default: ""
show_if: [["enabled", "=", true]]
- variable: icon
label: Icon (Optional)
description: Defaults to chart icon
schema:
type: string
default: ""
show_if: [["enabled", "=", true]]
- variable: group
label: Group
schema:
type: string
required: true
default: "default"
show_if: [["enabled", "=", true]]
- variable: widget
label: Widget Settings
schema:
type: dict
additional_attrs: true
show_if: [["enabled", "=", true]]
attrs:
- variable: enabled
label: Enable Widget
description: When disabled all widget annotations are skipped.
schema:
type: boolean
default: true
- variable: custom
label: Options
schema:
type: dict
additional_attrs: true
attrs:
- variable: key
label: API-key (key)
schema:
type: string
default: ""
- variable: customkv
label: Custom Options
schema:
type: list
default: []
items:
- variable: option
label: Option
schema:
additional_attrs: true
type: dict
attrs:
- variable: key
label: Key
schema:
type: string
default: ""
required: true
- variable: value
label: Value
schema:
type: string
default: ""
required: true
- variable: advanced
label: Show Advanced Settings
description: Advanced settings are not covered by TrueCharts Support
schema:
type: boolean
default: false
- variable: ingressClassName
label: (Advanced/Optional) IngressClass Name
schema:
type: string
show_if: [["advanced", "=", true]]
default: ""
- variable: tls
label: TLS-Settings
schema:
type: list
show_if: [["advanced", "=", true]]
default: []
items:
- variable: tlsEntry
label: Host
schema:
additional_attrs: true
type: dict
attrs:
- variable: hosts
label: Certificate Hosts
schema:
type: list
default: []
items:
- variable: host
label: Host
schema:
type: string
default: ""
required: true
- variable: certificateIssuer
label: Use Cert-Manager clusterIssuer
description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates.'
schema:
type: string
default: ""
- variable: clusterCertificate
label: 'Cluster Certificate (Advanced)'
description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.'
schema:
type: string
show_if: [["certificateIssuer", "=", ""]]
default: ""
- variable: secretName
label: 'Use Custom Certificate Secret (Advanced)'
schema:
show_if: [["certificateIssuer", "=", ""]]
type: string
default: ""
- variable: ingressList
label: Add Manual Custom Ingresses
group: Ingress
schema:
type: list
default: []
items:
- variable: ingressListEntry
label: Custom Ingress
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: Enable Ingress
schema:
type: boolean
default: true
hidden: true
- variable: name
label: Name
schema:
type: string
default: ""
- variable: ingressClassName
label: IngressClass Name
schema:
type: string
default: ""
- variable: hosts
label: Hosts
schema:
type: list
default: []
items:
- variable: hostEntry
label: Host
schema:
additional_attrs: true
type: dict
attrs:
- variable: host
label: HostName
schema:
type: string
default: ""
required: true
- variable: paths
label: Paths
schema:
type: list
default: []
items:
- variable: pathEntry
label: Host
schema:
additional_attrs: true
type: dict
attrs:
- variable: path
label: Path
schema:
type: string
required: true
default: "/"
- variable: pathType
label: Path Type
schema:
type: string
required: true
default: Prefix
- variable: overrideService
label: Linked Service
schema:
additional_attrs: true
type: dict
attrs:
- variable: name
label: Service Name
schema:
type: string
default: ""
- variable: port
label: Service Port
schema:
type: int
- variable: tls
label: TLS-Settings
schema:
type: list
default: []
show_if: [["certificateIssuer", "=", ""]]
items:
- variable: tlsEntry
label: Host
schema:
additional_attrs: true
type: dict
attrs:
- variable: hosts
label: Certificate Hosts
schema:
type: list
default: []
items:
- variable: host
label: Host
schema:
type: string
default: ""
required: true
- variable: certificateIssuer
label: Use Cert-Manager clusterIssuer
description: 'add the name of your Cert-Manager clusterIssuer here for automatic tls certificates.'
schema:
type: string
default: ""
- variable: clusterCertificate
label: 'Cluster Certificate (Advanced)'
description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.'
schema:
type: string
show_if: [["certificateIssuer", "=", ""]]
default: ""
- variable: secretName
label: Use Custom Secret (Advanced)
schema:
type: string
show_if: [["certificateIssuer", "=", ""]]
default: ""
- variable: integrations
label: Integrations
description: Connect ingress with other charts
schema:
additional_attrs: true
type: dict
attrs:
- variable: traefik
label: Traefik
description: Connect ingress with Traefik
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: enabled
schema:
type: boolean
default: true
- variable: allowCors
label: "Allow Cross Origin Requests"
schema:
type: boolean
default: false
show_if: [["enabled", "=", true]]
- variable: entrypoints
label: Entrypoints
schema:
type: list
default: ["websecure"]
show_if: [["enabled", "=", true]]
items:
- variable: entrypoint
label: Entrypoint
schema:
type: string
- variable: middlewares
label: Middlewares
schema:
type: list
default: []
show_if: [["enabled", "=", true]]
items:
- variable: middleware
label: Middleware
schema:
additional_attrs: true
type: dict
attrs:
- variable: name
label: name
schema:
type: string
default: ""
required: true
- variable: namespace
label: namespace
schema:
type: string
default: ""
- variable: certManager
label: certManager
description: Connect ingress with certManager
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: enabled
schema:
type: boolean
default: true
- variable: certificateIssuer
label: certificateIssuer
description: defaults to chartname
schema:
type: string
default: ""
show_if: [["enabled", "=", true]]
- variable: homepage
label: Homepage
description: Connect ingress with Homepage
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: enabled
schema:
type: boolean
default: false
- variable: name
label: Name
description: defaults to chartname
schema:
type: string
default: ""
show_if: [["enabled", "=", true]]
- variable: description
label: Description
description: defaults to chart description
schema:
type: string
default: ""
show_if: [["enabled", "=", true]]
- variable: group
label: Group
schema:
type: string
required: true
default: "default"
show_if: [["enabled", "=", true]]
- variable: securityContext
group: SecurityContext
label: Security Context
schema:
additional_attrs: true
type: dict
attrs:
- variable: container
label: Container
schema:
additional_attrs: true
type: dict
attrs:
# Settings from questions.yaml get appended here on a per-app basis
- variable: runAsUser
label: "runAsUser"
description: "The UserID of the user running the application"
schema:
type: int
default: 568
- variable: runAsGroup
label: "runAsGroup"
description: "The groupID this App of the user running the application"
schema:
type: int
default: 568
# Settings from questions.yaml get appended here on a per-app basis
- variable: PUID
label: Process User ID - PUID
description: When supported by the container, this sets the User ID running the Application Process. Not supported by all Apps
schema:
type: int
show_if: [["runAsUser", "=", 0]]
default: 568
- variable: UMASK
label: UMASK
description: When supported by the container, this sets the UMASK for the App. Not supported by all Apps
schema:
type: string
default: "0022"
- variable: advanced
label: Show Advanced Settings
description: Advanced settings are not covered by TrueCharts Support
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: privileged
label: "Privileged mode"
schema:
type: boolean
default: false
- variable: readOnlyRootFilesystem
label: "ReadOnly Root Filesystem"
schema:
type: boolean
default: true
- variable: pod
label: Pod
schema:
additional_attrs: true
type: dict
attrs:
- variable: fsGroupChangePolicy
label: "When should we take ownership?"
schema:
type: string
default: OnRootMismatch
enum:
- value: OnRootMismatch
description: OnRootMismatch
- value: Always
description: Always
- variable: supplementalGroups
label: Supplemental Groups
schema:
type: list
default: []
items:
- variable: supplementalGroupsEntry
label: Supplemental Group
schema:
type: int
# Settings from questions.yaml get appended here on a per-app basis
- variable: fsGroup
label: "fsGroup"
description: "The group that should own ALL storage."
schema:
type: int
default: 568
- variable: resources
group: Resources
label: "Resource Limits"
schema:
additional_attrs: true
type: dict
attrs:
- variable: limits
label: Advanced Limit Resource Consumption
schema:
additional_attrs: true
type: dict
attrs:
- variable: cpu
label: CPU
description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/SCALE/validation"
schema:
type: string
default: 4000m
valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$'
- variable: memory
label: RAM
description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/SCALE/validation"
schema:
type: string
default: 8Gi
valid_chars: '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$'
- variable: 'gpu.intel.com/i915'
label: Add Intel i915 GPUs
schema:
type: int
default: 0
- variable: 'nvidia.com/gpu'
label: Add NVIDIA GPUs (Experimental)
schema:
type: int
default: 0
- variable: 'amd.com/gpu'
label: Add AMD GPUs
schema:
type: int
default: 0
- variable: requests
label: "Minimum Resources Required (request)"
schema:
additional_attrs: true
type: dict
hidden: true
attrs:
- variable: cpu
label: CPU
description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/SCALE/validation"
schema:
type: string
default: 10m
hidden: true
valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$'
- variable: memory
label: "RAM"
description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/SCALE/validation"
schema:
type: string
default: 50Mi
hidden: true
valid_chars: '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$'
- variable: deviceList
label: Mount USB Devices
group: Devices
schema:
type: list
default: []
items:
- variable: deviceListEntry
label: Device
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: Enable the Storage
schema:
type: boolean
default: true
- variable: type
label: (Advanced) Type of Storage
description: Sets the persistence type
schema:
type: string
default: device
hidden: true
- variable: readOnly
label: readOnly
schema:
type: boolean
default: false
- variable: hostPath
label: Host Device Path
description: Path to the device on the host system
schema:
type: path
- variable: mountPath
label: Container Device Path
description: Path inside the container the device is mounted
schema:
type: string
default: "/dev/ttyACM0"
- variable: cnpg
group: Postgresql
label: "CloudNative-PG (CNPG)"
schema:
additional_attrs: true
type: dict
attrs:
- variable: main
label: "Main Postgresql Database"
schema:
additional_attrs: true
type: dict
attrs:
- variable: hibernate
label: Hibernate
description: "enable to safely hibernate and shutdown the postgresql cluster"
schema:
type: boolean
default: false
- variable: mode
label: Mode
description: 'Cluster mode of operation. Available modes: standalone - default mode. Creates new or updates an existing CNPG cluster. recovery - Same as standalone but creates a cluster from a backup, object store or via pg_basebackup replica - Creates a replica cluster from an existing CNPG cluster. # TODO.'
schema:
type: string
default: "standalone"
enum:
- value: standalone
description: standalone
- value: replica
description: replica
- value: recovery
description: recovery
- variable: pgVersion
label: Postgres Version
description: "Set the Postgresql version used"
schema:
type: int
default: 16
required: true
- variable: password
label: Password
description: "Set the password for the database-user"
schema:
type: string
default: "PLACEHOLDERPASSWORD"
required: true
- variable: cluster
label: "Cluster Settings"
schema:
additional_attrs: true
type: dict
attrs:
- variable: instances
label: Instances
schema:
type: int
default: 1
- variable: singleNode
label: singleNode
schema:
type: boolean
default: true
hidden: true
- variable: storage
label: "Storage"
schema:
additional_attrs: true
type: dict
attrs:
- variable: size
label: Size
schema:
type: string
default: "256Gi"
- variable: walStorage
label: "WAL Storage"
schema:
additional_attrs: true
type: dict
attrs:
- variable: size
label: Size
schema:
type: string
default: "256Gi"
- variable: monitoring
label: "Monitoring Settings"
schema:
additional_attrs: true
type: dict
attrs:
- variable: enablePodMonitor
label: "enablePodMonitor"
schema:
type: boolean
default: true
- variable: disableDefaultQueries
label: "disableDefaultQueries"
schema:
type: boolean
default: false
- variable: pooler
label: "Pooler Settings"
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: Enabled
schema:
type: boolean
default: false
- variable: instances
label: Instances
schema:
type: int
show_if: [["enabled", "=", true]]
default: 1
- variable: createRO
label: "Create ReadOnly Instance"
schema:
type: boolean
show_if: [["enabled", "=", true]]
default: false
- variable: backups
label: "Backup Settings (Experimental)"
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: "enabled"
schema:
type: boolean
default: false
- variable: serverName
label: "serverName"
schema:
type: string
default: ""
- variable: revision
label: "revision"
schema:
type: string
default: ""
- variable: destinationPath
label: "destinationPath"
schema:
type: string
show_if: [["enabled", "=", true]]
default: ""
- variable: retentionPolicy
label: "retentionPolicy"
schema:
type: string
show_if: [["enabled", "=", true]]
default: "30d"
- variable: credentials
label: "Credentials"
description: "Name of the credentials in the credentials section"
schema:
type: string
show_if: [["enabled", "=", true]]
default: ""
required: true
- variable: recovery
label: "Recovery Settings (Experimental)"
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: "enabled"
schema:
type: boolean
default: false
- variable: serverName
label: "serverName"
schema:
type: string
default: ""
- variable: revision
label: "revision"
schema:
type: string
default: ""
- variable: method
label: "method"
schema:
type: string
show_if: [["enabled", "=", true]]
default: "object_store"
- variable: backupName
label: "backupName"
schema:
type: string
show_if: [["enabled", "=", true]]
default: ""
- variable: credentials
label: "Credentials"
description: "Name of the credentials in the credentials section"
schema:
type: string
show_if: [["enabled", "=", true]]
default: ""
required: true
# - variable: horizontalPodAutoscaler
# group: Experimental
# label: (Advanced) Horizontal Pod Autoscaler
# schema:
# type: list
# default: []
# items:
# - variable: hpaEntry
# label: HPA Entry
# schema:
# additional_attrs: true
# type: dict
# attrs:
# - variable: name
# label: Name
# schema:
# type: string
# required: true
# default: ""
# - variable: enabled
# label: Enabled
# schema:
# type: boolean
# default: false
# show_subquestions_if: true
# subquestions:
# - variable: target
# label: Target
# description: Deployment name, Defaults to Main Deployment
# schema:
# type: string
# default: ""
# - variable: minReplicas
# label: Minimum Replicas
# schema:
# type: int
# default: 1
# - variable: maxReplicas
# label: Maximum Replicas
# schema:
# type: int
# default: 5
# - variable: targetCPUUtilizationPercentage
# label: Target CPU Utilization Percentage
# schema:
# type: int
# default: 80
# - variable: targetMemoryUtilizationPercentage
# label: Target Memory Utilization Percentage
# schema:
# type: int
# default: 80
- variable: networkPolicy
group: Experimental
label: (Advanced) Network Policy
schema:
type: list
default: []
items:
- variable: netPolicyEntry
label: Network Policy Entry
schema:
additional_attrs: true
type: dict
attrs:
- variable: name
label: Name
schema:
type: string
required: true
default: ""
- variable: enabled
label: Enabled
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: policyType
label: Policy Type
schema:
type: string
default: ""
enum:
- value: ""
description: Default
- value: ingress
description: Ingress
- value: egress
description: Egress
- value: ingress-egress
description: Ingress and Egress
- variable: egress
label: Egress
schema:
type: list
default: []
items:
- variable: egressEntry
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: to
label: To
schema:
type: list
default: []
items:
- variable: toEntry
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: ipBlock
label: IP Block
schema:
additional_attrs: true
type: dict
attrs:
- variable: cidr
label: CIDR
schema:
type: string
default: ""
- variable: except
label: Except
schema:
type: list
default: []
items:
- variable: exceptint
label: ""
schema:
type: string
- variable: namespaceSelector
label: Namespace Selector
schema:
additional_attrs: true
type: dict
attrs:
- variable: matchExpressions
label: Match Expressions
schema:
type: list
default: []
items:
- variable: expressionEntry
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: key
label: Key
schema:
type: string
- variable: operator
label: Operator
schema:
type: string
default: TCP
enum:
- value: In
description: In
- value: NotIn
description: NotIn
- value: Exists
description: Exists
- value: DoesNotExist
description: DoesNotExist
- variable: values
label: Values
schema:
type: list
default: []
items:
- variable: value
label: ""
schema:
type: string
- variable: podSelector
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: matchExpressions
label: Match Expressions
schema:
type: list
default: []
items:
- variable: expressionEntry
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: key
label: Key
schema:
type: string
- variable: operator
label: Operator
schema:
type: string
default: TCP
enum:
- value: In
description: In
- value: NotIn
description: NotIn
- value: Exists
description: Exists
- value: DoesNotExist
description: DoesNotExist
- variable: values
label: Values
schema:
type: list
default: []
items:
- variable: value
label: ""
schema:
type: string
- variable: ports
label: Ports
schema:
type: list
default: []
items:
- variable: portsEntry
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: port
label: Port
schema:
type: int
- variable: endPort
label: End Port
schema:
type: int
- variable: protocol
label: Protocol
schema:
type: string
default: TCP
enum:
- value: TCP
description: TCP
- value: UDP
description: UDP
- value: SCTP
description: SCTP
- variable: ingress
label: Ingress
schema:
type: list
default: []
items:
- variable: ingressEntry
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: from
label: From
schema:
type: list
default: []
items:
- variable: fromEntry
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: ipBlock
label: IP Block
schema:
additional_attrs: true
type: dict
attrs:
- variable: cidr
label: CIDR
schema:
type: string
default: ""
- variable: except
label: Except
schema:
type: list
default: []
items:
- variable: exceptint
label: ""
schema:
type: string
- variable: namespaceSelector
label: Namespace Selector
schema:
additional_attrs: true
type: dict
attrs:
- variable: matchExpressions
label: Match Expressions
schema:
type: list
default: []
items:
- variable: expressionEntry
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: key
label: Key
schema:
type: string
- variable: operator
label: Operator
schema:
type: string
default: TCP
enum:
- value: In
description: In
- value: NotIn
description: NotIn
- value: Exists
description: Exists
- value: DoesNotExist
description: DoesNotExist
- variable: values
label: Values
schema:
type: list
default: []
items:
- variable: value
label: ""
schema:
type: string
- variable: podSelector
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: matchExpressions
label: Match Expressions
schema:
type: list
default: []
items:
- variable: expressionEntry
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: key
label: Key
schema:
type: string
- variable: operator
label: Operator
schema:
type: string
default: TCP
enum:
- value: In
description: In
- value: NotIn
description: NotIn
- value: Exists
description: Exists
- value: DoesNotExist
description: DoesNotExist
- variable: values
label: Values
schema:
type: list
default: []
items:
- variable: value
label: ""
schema:
type: string
- variable: ports
label: Ports
schema:
type: list
default: []
items:
- variable: portsEntry
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: port
label: Port
schema:
type: int
- variable: endPort
label: End Port
schema:
type: int
- variable: protocol
label: Protocol
schema:
type: string
default: TCP
enum:
- value: TCP
description: TCP
- value: UDP
description: UDP
- value: SCTP
description: SCTP
- variable: addons
group: Addons
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: codeserver
label: Codeserver
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: Enabled
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: service
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: type
label: Service Type
description: "ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer"
schema:
type: string
default: LoadBalancer
enum:
- value: NodePort
description: Deprecated CHANGE THIS
- value: ClusterIP
description: ClusterIP
- value: LoadBalancer
description: LoadBalancer
- variable: loadBalancerIP
label: LoadBalancer IP
description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB"
schema:
show_if: [["type", "=", "LoadBalancer"]]
type: string
default: ""
- variable: ports
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: codeserver
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: port
label: Port
schema:
type: int
default: 36107
- variable: ingress
label: "Ingress"
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: Enable Ingress
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: hosts
label: Hosts
schema:
type: list
default: []
items:
- variable: hostEntry
label: Host
schema:
additional_attrs: true
type: dict
attrs:
- variable: host
label: HostName
schema:
type: string
default: ""
required: true
- variable: paths
label: Paths
schema:
type: list
default: [{path: "/", pathType: "Prefix"}]
items:
- variable: pathEntry
label: Host
schema:
additional_attrs: true
type: dict
attrs:
- variable: path
label: Path
schema:
type: string
required: true
default: "/"
- variable: pathType
label: Path Type
schema:
type: string
required: true
default: Prefix
- variable: integrations
label: Integrations
description: Connect ingress with other charts
schema:
additional_attrs: true
type: dict
attrs:
- variable: traefik
label: Traefik
description: Connect ingress with Traefik
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: enabled
schema:
type: boolean
default: true
- variable: allowCors
label: 'Allow Cross Origin Requests (advanced)'
schema:
type: boolean
default: false
show_if: [["enabled", "=", true]]
- variable: entrypoints
label: Entrypoints
schema:
type: list
default: ["websecure"]
show_if: [["enabled", "=", true]]
items:
- variable: entrypoint
label: Entrypoint
schema:
type: string
- variable: middlewares
label: Middlewares
schema:
type: list
default: []
show_if: [["enabled", "=", true]]
items:
- variable: middleware
label: Middleware
schema:
additional_attrs: true
type: dict
attrs:
- variable: name
label: name
schema:
type: string
default: ""
required: true
- variable: namespace
label: 'namespace (optional)'
schema:
type: string
default: ""
- variable: certManager
label: certManager
description: Connect ingress with certManager
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: enabled
schema:
type: boolean
default: false
- variable: certificateIssuer
label: certificateIssuer
description: defaults to chartname
schema:
type: string
default: ""
show_if: [["enabled", "=", true]]
- variable: advanced
label: Show Advanced Settings
description: Advanced settings are not covered by TrueCharts Support
schema:
type: boolean
default: false
- variable: ingressClassName
label: (Advanced/Optional) IngressClass Name
schema:
type: string
show_if: [["advanced", "=", true]]
default: ""
- variable: tls
label: TLS-Settings
schema:
type: list
show_if: [["advanced", "=", true]]
default: []
items:
- variable: tlsEntry
label: Host
schema:
additional_attrs: true
type: dict
attrs:
- variable: hosts
label: Certificate Hosts
schema:
type: list
default: []
items:
- variable: host
label: Host
schema:
type: string
default: ""
required: true
- variable: certificateIssuer
label: Use Cert-Manager clusterIssuer
description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates.'
schema:
type: string
default: ""
- variable: clusterCertificate
label: 'Cluster Certificate (Advanced)'
description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.'
schema:
type: string
show_if: [["certificateIssuer", "=", ""]]
default: ""
- variable: secretName
label: 'Use Custom Certificate Secret (Advanced)'
schema:
show_if: [["certificateIssuer", "=", ""]]
type: string
default: ""
- variable: scaleCert
label: 'Use TrueNAS SCALE Certificate (Deprecated)'
schema:
show_if: [["certificateIssuer", "=", ""]]
type: int
$ref:
- "definitions/certificate"
- variable: envList
label: Codeserver Environment Variables
schema:
type: list
show_if: [["type", "!=", "disabled"]]
default: []
items:
- variable: envItem
label: Environment Variable
schema:
additional_attrs: true
type: dict
attrs:
- variable: name
label: Name
schema:
type: string
required: true
- variable: value
label: Value
schema:
type: string
required: true
- variable: netshoot
label: Netshoot
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: Enabled
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: envList
label: Netshoot Environment Variables
schema:
type: list
show_if: [["type", "!=", "disabled"]]
default: []
items:
- variable: envItem
label: Environment Variable
schema:
additional_attrs: true
type: dict
attrs:
- variable: name
label: Name
schema:
type: string
required: true
- variable: value
label: Value
schema:
type: string
required: true
- variable: vpn
label: VPN
schema:
additional_attrs: true
type: dict
attrs:
- variable: type
label: Type
schema:
type: string
default: disabled
enum:
- value: disabled
description: disabled
- value: gluetun
description: Gluetun
- value: tailscale
description: Tailscale
- value: openvpn
description: OpenVPN (Deprecated)
- value: wireguard
description: Wireguard (Deprecated)
- variable: openvpn
label: OpenVPN Settings
schema:
additional_attrs: true
type: dict
show_if: [["type", "=", "openvpn"]]
attrs:
- variable: username
label: Authentication Username (Optional)
description: Authentication Username, Optional
schema:
type: string
default: ""
- variable: password
label: Authentication Password
description: Authentication Credentials
schema:
type: string
show_if: [["username", "!=", ""]]
default: ""
required: true
- variable: tailscale
label: Tailscale Settings
schema:
additional_attrs: true
type: dict
show_if: [["type", "=", "tailscale"]]
attrs:
- variable: authkey
label: Authentication Key
description: Provide an auth key to automatically authenticate the node as your user account.
schema:
type: string
private: true
default: ""
- variable: auth_once
label: Auth Once
description: Only attempt to log in if not already logged in.
schema:
type: boolean
default: true
- variable: accept_dns
label: Accept DNS
description: Accept DNS configuration from the admin console.
schema:
type: boolean
default: false
- variable: userspace
label: Userspace
description: Userspace Networking mode allows running Tailscale where you do not have access to create a VPN tunnel device.
schema:
type: boolean
default: false
- variable: routes
label: Routes
description: Expose physical subnet routes to your entire Tailscale network.
schema:
type: string
default: ""
- variable: dest_ip
label: Destination IP
description: Tells the DNAT mechanism which Destination IP to set in the IP header, and where to send packets that are matched.
schema:
type: string
default: ""
- variable: sock5_server
label: Sock5 Server
description: The address on which to listen for SOCKS5 proxying into the tailscale net.
schema:
type: string
default: ""
- variable: outbound_http_proxy_listen
label: Outbound HTTP Proxy Listen
description: The address on which to listen for HTTP proxying into the tailscale net.
schema:
type: string
default: ""
- variable: extra_args
label: Extra Args
description: Extra Args
schema:
type: string
default: ""
- variable: daemon_extra_args
label: Tailscale Daemon Extra Args
description: Tailscale Daemon Extra Args
schema:
type: string
default: ""
- variable: killSwitch
label: Enable Killswitch
schema:
type: boolean
show_if: [["type", "!=", "disabled"]]
default: true
- variable: excludedNetworks_IPv4
label: Killswitch Excluded IPv4 networks
description: List of Killswitch Excluded IPv4 Addresses
schema:
type: list
show_if: [["type", "!=", "disabled"]]
default: []
items:
- variable: networkv4
label: IPv4 Network
schema:
type: string
required: true
- variable: excludedNetworks_IPv6
label: Killswitch Excluded IPv6 networks
description: "List of Killswitch Excluded IPv6 Addresses"
schema:
type: list
show_if: [["type", "!=", "disabled"]]
default: []
items:
- variable: networkv6
label: IPv6 Network
schema:
type: string
required: true
- variable: configFile
label: VPN Config File Location
schema:
type: string
show_if: [["type", "!=", "disabled"]]
default: ""
- variable: envList
label: VPN Environment Variables
schema:
type: list
show_if: [["type", "!=", "disabled"]]
default: []
items:
- variable: envItem
label: Environment Variable
schema:
additional_attrs: true
type: dict
attrs:
- variable: name
label: Name
schema:
type: string
required: true
- variable: value
label: Value
schema:
type: string
required: true
max_length: 10240
- variable: docs
group: Documentation
label: Please read the documentation at https://truecharts.org
description: Please read the documentation at
https://truecharts.org
schema:
additional_attrs: true
type: dict
attrs:
- variable: confirmDocs
label: I have checked the documentation
schema:
type: boolean
default: true
- variable: donateNag
group: Documentation
label: Please consider supporting TrueCharts, see https://truecharts.org/sponsor
description: Please consider supporting TrueCharts, see
https://truecharts.org/sponsor
schema:
additional_attrs: true
type: dict
attrs:
- variable: confirmDonate
label: I have considered donating
schema:
type: boolean
default: true
hidden: true