2021-11-07 12:32:52 +00:00
groups :
- name : "Container Image"
description : "Image to be used for container"
- name : "Controller"
description : "Configure workload deployment"
- name : "Container Configuration"
description : "additional container configuration"
- name : "App Configuration"
description : "App specific config options"
- name : "Networking and Services"
description : "Configure Network and Services for container"
- name : "Storage and Persistence"
description : "Persist and share data that is separate from the container"
- name : "Ingress"
description : "Ingress Configuration"
- name : "Security and Permissions"
description : "Configure security context and permissions"
- name : "Resources and Devices"
description : "Specify resources/devices to be allocated to workload"
- name : "Middlewares"
description : "Traefik Middlewares"
- name : "Addons"
description : "Addon Configuration"
- name : "Advanced"
description : "Advanced Configuration"
portals :
web_portal :
protocols :
2021-11-22 23:47:25 +00:00
- "http"
2021-11-07 12:32:52 +00:00
host :
- "$kubernetes-resource_configmap_portal_host"
ports :
- "$kubernetes-resource_configmap_portal_port"
2021-11-22 23:47:25 +00:00
path : "/dashboard/"
2021-11-07 12:32:52 +00:00
questions :
- variable : portal
group : "Container Image"
label : "Configure Portal Button"
schema :
type : dict
hidden : true
attrs :
- variable : enabled
label : "Enable"
description : "enable the portal button"
schema :
hidden : true
editable : false
type : boolean
default : true
- variable : global
label : "global settings"
group : "Controller"
schema :
type : dict
hidden : true
attrs :
- variable : isSCALE
label : "flag this is SCALE"
schema :
type : boolean
default : true
hidden : true
- variable : controller
group : "Controller"
label : ""
schema :
type : dict
attrs :
- variable : advanced
label : "Show Advanced Controller Settings"
schema :
type : boolean
default : false
show_subquestions_if : true
subquestions :
- variable : type
description : "Please specify type of workload to deploy"
label : "(Advanced) Controller Type"
schema :
type : string
default : "deployment"
required : true
enum :
- value : "deployment"
description : "Deployment"
- value : "statefulset"
description : "Statefulset"
- value : "daemonset"
description : "Daemonset"
- variable : replicas
description : "Number of desired pod replicas"
label : "Desired Replicas"
schema :
type : int
default : 1
required : true
- variable : strategy
description : "Please specify type of workload to deploy"
label : "(Advanced) Update Strategy"
schema :
type : string
2021-11-22 23:47:25 +00:00
default : "RollingUpdate"
2021-11-07 12:32:52 +00:00
required : true
enum :
- value : "Recreate"
description : "Recreate: Kill existing pods before creating new ones"
- value : "RollingUpdate"
description : "RollingUpdate: Create new pods and then kill old ones"
- value : "OnDelete"
description : "(Legacy) OnDelete: ignore .spec.template changes"
- variable : expert
label : "Show Expert Configuration Options"
schema :
type : boolean
default : false
show_subquestions_if : true
subquestions :
- variable : extraArgs
label : "Extra Args"
schema :
type : list
default : [ ]
items :
- variable : argItem
label : "Arg"
schema :
type : dict
attrs :
- variable : name
label : "Name"
schema :
type : string
- variable : value
label : "Value"
schema :
type : string
- variable : labelsList
label : "Controller Labels"
schema :
type : list
default : [ ]
items :
- variable : labelItem
label : "Label"
schema :
type : dict
attrs :
- variable : name
label : "Name"
schema :
type : string
- variable : value
label : "Value"
schema :
type : string
- variable : annotationsList
label : " Controller Annotations"
schema :
type : list
default : [ ]
items :
- variable : annotationItem
label : "Label"
schema :
type : dict
attrs :
- variable : name
label : "Name"
schema :
type : string
- variable : value
label : "Value"
schema :
type : string
2021-11-22 23:47:25 +00:00
2021-11-07 12:32:52 +00:00
- variable : env
group : "Container Configuration"
label : "Image Environment"
schema :
type : dict
attrs :
- variable : TZ
label : "Timezone"
schema :
type : string
2021-11-07 19:48:08 +00:00
default : "Etc/UTC"
2021-11-07 12:32:52 +00:00
$ref :
- "definitions/timezone"
2021-11-07 19:48:08 +00:00
- variable : UMASK
label : "UMASK"
description : "Sets the UMASK env var for LinuxServer.io (compatible) containers"
2021-11-07 12:32:52 +00:00
schema :
2021-11-07 19:48:08 +00:00
type : string
default : "002"
2021-11-07 12:32:52 +00:00
- variable : envList
label : "Image environment"
group : "Container Configuration"
schema :
type : list
default : [ ]
items :
- variable : envItem
label : "Environment Variable"
schema :
type : dict
attrs :
- variable : name
label : "Name"
schema :
type : string
- variable : value
label : "Value"
schema :
type : string
- variable : expertpodconf
group : "Container Configuration"
label : "Show Expert Config"
schema :
type : boolean
default : false
show_subquestions_if : true
subquestions :
- variable : termination
group : "Container Configuration"
label : "Termination settings"
schema :
type : dict
attrs :
- variable : gracePeriodSeconds
label : "Grace Period Seconds"
schema :
type : int
default : 10
- variable : podLabelsList
group : "Container Configuration"
label : "Pod Labels"
schema :
type : list
default : [ ]
items :
- variable : podLabelItem
label : "Label"
schema :
type : dict
attrs :
- variable : name
label : "Name"
schema :
type : string
- variable : value
label : "Value"
schema :
type : string
- variable : podAnnotationsList
group : "Container Configuration"
label : "Pod Annotations"
schema :
type : list
default : [ ]
items :
- variable : podAnnotationItem
label : "Label"
schema :
type : dict
attrs :
- variable : name
label : "Name"
schema :
type : string
- variable : value
label : "Value"
schema :
type : string
2021-11-22 23:47:25 +00:00
- variable : pilot
label : "Traefik Pilot"
group : "App Configuration"
2021-11-07 12:32:52 +00:00
schema :
type : dict
attrs :
2021-11-22 23:47:25 +00:00
- variable : enabled
label : "Enable"
schema :
type : boolean
default : false
show_subquestions_if : true
subquestions :
- variable : token
label : "token"
schema :
type : string
default : ""
- variable : dashboard
label : "Pilot Dashboard"
schema :
type : boolean
default : false
- variable : ingressClass
label : "ingressClass"
group : "App Configuration"
schema :
type : dict
attrs :
- variable : enabled
label : "Enable"
schema :
type : boolean
default : false
show_subquestions_if : true
subquestions :
- variable : isDefaultClass
label : "isDefaultClass"
schema :
type : boolean
default : false
- variable : logs
label : "Logs"
group : "App Configuration"
schema :
type : dict
attrs :
- variable : general
label : "General Logs"
schema :
type : dict
attrs :
- variable : level
label : "Log Level"
schema :
type : string
default : "ERROR"
enum :
- value : "INFO"
description : "Info"
- value : "WARN"
description : "Warnings"
- value : "ERROR"
description : "Errors"
- value : "FATAL"
description : "Fatal Errors"
- value : "PANIC"
description : "Panics"
- value : "DEBUG"
description : "Debug"
- variable : access
label : "Access Logs"
2021-11-07 12:32:52 +00:00
schema :
type : dict
attrs :
- variable : enabled
2021-11-22 23:47:25 +00:00
label : "Enable"
2021-11-07 12:32:52 +00:00
schema :
type : boolean
2021-11-22 23:47:25 +00:00
default : false
show_subquestions_if : true
subquestions :
- variable : enabledFilters
label : "Enable Filters"
schema :
type : boolean
default : false
show_subquestions_if : true
subquestions :
- variable : filters
label : "Filters"
schema :
type : dict
attrs :
- variable : statuscodes
label : "Status codes"
schema :
type : string
default : "200,300-302"
- variable : retryattempts
label : "retryattempts"
schema :
type : boolean
default : true
- variable : minduration
label : "minduration"
schema :
type : string
default : "10ms"
- variable : fields
label : "Fields"
schema :
type : dict
attrs :
- variable : general
label : "General"
schema :
type : dict
attrs :
- variable : defaultmode
label : "Default Mode"
schema :
type : string
default : "keep"
enum :
- value : "keep"
description : "Keep"
- value : "drop"
description : "Drop"
- variable : headers
label : "Headers"
schema :
type : dict
attrs :
- variable : defaultmode
label : "Default Mode"
schema :
type : string
default : "drop"
enum :
- value : "keep"
description : "Keep"
- value : "drop"
description : "Drop"
- variable : middlewares
label : ""
group : "Middlewares"
schema :
type : dict
attrs :
- variable : basicAuth
label : "basicAuth"
schema :
type : list
default : [ ]
items :
- variable : basicAuthEntry
label : ""
2021-11-07 12:32:52 +00:00
schema :
2021-11-22 23:47:25 +00:00
type : dict
attrs :
- variable : name
label : "Name"
schema :
type : string
required : true
default : ""
- variable : users
label : "Users"
schema :
type : list
default : [ ]
items :
- variable : usersEntry
label : ""
schema :
type : dict
attrs :
- variable : username
label : "Username"
schema :
type : string
required : true
default : ""
- variable : password
label : "Password"
schema :
type : string
required : true
default : ""
- variable : forwardAuth
label : "forwardAuth"
schema :
type : list
default : [ ]
items :
- variable : basicAuthEntry
label : ""
2021-11-07 12:32:52 +00:00
schema :
2021-11-22 23:47:25 +00:00
type : dict
attrs :
- variable : name
label : "Name"
schema :
type : string
required : true
default : ""
- variable : address
label : "Address"
schema :
type : string
required : true
default : ""
- variable : trustForwardHeader
label : "trustForwardHeader"
schema :
type : boolean
default : false
- variable : authResponseHeadersRegex
label : "authResponseHeadersRegex"
schema :
type : string
default : ""
- variable : authResponseHeaders
label : "authResponseHeaders"
schema :
type : list
default : [ ]
items :
- variable : authResponseHeadersEntry
label : ""
schema :
type : string
default : ""
- variable : authRequestHeaders
label : "authRequestHeaders"
schema :
type : list
default : [ ]
items :
- variable : authRequestHeadersEntry
label : ""
schema :
type : string
default : ""
- variable : chain
label : "chain"
schema :
type : list
default : [ ]
items :
- variable : chainEntry
label : ""
2021-11-07 12:32:52 +00:00
schema :
2021-11-22 23:47:25 +00:00
type : dict
attrs :
- variable : name
label : "Name"
2021-11-07 12:32:52 +00:00
schema :
type : string
2021-11-22 23:47:25 +00:00
required : true
- variable : middlewares
label : "Middlewares to Chain"
schema :
type : list
default : [ ]
items :
- variable : name
label : "Name"
schema :
type : string
required : true
default : ""
- variable : redirectScheme
label : "redirectScheme"
schema :
type : list
default : [ ]
items :
- variable : redirectSchemeEntry
label : ""
2021-11-07 12:32:52 +00:00
schema :
type : dict
attrs :
2021-11-22 23:47:25 +00:00
- variable : name
label : "Name"
schema :
type : string
required : true
- variable : scheme
label : "Scheme"
schema :
type : string
required : true
default : "https"
enum :
- value : "https"
description : "https"
- value : "http"
description : "http"
- variable : permanent
label : "Permanent"
schema :
type : boolean
required : true
default : false
- variable : rateLimit
label : "rateLimit"
schema :
type : list
default : [ ]
items :
- variable : rateLimitEntry
label : ""
schema :
type : dict
attrs :
- variable : name
label : "Name"
schema :
type : string
required : true
- variable : average
label : "Average"
schema :
type : int
required : true
default : 300
- variable : burst
label : "Burst"
schema :
type : int
required : true
default : 200
- variable : redirectRegex
label : "redirectRegex"
schema :
type : list
default : [ ]
items :
- variable : redirectRegexEntry
label : ""
schema :
type : dict
attrs :
- variable : name
label : "Name"
schema :
type : string
required : true
- variable : regex
label : "Regex"
schema :
type : string
required : true
default : ""
- variable : replacement
label : "Replacement"
schema :
type : string
required : true
default : ""
- variable : permanent
label : "Permanent"
schema :
type : boolean
required : true
default : false
- variable : ipWhiteList
label : "ipWhiteList"
schema :
type : list
default : [ ]
items :
- variable : ipWhiteListEntry
label : ""
schema :
type : dict
attrs :
- variable : name
label : "Name"
schema :
type : string
required : true
default : ""
- variable : sourceRange
label : "Source Range"
schema :
type : list
default : [ ]
items :
- variable : sourceRangeEntry
label : ""
schema :
type : string
required : true
default : ""
- variable : ipStrategy
label : "IP Strategy"
2021-11-07 12:32:52 +00:00
schema :
type : dict
attrs :
2021-11-22 23:47:25 +00:00
- variable : depth
label : "Depth"
2021-11-14 18:24:25 +00:00
schema :
type : int
required : true
2021-11-22 23:47:25 +00:00
- variable : excludedIPs
label : "Excluded IPs"
2021-11-07 12:32:52 +00:00
schema :
2021-11-22 23:47:25 +00:00
type : list
default : [ ]
items :
- variable : excludedIPsEntry
label : ""
2021-11-07 12:32:52 +00:00
schema :
type : string
2021-11-22 23:47:25 +00:00
required : true
default : ""
2021-11-07 16:24:13 +00:00
2021-11-22 23:47:25 +00:00
- variable : service
group : "Networking and Services"
label : "Configure Service Entrypoint"
schema :
type : dict
attrs :
- variable : main
label : "Main Service"
description : "The Primary service on which the healthcheck runs, often the webUI"
2021-11-07 16:24:13 +00:00
schema :
type : dict
attrs :
- variable : enabled
label : "Enable the service"
schema :
type : boolean
default : true
hidden : true
- variable : type
label : "Service Type"
description : "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer"
schema :
type : string
default : "Simple"
enum :
- value : "Simple"
description : "Simple"
- value : "ClusterIP"
description : "ClusterIP"
- value : "NodePort"
description : "NodePort (Advanced)"
- value : "LoadBalancer"
description : "LoadBalancer (Advanced)"
- variable : loadBalancerIP
label : "LoadBalancer IP"
description : "LoadBalancerIP"
schema :
show_if : [ [ "type" , "=" , "LoadBalancer" ] ]
type : string
default : ""
- variable : externalIPs
label : "External IP's"
description : "External IP's"
schema :
show_if : [ [ "type" , "=" , "LoadBalancer" ] ]
type : list
default : [ ]
items :
- variable : externalIP
label : "External IP"
schema :
type : string
- variable : ports
label : "Service's Port(s) Configuration"
schema :
type : dict
attrs :
2021-11-22 23:47:25 +00:00
- variable : main
label : "Main Entrypoint Configuration"
2021-11-07 16:24:13 +00:00
schema :
type : dict
attrs :
- variable : advanced
label : "Show Advanced settings"
schema :
type : boolean
default : false
show_subquestions_if : true
subquestions :
- variable : protocol
label : "Port Type"
schema :
type : string
2021-11-22 23:47:25 +00:00
default : "HTTP"
2021-11-07 16:24:13 +00:00
enum :
- value : HTTP
description : "HTTP"
- value : "HTTPS"
description : "HTTPS"
- value : TCP
description : "TCP"
- value : "UDP"
description : "UDP"
- variable : nodePort
label : "Node Port (Optional)"
description : "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer"
schema :
type : int
min : 9000
max : 65535
- variable : targetPort
label : "Target Port"
description : "The internal(!) port on the container the Application runs on"
schema :
type : int
2021-11-22 23:47:25 +00:00
default : 9000
2021-11-07 12:32:52 +00:00
2021-11-22 23:47:25 +00:00
- variable : port
label : "Entrypoints Port"
schema :
type : int
default : 9000
editable : true
required : true
- variable : tcp
label : "TCP Service"
description : "The tcp Entrypoint service"
2021-11-08 09:00:03 +00:00
schema :
type : dict
attrs :
- variable : enabled
label : "Enable the service"
schema :
type : boolean
default : true
hidden : true
- variable : type
label : "Service Type"
description : "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer"
schema :
type : string
default : "Simple"
enum :
- value : "Simple"
description : "Simple"
- value : "ClusterIP"
description : "ClusterIP"
- value : "NodePort"
description : "NodePort (Advanced)"
- value : "LoadBalancer"
description : "LoadBalancer (Advanced)"
- variable : loadBalancerIP
label : "LoadBalancer IP"
description : "LoadBalancerIP"
schema :
show_if : [ [ "type" , "=" , "LoadBalancer" ] ]
type : string
default : ""
- variable : externalIPs
label : "External IP's"
description : "External IP's"
schema :
show_if : [ [ "type" , "=" , "LoadBalancer" ] ]
type : list
default : [ ]
items :
- variable : externalIP
label : "External IP"
schema :
type : string
- variable : ports
label : "Service's Port(s) Configuration"
schema :
type : dict
attrs :
2021-11-22 23:47:25 +00:00
- variable : web
label : "web Entrypoint Configuration"
2021-11-07 16:24:13 +00:00
schema :
type : dict
attrs :
- variable : advanced
label : "Show Advanced settings"
schema :
type : boolean
default : false
show_subquestions_if : true
subquestions :
- variable : protocol
label : "Port Type"
schema :
type : string
2021-11-22 23:47:25 +00:00
default : "HTTP"
2021-11-07 16:24:13 +00:00
enum :
- value : HTTP
description : "HTTP"
- value : "HTTPS"
description : "HTTPS"
- value : TCP
description : "TCP"
- value : "UDP"
description : "UDP"
- variable : nodePort
label : "Node Port (Optional)"
description : "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer"
2021-11-22 23:47:25 +00:00
schema :
type : int
min : 9000
max : 65535
- variable : targetPort
label : "Target Port"
description : "The internal(!) port on the container the Application runs on"
schema :
type : int
default : 9080
- variable : port
label : "Entrypoints Port"
schema :
type : int
default : 9080
editable : true
required : true
- variable : redirectTo
label : "Redirect to"
schema :
type : string
default : "websecure"
- variable : websecure
label : "websecure Entrypoints Configuration"
2021-11-07 12:32:52 +00:00
schema :
2021-11-22 23:47:25 +00:00
type : dict
attrs :
- variable : advanced
label : "Show Advanced settings"
2021-11-07 12:32:52 +00:00
schema :
2021-11-22 23:47:25 +00:00
type : boolean
default : false
show_subquestions_if : true
subquestions :
- variable : protocol
label : "Port Type"
2021-11-07 12:32:52 +00:00
schema :
type : string
2021-11-22 23:47:25 +00:00
default : "HTTPS"
enum :
- value : HTTP
description : "HTTP"
- value : "HTTPS"
description : "HTTPS"
- value : TCP
description : "TCP"
- value : "UDP"
description : "UDP"
- variable : nodePort
label : "Node Port (Optional)"
description : "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer"
2021-11-07 12:32:52 +00:00
schema :
2021-11-22 23:47:25 +00:00
type : int
min : 9000
max : 65535
- variable : targetPort
label : "Target Port"
description : "The internal(!) port on the container the Application runs on"
schema :
type : int
default : 9443
- variable : port
label : "Entrypoints Port"
schema :
type : int
default : 9443
editable : true
required : true
- variable : tls
label : "websecure Entrypoints Configuration"
2021-11-07 12:32:52 +00:00
schema :
type : dict
2021-11-22 23:47:25 +00:00
hidden : true
2021-11-07 12:32:52 +00:00
attrs :
2021-11-22 23:47:25 +00:00
- variable : enabled
label : "Enabled"
2021-11-07 12:32:52 +00:00
schema :
2021-11-22 23:47:25 +00:00
type : boolean
default : true
hidden : true
- variable : portsList
label : "Additional TCP Entrypoints"
schema :
type : list
default : [ ]
items :
- variable : portsListEntry
label : "Custom Entrypoints"
schema :
type : dict
attrs :
- variable : enabled
label : "Enable the port"
schema :
type : boolean
default : true
hidden : true
- variable : name
label : "Entrypoints Name"
schema :
type : string
default : ""
- variable : protocol
label : "Entrypoints Type"
schema :
type : string
default : "TCP"
enum :
- value : HTTP
description : "HTTP"
- value : "HTTPS"
description : "HTTPS"
- value : TCP
description : "TCP"
- variable : port
label : "Port"
description : "This port exposes the container port on the service"
schema :
type : int
required : true
- variable : tls
label : "websecure Entrypoints Configuration"
schema :
type : dict
attrs :
- variable : enabled
label : "Enabled"
2021-11-07 12:32:52 +00:00
schema :
2021-11-22 23:47:25 +00:00
type : boolean
default : true
- variable : metrics
label : "metrics Service"
description : "The metrics Entrypoint service"
2021-11-07 12:32:52 +00:00
schema :
type : dict
attrs :
- variable : enabled
2021-11-22 23:47:25 +00:00
label : "Enable the service"
2021-11-07 12:32:52 +00:00
schema :
type : boolean
default : true
hidden : true
- variable : type
2021-11-22 23:47:25 +00:00
label : "Service Type"
description : "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer"
2021-11-07 12:32:52 +00:00
schema :
type : string
2021-11-22 23:47:25 +00:00
default : "Simple"
2021-11-07 12:32:52 +00:00
enum :
2021-11-22 23:47:25 +00:00
- value : "Simple"
description : "Simple"
- value : "ClusterIP"
description : "ClusterIP"
- value : "NodePort"
description : "NodePort (Advanced)"
- value : "LoadBalancer"
description : "LoadBalancer (Advanced)"
- variable : loadBalancerIP
label : "LoadBalancer IP"
description : "LoadBalancerIP"
2021-11-07 12:32:52 +00:00
schema :
2021-11-22 23:47:25 +00:00
show_if : [ [ "type" , "=" , "LoadBalancer" ] ]
2021-11-07 12:32:52 +00:00
type : string
default : ""
2021-11-22 23:47:25 +00:00
- variable : externalIPs
label : "External IP's"
description : "External IP's"
2021-11-07 12:32:52 +00:00
schema :
2021-11-22 23:47:25 +00:00
show_if : [ [ "type" , "=" , "LoadBalancer" ] ]
type : list
default : [ ]
items :
- variable : externalIP
label : "External IP"
schema :
type : string
- variable : ports
label : "Service's Port(s) Configuration"
2021-11-07 12:32:52 +00:00
schema :
2021-11-22 23:47:25 +00:00
type : dict
attrs :
- variable : metrics
label : "metrics Entrypoints Configurations"
2021-11-07 12:32:52 +00:00
schema :
2021-11-22 23:47:25 +00:00
type : dict
attrs :
- variable : port
label : "Port"
description : "This port exposes the container port on the service"
2021-11-07 12:32:52 +00:00
schema :
2021-11-22 23:47:25 +00:00
type : int
default : 9100
editable : true
required : true
- variable : advanced
label : "Show Advanced settings"
2021-11-07 12:32:52 +00:00
schema :
2021-11-22 23:47:25 +00:00
type : boolean
default : false
show_subquestions_if : true
subquestions :
- variable : protocol
label : "Port Type"
2021-11-07 12:32:52 +00:00
schema :
type : string
2021-11-22 23:47:25 +00:00
default : "HTTP"
enum :
- value : HTTP
description : "HTTP"
- value : "HTTPS"
description : "HTTPS"
- value : TCP
description : "TCP"
- value : "UDP"
description : "UDP"
- variable : nodePort
label : "Node Port (Optional)"
description : "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer"
2021-11-07 12:32:52 +00:00
schema :
2021-11-22 23:47:25 +00:00
type : int
min : 9000
max : 65535
- variable : targetPort
label : "Target Port"
description : "The internal(!) port on the container the Application runs on"
schema :
type : int
default : 9100
2021-11-07 12:32:52 +00:00
- 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 :
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 :
type : dict
attrs :
- variable : path
label : "path"
schema :
type : string
required : true
default : "/"
- variable : pathType
label : "pathType"
schema :
type : string
required : true
default : "Prefix"
- variable : tls
label : "TLS-Settings"
schema :
type : list
default : [ ]
items :
- variable : tlsEntry
label : "Host"
schema :
type : dict
attrs :
- variable : hosts
label : "Certificate Hosts"
schema :
type : list
default : [ ]
items :
- variable : host
label : "Host"
schema :
type : string
default : ""
required : true
- variable : scaleCert
label : "Select TrueNAS SCALE Certificate"
schema :
type : int
$ref :
- "definitions/certificate"
- variable : entrypoint
label : "(Advanced) Traefik Entrypoint"
description : "Entrypoint used by Traefik when using Traefik as Ingress Provider"
schema :
type : string
default : "websecure"
required : true
- variable : middlewares
label : "Traefik Middlewares"
description : "Add previously created Traefik Middlewares to this Ingress"
schema :
type : list
default : [ ]
items :
- variable : name
label : "Name"
schema :
type : string
default : ""
required : true
- variable : expert
label : "Show Expert Configuration Options"
schema :
type : boolean
default : false
show_subquestions_if : true
subquestions :
- variable : enableFixedMiddlewares
description : "These middlewares enforce a number of best practices."
label : "Enable Default Middlewares"
schema :
type : boolean
default : true
- variable : ingressClassName
label : "IngressClass Name"
schema :
type : string
default : ""
- variable : labelsList
label : "Labels"
schema :
type : list
default : [ ]
items :
- variable : labelItem
label : "Label"
schema :
type : dict
attrs :
- variable : name
label : "Name"
schema :
type : string
- variable : value
label : "Value"
schema :
type : string
- variable : annotationsList
label : "Annotations"
schema :
type : list
default : [ ]
items :
- variable : annotationItem
label : "Label"
schema :
type : dict
attrs :
- variable : name
label : "Name"
schema :
type : string
- variable : value
label : "Value"
schema :
type : string
- variable : ingressList
label : "Add Manual Custom Ingresses"
group : "Ingress"
schema :
type : list
default : [ ]
items :
- variable : ingressListEntry
label : "Custom Ingress"
schema :
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 : labelsList
label : "Labels"
schema :
type : list
default : [ ]
items :
- variable : labelItem
label : "Label"
schema :
type : dict
attrs :
- variable : name
label : "Name"
schema :
type : string
- variable : value
label : "Value"
schema :
type : string
- variable : annotationsList
label : "Annotations"
schema :
type : list
default : [ ]
items :
- variable : annotationItem
label : "Label"
schema :
type : dict
attrs :
- variable : name
label : "Name"
schema :
type : string
- variable : value
label : "Value"
schema :
type : string
- variable : hosts
label : "Hosts"
schema :
type : list
default : [ ]
items :
- variable : hostEntry
label : "Host"
schema :
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 :
type : dict
attrs :
- variable : path
label : "path"
schema :
type : string
required : true
default : "/"
- variable : pathType
label : "pathType"
schema :
type : string
required : true
default : "Prefix"
- variable : service
label : "Linked Service"
schema :
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 : [ ]
items :
- variable : tlsEntry
label : "Host"
schema :
type : dict
attrs :
- variable : hosts
label : "Certificate Hosts"
schema :
type : list
default : [ ]
items :
- variable : host
label : "Host"
schema :
type : string
default : ""
required : true
- variable : scaleCert
label : "Select TrueNAS SCALE Certificate"
schema :
type : int
$ref :
- "definitions/certificate"
- variable : entrypoint
label : "Traefik Entrypoint"
description : "Entrypoint used by Traefik when using Traefik as Ingress Provider"
schema :
type : string
default : "websecure"
required : true
- variable : middlewares
label : "Traefik Middlewares"
description : "Add previously created Traefik Middlewares to this Ingress"
schema :
type : list
default : [ ]
items :
- variable : name
label : "Name"
schema :
type : string
default : ""
required : true
2021-11-07 19:48:08 +00:00
2021-11-07 12:32:52 +00:00
- variable : advancedSecurity
label : "Show Advanced Security Settings"
group : "Security and Permissions"
schema :
type : boolean
default : false
show_subquestions_if : true
subquestions :
- variable : securityContext
label : "Security Context"
schema :
type : dict
attrs :
- variable : privileged
label : "Privileged mode"
schema :
type : boolean
default : false
- variable : readOnlyRootFilesystem
label : "ReadOnly Root Filesystem"
schema :
type : boolean
2021-11-22 23:47:25 +00:00
default : true
2021-11-07 12:32:52 +00:00
- variable : allowPrivilegeEscalation
label : "Allow Privilege Escalation"
schema :
type : boolean
default : false
- variable : runAsNonRoot
label : "runAsNonRoot"
schema :
type : boolean
2021-11-07 19:48:08 +00:00
default : true
2021-11-07 12:32:52 +00:00
- variable : podSecurityContext
group : "Security and Permissions"
label : "Pod Security Context"
schema :
type : dict
attrs :
- variable : runAsUser
label : "runAsUser"
description : "The UserID of the user running the application"
schema :
type : int
2021-11-07 19:48:08 +00:00
default : 568
2021-11-07 12:32:52 +00:00
- variable : runAsGroup
label : "runAsGroup"
description : The groupID this App of the user running the application"
schema :
type : int
2021-11-07 19:48:08 +00:00
default : 568
2021-11-07 12:32:52 +00:00
- variable : fsGroup
label : "fsGroup"
description : "The group that should own ALL storage."
schema :
type : int
default : 568
- variable : supplementalGroups
label : "supplemental Groups"
schema :
type : list
default : [ ]
items :
- variable : supplementalGroupsEntry
label : "supplemental Group"
schema :
type : int
- variable : fsGroupChangePolicy
label : "When should we take ownership?"
schema :
type : string
default : "OnRootMismatch"
enum :
- value : "OnRootMismatch"
description : "OnRootMismatch"
- value : "Always"
description : "Always"
2021-11-07 17:16:28 +00:00
- variable : advancedresources
label : "Set Custom Resource Limits/Requests (Advanced)"
2021-11-07 12:32:52 +00:00
group : "Resources and Devices"
schema :
2021-11-07 17:16:28 +00:00
type : boolean
default : false
show_subquestions_if : true
subquestions :
- variable : resources
label : ""
2021-11-07 12:32:52 +00:00
schema :
type : dict
attrs :
2021-11-07 17:16:28 +00:00
- variable : limits
label : "Advanced Limit Resource Consumption"
2021-11-07 12:32:52 +00:00
schema :
2021-11-07 17:16:28 +00:00
type : dict
attrs :
- variable : cpu
label : "CPU"
schema :
type : string
default : "4000m"
valid_chars : '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$'
- variable : memory
label : "Memory RAM"
schema :
type : string
default : "8Gi"
valid_chars : '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$'
- variable : requests
label : "Advanced Request minimum resources required"
2021-11-07 12:32:52 +00:00
schema :
2021-11-07 17:16:28 +00:00
type : dict
attrs :
- variable : cpu
label : "CPU"
schema :
type : string
default : "10m"
valid_chars : '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$'
- variable : memory
label : "Memory RAM"
schema :
type : string
default : "50Mi"
valid_chars : '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$'
2021-11-07 12:32:52 +00:00
- variable : deviceList
label : "Mount USB devices"
group : "Resources and Devices"
schema :
type : list
default : [ ]
items :
- variable : deviceListEntry
label : "Device"
schema :
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 : "hostPath"
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"
2021-11-14 18:24:25 +00:00
# Specify GPU configuration
- variable : scaleGPU
label : "GPU Configuration"
group : "Resources and Devices"
schema :
type : dict
$ref :
- "definitions/gpuConfiguration"
attrs : [ ]
2021-11-07 12:32:52 +00:00
- variable : autoscaling
group : "Advanced"
label : "(Advanced) Horizontal Pod Autoscaler"
schema :
type : dict
attrs :
- 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 : addons
group : "Addons"
label : ""
schema :
type : dict
attrs :
- variable : vpn
label : "VPN"
schema :
type : dict
attrs :
- variable : type
label : "Type"
schema :
type : string
default : "disabled"
enum :
- value : "disabled"
description : "disabled"
- value : "openvpn"
description : "OpenVPN"
- value : "wireguard"
description : "Wireguard"
- variable : openvpn
label : "OpenVPN Settings"
schema :
type : dict
show_if : [ [ "type" , "=" , "openvpn" ] ]
attrs :
- variable : username
label : "authentication username"
description : "authentication username, optional"
schema :
type : string
default : ""
- variable : password
label : "authentication password"
description : "authentication credentials"
schema :
type : string
default : ""
required : true
- 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 ipv4 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 : dict
show_if : [ [ "type" , "!=" , "disabled" ] ]
attrs :
- variable : enabled
label : "enabled"
schema :
type : boolean
default : true
hidden : true
- variable : type
label : "type"
schema :
type : string
default : "hostPath"
hidden : true
- variable : hostPathType
label : "hostPathType"
schema :
type : string
default : "File"
hidden : true
- variable : noMount
label : "noMount"
schema :
type : boolean
default : true
hidden : true
- variable : hostPath
label : "Full path to file"
description : "path to your local VPN config file for example: /mnt/tank/vpn.conf or /mnt/tank/vpn.ovpn"
schema :
type : string
default : ""
required : true
- variable : envList
label : "VPN environment Variables"
schema :
type : list
show_if : [ [ "type" , "!=" , "disabled" ] ]
default : [ ]
items :
- variable : envItem
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 : codeserver
label : "Codeserver"
schema :
type : dict
attrs :
- variable : enabled
label : "enabled"
schema :
type : boolean
default : false
show_subquestions_if : true
subquestions :
- variable : git
label : "Git Settings"
schema :
type : dict
attrs :
- variable : deployKey
description : "Raw SSH private key"
label : "deployKey"
schema :
type : string
- variable : deployKeyBase64
description : "Base64-encoded SSH private key. When both variables are set, the raw SSH key takes precedence"
label : "deployKeyBase64"
schema :
type : string
- variable : service
label : ""
schema :
type : dict
attrs :
- variable : type
label : "Service Type"
description : "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer"
schema :
type : string
default : "NodePort"
enum :
- value : "NodePort"
description : "NodePort"
- value : "ClusterIP"
description : "ClusterIP"
- value : "LoadBalancer"
description : "LoadBalancer"
- variable : loadBalancerIP
label : "LoadBalancer IP"
description : "LoadBalancerIP"
schema :
show_if : [ [ "type" , "=" , "LoadBalancer" ] ]
type : string
default : ""
- variable : externalIPs
label : "External IP's"
description : "External IP's"
schema :
show_if : [ [ "type" , "=" , "LoadBalancer" ] ]
type : list
default : [ ]
items :
- variable : externalIP
label : "External IP"
schema :
type : string
- variable : ports
label : ""
schema :
type : dict
attrs :
- variable : codeserver
label : ""
schema :
type : dict
attrs :
- variable : nodePort
description : "leave empty to disable"
label : "nodePort"
schema :
type : int
default : 36107
- variable : envList
label : "Codeserver environment Variables"
schema :
type : list
show_if : [ [ "type" , "!=" , "disabled" ] ]
default : [ ]
items :
- variable : envItem
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 : promtail
label : "Promtail"
schema :
type : dict
attrs :
- variable : enabled
label : "enabled"
schema :
type : boolean
default : false
show_subquestions_if : true
subquestions :
- variable : loki
label : "Loki URL"
schema :
type : string
required : true
- variable : logs
label : "Log Paths"
schema :
type : dict
attrs :
- variable : name
label : "Name"
schema :
type : string
required : true
- variable : path
label : "Path"
schema :
type : string
required : true
- variable : args
label : "Promtail ecommand line arguments"
schema :
type : list
show_if : [ [ "type" , "!=" , "disabled" ] ]
default : [ ]
items :
- variable : arg
label : "Arg"
schema :
type : string
required : true
- variable : envList
label : "Promtail environment Variables"
schema :
type : list
show_if : [ [ "type" , "!=" , "disabled" ] ]
default : [ ]
items :
- variable : envItem
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 : netshoot
label : "Netshoot"
schema :
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 :
type : dict
attrs :
- variable : name
label : "Name"
schema :
type : string
required : true
- variable : value
label : "Value"
schema :
type : string
required : true