2021-09-13 06:58:34 -04:00
# Include{groups}
2021-08-16 08:42:21 -04:00
portals :
web_portal :
protocols :
- "$kubernetes-resource_configmap_portal_protocol"
host :
- "$kubernetes-resource_configmap_portal_host"
ports :
- "$kubernetes-resource_configmap_portal_port"
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 : controller
group : "Controller"
label : ""
schema :
type : dict
attrs :
- 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-09-26 16:28:43 -04:00
default : "RollingUpdate"
2021-08-16 08:42:21 -04: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"
2021-09-13 06:58:34 -04:00
# Include{controllerExpert}
2021-08-16 08:42:21 -04:00
- variable : env
group : "Container Configuration"
label : "Image Environment"
schema :
type : dict
attrs :
2021-10-04 07:27:12 -04:00
# Include{fixedEnv}
2021-09-13 06:58:34 -04:00
# Include{containerConfig}
2021-08-16 08:42:21 -04:00
- variable : littlelink
label : ""
group : "App Configuration"
schema :
type : dict
attrs :
- variable : meta_title
label : "meta title"
schema :
type : string
default : ""
- variable : meta_description
label : "meta description"
schema :
type : string
default : ""
- variable : meta_author
label : "meta_author"
schema :
type : string
default : ""
- variable : theme
label : "theme"
schema :
type : string
default : ""
- variable : favicon_url
label : "favicon_url"
schema :
type : string
default : ""
- variable : avatar_url
label : "avatar_url"
schema :
type : string
default : ""
- variable : avatar_2x_url
label : "avatar_2x_url"
schema :
type : string
default : ""
- variable : avatar_alt
label : "avatar_alt"
schema :
type : string
default : ""
- variable : name
label : "name"
schema :
type : string
default : ""
- variable : bio
label : "bio"
schema :
type : string
default : ""
- variable : github
label : "github"
schema :
type : string
default : ""
- variable : twitter
label : "twitter"
schema :
type : string
default : ""
- variable : instagram
label : "instagram"
schema :
type : string
default : ""
- variable : youtube
label : "youtube"
schema :
type : string
default : ""
- variable : twitch
label : "twitch"
schema :
type : string
default : ""
- variable : discord
label : "discord"
schema :
type : string
default : ""
- variable : tiktok
label : "tiktok"
schema :
type : string
default : ""
- variable : kit
label : "kit"
schema :
type : string
default : ""
- variable : facebook
label : "facebook"
schema :
type : string
default : ""
- variable : facebook_messenger
label : "facebook_messenger"
schema :
type : string
default : ""
- variable : linked_in
label : "linked_in"
schema :
type : string
default : ""
- variable : product_hunt
label : "product_hunt"
schema :
type : string
default : ""
- variable : snapchat
label : "snapchat"
schema :
type : string
default : ""
- variable : spotify
label : "spotify"
schema :
type : string
default : ""
- variable : reddit
label : "reddit"
schema :
type : string
default : ""
- variable : medium
label : "medium"
schema :
type : string
default : ""
- variable : pinterest
label : "pinterest"
schema :
type : string
default : ""
- variable : email
label : "email"
schema :
type : string
default : ""
- variable : email_alt
label : "email_alt"
schema :
type : string
default : ""
- variable : sound_cloud
label : "sound_cloud"
schema :
type : string
default : ""
- variable : figma
label : "figma"
schema :
type : string
default : ""
- variable : telegram
label : "telegram"
schema :
type : string
default : ""
- variable : tumblr
label : "tumblr"
schema :
type : string
default : ""
- variable : steam
label : "steam"
schema :
type : string
default : ""
- variable : vimeo
label : "vimeo"
schema :
type : string
default : ""
- variable : wordpress
label : "wordpressp"
schema :
type : string
default : ""
- variable : goodreads
label : "goodreads"
schema :
type : string
default : ""
- variable : skoob
label : "skoob"
schema :
type : string
default : ""
- variable : footer
label : "footer"
schema :
type : string
default : ""
- variable : service
group : "Networking and Services"
label : "Configure Service(s)"
schema :
type : dict
attrs :
- variable : main
label : "Main Service"
description : "The Primary service on which the healthcheck runs, often the webUI"
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 : "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 : "Service's Port(s) Configuration"
schema :
type : dict
attrs :
- variable : main
label : "Main Service Port Configuration"
schema :
type : dict
attrs :
- variable : enabled
label : "Enable the port"
schema :
type : boolean
default : true
hidden : true
- variable : protocol
label : "Port Type"
schema :
type : string
default : "HTTP"
enum :
- value : HTTP
description : "HTTP"
- value : "HTTPS"
description : "HTTPS"
- value : TCP
description : "TCP"
- value : "UDP"
description : "UDP"
2021-08-30 16:55:51 -04:00
- variable : targetPort
label : "Target Port"
description : "This port exposes the container port on the service"
2021-08-16 08:42:21 -04:00
schema :
type : int
default : 3000
editable : false
hidden : true
2021-08-30 16:55:51 -04:00
- variable : port
label : "Container Port"
2021-08-16 08:42:21 -04:00
schema :
type : int
default : 3000
editable : true
required : true
- variable : nodePort
label : "Node Port (Optional)"
description : "This port gets exposed to the node. Only considered when service type is NodePort"
schema :
type : int
min : 9000
max : 65535
default : 36092
2021-09-13 12:49:14 -04:00
- variable : serviceexpert
group : "Networking and Services"
label : "Show Expert Config"
schema :
type : boolean
default : false
show_subquestions_if : true
subquestions :
- variable : hostNetwork
group : "Networking and Services"
label : "Host-Networking (Complicated)"
schema :
type : boolean
default : false
- variable : dnsPolicy
group : "Networking and Services"
label : "dnsPolicy"
schema :
type : string
default : ""
enum :
- value : ""
description : "Default"
- value : "ClusterFirst"
description : "ClusterFirst"
- value : "ClusterFirstWithHostNet"
description : "ClusterFirstWithHostNet"
- value : "None"
description : "None"
- variable : dnsConfig
label : "DNS Configuration"
group : "Networking and Services"
description : "Specify custom DNS configuration which will be applied to the pod"
schema :
type : dict
attrs :
- variable : nameservers
label : "Nameservers"
schema :
default : [ ]
type : list
items :
- variable : nameserver
label : "Nameserver"
schema :
type : string
- variable : options
label : "options"
schema :
default : [ ]
type : list
items :
- variable : option
label : "Option Entry"
schema :
type : string
- variable : searches
label : "Searches"
schema :
default : [ ]
type : list
items :
- variable : search
label : "Search Entry"
schema :
type : string
2021-09-13 06:58:34 -04:00
# Include{serviceList}
2021-08-30 09:58:30 -04:00
2021-09-13 06:58:34 -04:00
# Include{persistenceList}
2021-08-16 08:42:21 -04:00
- variable : ingress
label : ""
group : "Ingress"
schema :
type : dict
attrs :
- variable : main
label : "Main Ingress"
schema :
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 :
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
2021-09-13 12:49:14 -04:00
label : "(Advanced) Traefik Entrypoint"
2021-08-16 08:42:21 -04:00
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-08-30 09:58:30 -04:00
2021-09-13 12:49:14 -04:00
- variable : expert
label : "Show Expert Configuration Options"
schema :
type : boolean
default : false
show_subquestions_if : true
subquestions :
2021-10-04 18:39:13 -04:00
- variable : enableFixedMiddlewares
description : "These middlewares enforce a number of best practices."
label : "Enable Default Middlewares"
schema :
type : boolean
default : true
2021-09-13 12:49:14 -04:00
- 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
2021-09-13 06:58:34 -04:00
# Include{ingressList}
2021-08-28 08:27:27 -04:00
- variable : securityContext
group : "Security and Permissions"
label : "Security Context"
schema :
type : dict
attrs :
- variable : privileged
2021-09-07 18:47:09 -04:00
label : "Privileged mode"
2021-08-28 08:27:27 -04:00
schema :
type : boolean
default : false
- variable : readOnlyRootFilesystem
label : "ReadOnly Root Filesystem"
schema :
type : boolean
2021-09-26 14:05:21 -04:00
default : true
2021-08-28 08:27:27 -04:00
- variable : allowPrivilegeEscalation
label : "Allow Privilege Escalation"
schema :
type : boolean
2021-09-26 14:05:21 -04:00
default : false
2021-09-10 09:26:10 -04:00
- variable : runAsNonRoot
label : "runAsNonRoot"
schema :
type : boolean
2021-09-26 14:05:21 -04:00
default : true
- 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
default : 568
- variable : runAsGroup
label : "runAsGroup"
description : The groupID this App of the user running the application"
schema :
type : int
default : 568
- 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-09-26 14:44:02 -04:00
# Include{resources}
2021-08-30 09:58:30 -04:00
2021-10-04 07:46:38 -04:00
# Include{advanced}
2021-09-13 06:58:34 -04:00
# Include{addons}