2021-07-06 13:57:15 +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 : "Advanced"
description : "Advanced Configuration"
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
2021-07-06 13:58:28 +00:00
default : false
2021-07-06 13:57:15 +00:00
- 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
2021-08-31 18:49:20 +00:00
default : "statefulset"
2021-07-06 13:57:15 +00:00
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-07-06 13:58:28 +00:00
default : "RollingUpdate"
2021-07-06 13:57:15 +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"
2021-08-30 13:58:30 +00:00
- 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
- 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
- variable : termination
group : "Container Configuration"
label : "Termination settings"
schema :
type : dict
attrs :
- variable : gracePeriodSeconds
label : "Grace Period Seconds"
schema :
type : int
default : 10
2021-07-06 13:57:15 +00:00
- variable : env
group : "Container Configuration"
label : "Image Environment"
schema :
type : dict
attrs :
- variable : TZ
label : "Timezone"
schema :
type : string
default : "Etc/UTC"
$ref :
- "definitions/timezone"
- variable : UMASK
label : "UMASK"
description : "Sets the UMASK env var for LinuxServer.io (compatible) containers"
schema :
type : string
default : "002"
- variable : LDAP_LOG_LEVEL
label : "LDAP_LOG_LEVEL"
schema :
type : string
required : true
default : "256"
- variable : LDAP_ORGANISATION
label : "LDAP_ORGANISATION"
schema :
type : string
required : true
default : "Example Company or Household"
- variable : LDAP_DOMAIN
label : "LDAP_DOMAIN"
schema :
type : string
required : true
default : "example.org"
- variable : LDAP_READONLY_USER
label : "LDAP_READONLY_USER"
schema :
type : string
required : true
default : "false"
- variable : LDAP_READONLY_USER_USERNAME
label : "LDAP_READONLY_USER_USERNAME"
schema :
type : string
required : true
default : "readonly"
- variable : LDAP_READONLY_USER_PASSWORD
label : "LDAP_READONLY_USER_PASSWORD"
schema :
type : string
required : true
default : "readonly"
- variable : LDAP_RFC2307BIS_SCHEMA
label : "LDAP_RFC2307BIS_SCHEMA"
schema :
type : string
required : true
default : "false"
- variable : LDAP_BACKEND
label : "LDAP_BACKEND"
schema :
type : string
required : true
default : "mdb"
- variable : LDAP_TLS
label : "LDAP_TLS"
schema :
type : string
required : true
default : "true"
- variable : LDAP_TLS_ENFORCE
label : "LDAP_TLS_ENFORCE"
schema :
type : string
required : true
default : "false"
- variable : LDAP_TLS_VERIFY_CLIENT
label : "LDAP_TLS_VERIFY_CLIENT"
schema :
type : string
required : true
default : "never"
- variable : LDAP_TLS_PROTOCOL_MIN
label : "LDAP_TLS_PROTOCOL_MIN"
schema :
type : string
required : true
default : "3.0"
- variable : LDAP_TLS_CIPHER_SUITE
label : "LDAP_TLS_CIPHER_SUITE"
schema :
type : string
required : true
default : "NORMAL"
- variable : LDAP_TLS_REQCERT
label : "LDAP_TLS_REQCERT"
schema :
type : string
required : true
default : "never"
- variable : CONTAINER_LOG_LEVEL
label : "CONTAINER_LOG_LEVEL"
schema :
type : string
required : true
default : "4"
- variable : KEEP_EXISTING_CONFIG
label : "KEEP_EXISTING_CONFIG"
schema :
type : string
required : true
default : "false"
- variable : LDAP_REMOVE_CONFIG_AFTER_SETUP
label : "LDAP_REMOVE_CONFIG_AFTER_SETUP"
schema :
type : string
required : true
default : "true"
- variable : LDAP_SSL_HELPER_PREFIX
label : "LDAP_SSL_HELPER_PREFIX"
schema :
type : string
required : true
default : "ldap"
- variable : LDAP_ADMIN_PASSWORD
label : "LDAP_ADMIN_PASSWORD"
schema :
type : string
required : true
default : ""
- variable : LDAP_CONFIG_PASSWORD
label : "LDAP_CONFIG_PASSWORD"
schema :
type : string
required : true
default : ""
# Configure Enviroment Variables
- 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 : hostNetwork
group : "Networking and Services"
label : "Enable Host Networking"
schema :
type : boolean
default : false
- 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 : "TCP"
enum :
- value : HTTP
description : "HTTP"
- value : "HTTPS"
description : "HTTPS"
- value : TCP
description : "TCP"
- value : "UDP"
description : "UDP"
2021-08-30 20:55:51 +00:00
- variable : targetPort
label : "Target Port"
description : "This port exposes the container port on the service"
2021-07-06 13:57:15 +00:00
schema :
type : int
default : 389
editable : false
hidden : true
2021-08-30 20:55:51 +00:00
- variable : port
label : "Container Port"
2021-07-06 13:57:15 +00:00
schema :
type : int
default : 389
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 : 36094
- variable : ldaps
label : "ldaps Service"
description : "The ldaps service"
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 : "TCP"
enum :
- value : HTTP
description : "HTTP"
- value : "HTTPS"
description : "HTTPS"
- value : TCP
description : "TCP"
- value : "UDP"
description : "UDP"
2021-08-30 20:55:51 +00:00
- variable : targetPort
label : "Target Port"
description : "This port exposes the container port on the service"
2021-07-06 13:57:15 +00:00
schema :
type : int
default : 636
editable : false
hidden : true
2021-08-30 20:55:51 +00:00
- variable : port
label : "Container Port"
2021-07-06 13:57:15 +00:00
schema :
type : int
default : 636
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 : 36095
2021-08-30 13:58:30 +00:00
- variable : serviceList
label : "Additional Services"
group : "Storage and Persistence"
schema :
type : list
default : [ ]
items :
- variable : serviceListEntry
label : "Custom Service"
schema :
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, 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 : portsList
label : "Additional Service Ports"
schema :
type : list
default : [ ]
items :
- variable : portsListEntry
label : "Custom ports"
schema :
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
2021-08-30 20:55:51 +00:00
required : true
- variable : port
label : "Container Port"
schema :
type : int
2021-08-30 13:58:30 +00:00
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
2021-07-06 13:57:15 +00:00
- variable : volumeClaimTemplates
label : "Integrated Persistent Storage"
description : "Integrated Persistent Storage"
group : "Storage and Persistence"
schema :
type : dict
attrs :
- variable : data
label : "App Data Storage"
description : "Stores the Application Data."
schema :
type : dict
attrs :
- variable : enabled
label : "Enable the storage"
schema :
type : boolean
default : true
hidden : true
- variable : type
label : "(Advanced) Type of Storage"
description : "Sets the persistence type"
schema :
type : string
default : "pvc"
enum :
- value : "pvc"
description : "pvc"
- variable : storageClass
label : "(Advanced) storageClass"
description : " Warning: Anything other than SCALE-ZFS will break rollback!"
schema :
show_if : [ [ "type" , "=" , "pvc" ] ]
type : string
default : "SCALE-ZFS"
- variable : setPermissions
label : "Automatic Permissions"
description : "Automatically set permissions on install"
schema :
show_if : [ [ "type" , "=" , "hostPath" ] ]
type : boolean
default : true
- variable : readOnly
label : "readOnly"
schema :
type : boolean
default : false
- variable : hostPath
label : "hostPath"
description : "Path inside the container the storage is mounted"
schema :
show_if : [ [ "type" , "=" , "hostPath" ] ]
type : hostpath
- variable : hostPathType
label : "hostPath Type"
schema :
show_if : [ [ "type" , "=" , "hostPath" ] ]
type : string
default : ""
enum :
- value : ""
description : "Default"
- value : "DirectoryOrCreate"
description : "DirectoryOrCreate"
- value : "Directory"
description : "Directory"
- value : "FileOrCreate"
description : "FileOrCreate"
- value : "File"
description : "File"
- value : "Socket"
description : "Socket"
- value : "CharDevice"
description : "CharDevice"
- value : "BlockDevice"
description : "BlockDevice"
- variable : mountPath
label : "mountPath"
description : "Path inside the container the storage is mounted"
schema :
type : string
default : "/var/lib/ldap"
hidden : true
- variable : medium
label : "EmptyDir Medium"
schema :
show_if : [ [ "type" , "=" , "emptyDir" ] ]
type : string
default : ""
enum :
- value : ""
description : "Default"
- value : "Memory"
description : "Memory"
- variable : accessMode
label : "Access Mode (Advanced)"
description : "Allow or disallow multiple PVC's writhing to the same PV"
schema :
show_if : [ [ "type" , "=" , "pvc" ] ]
type : string
default : "ReadWriteOnce"
enum :
- value : "ReadWriteOnce"
description : "ReadWriteOnce"
- value : "ReadOnlyMany"
description : "ReadOnlyMany"
- value : "ReadWriteMany"
description : "ReadWriteMany"
- variable : size
label : "Size quotum of storage"
schema :
show_if : [ [ "type" , "=" , "pvc" ] ]
type : string
default : "100Gi"
- variable : slapd
label : "slapd Storage"
description : "Stores the Application slapd."
schema :
type : dict
attrs :
- variable : enabled
label : "Enable the storage"
schema :
type : boolean
default : true
hidden : true
- variable : noMount
label : "Do not mount this storage inside the main pod"
schema :
type : boolean
default : true
hidden : true
- variable : forceName
label : "Override PVC Name (advanced)"
description : "Forces a certain name for the PVC"
schema :
type : string
default : "db"
hidden : true
- variable : type
label : "(Advanced) Type of Storage"
description : "Sets the persistence type"
schema :
type : string
default : "pvc"
hidden : true
enum :
- value : "pvc"
description : "pvc"
- variable : storageClass
label : "(Advanced) storageClass"
description : " Warning: Anything other than SCALE-ZFS will break rollback!"
schema :
show_if : [ [ "type" , "=" , "pvc" ] ]
type : string
default : "SCALE-ZFS"
- variable : mountPath
label : "mountPath"
description : "Path inside the container the storage is mounted"
schema :
type : string
default : "/etc/ldap/slapd.d"
hidden : true
- variable : medium
label : "EmptyDir Medium"
schema :
show_if : [ [ "type" , "=" , "emptyDir" ] ]
type : string
default : ""
enum :
- value : ""
description : "Default"
- value : "Memory"
description : "Memory"
- variable : accessMode
label : "Access Mode (Advanced)"
description : "Allow or disallow multiple PVC's writhing to the same PV"
schema :
show_if : [ [ "type" , "=" , "pvc" ] ]
type : string
default : "ReadWriteOnce"
enum :
- value : "ReadWriteOnce"
description : "ReadWriteOnce"
- value : "ReadOnlyMany"
description : "ReadOnlyMany"
- value : "ReadWriteMany"
description : "ReadWriteMany"
- variable : size
label : "Size quotum of storage"
schema :
show_if : [ [ "type" , "=" , "pvc" ] ]
type : string
default : "100Gi"
- variable : persistenceList
label : "Additional app storage"
group : "Storage and Persistence"
schema :
type : list
default : [ ]
items :
- variable : persistenceListEntry
label : "Custom Storage"
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"
enum :
- value : "pvc"
description : "pvc"
- value : "emptyDir"
description : "emptyDir"
- value : "hostPath"
description : "hostPath"
- variable : storageClass
label : "(Advanced) storageClass"
description : " Warning: Anything other than SCALE-ZFS will break rollback!"
schema :
show_if : [ [ "type" , "=" , "pvc" ] ]
type : string
default : "SCALE-ZFS"
- variable : setPermissions
label : "Automatic Permissions"
description : "Automatically set permissions on install"
schema :
show_if : [ [ "type" , "=" , "hostPath" ] ]
type : boolean
default : true
- variable : readOnly
label : "readOnly"
schema :
type : boolean
default : false
- variable : hostPath
label : "hostPath"
description : "Path inside the container the storage is mounted"
schema :
show_if : [ [ "type" , "=" , "hostPath" ] ]
type : hostpath
- variable : hostPathType
label : "hostPath Type"
schema :
show_if : [ [ "type" , "=" , "hostPath" ] ]
type : string
default : ""
enum :
- value : ""
description : "Default"
- value : "DirectoryOrCreate"
description : "DirectoryOrCreate"
- value : "Directory"
description : "Directory"
- value : "FileOrCreate"
description : "FileOrCreate"
- value : "File"
description : "File"
- value : "Socket"
description : "Socket"
- value : "CharDevice"
description : "CharDevice"
- value : "BlockDevice"
description : "BlockDevice"
- variable : mountPath
label : "mountPath"
description : "Path inside the container the storage is mounted"
schema :
type : string
required : true
default : ""
- variable : medium
label : "EmptyDir Medium"
schema :
show_if : [ [ "type" , "=" , "emptyDir" ] ]
type : string
default : ""
enum :
- value : ""
description : "Default"
- value : "Memory"
description : "Memory"
- variable : accessMode
label : "Access Mode (Advanced)"
description : "Allow or disallow multiple PVC's writhing to the same PVC"
schema :
show_if : [ [ "type" , "=" , "pvc" ] ]
type : string
default : "ReadWriteOnce"
enum :
- value : "ReadWriteOnce"
description : "ReadWriteOnce"
- value : "ReadOnlyMany"
description : "ReadOnlyMany"
- value : "ReadWriteMany"
description : "ReadWriteMany"
- variable : size
label : "Size quotum of storage"
schema :
show_if : [ [ "type" , "=" , "pvc" ] ]
type : string
default : "100Gi"
2021-08-28 12:27:27 +00:00
- variable : securityContext
group : "Security and Permissions"
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
default : false
- variable : allowPrivilegeEscalation
label : "Allow Privilege Escalation"
schema :
type : boolean
default : true
2021-07-06 13:57:15 +00:00
- variable : resources
group : "Resources and Devices"
label : ""
schema :
type : dict
attrs :
- variable : limits
label : "Advanced Limit Resource Consumption"
schema :
type : dict
attrs :
- variable : cpu
label : "CPU"
schema :
type : string
default : "2000m"
- variable : memory
label : "Memory RAM"
schema :
type : string
default : "2Gi"
- variable : requests
label : "Advanced Request minimum resources required"
schema :
type : dict
attrs :
- variable : cpu
label : "CPU"
schema :
type : string
default : "10m"
- variable : memory
label : "Memory RAM"
schema :
type : string
default : "50Mi"
2021-08-30 13:58:30 +00:00
- variable : autoscaling
group : "Resources and Devices"
label : "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