2022-06-07 20:31:13 +00:00
|
|
|
groups:
|
2022-08-09 00:29:33 +00:00
|
|
|
- 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: Metrics
|
|
|
|
description: Metrics
|
|
|
|
- name: Addons
|
|
|
|
description: Addon Configuration
|
|
|
|
- name: Advanced
|
|
|
|
description: Advanced Configuration
|
2022-08-12 23:56:20 +00:00
|
|
|
- name: Documentation
|
|
|
|
description: Documentation
|
2022-06-07 20:31:13 +00:00
|
|
|
portals:
|
|
|
|
open:
|
|
|
|
protocols:
|
|
|
|
- "$kubernetes-resource_configmap_portal_protocol"
|
|
|
|
host:
|
|
|
|
- "$kubernetes-resource_configmap_portal_host"
|
|
|
|
ports:
|
|
|
|
- "$kubernetes-resource_configmap_portal_port"
|
|
|
|
questions:
|
2022-08-09 00:29:33 +00:00
|
|
|
- variable: global
|
|
|
|
label: Global Settings
|
|
|
|
group: Controller
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: dict
|
|
|
|
hidden: true
|
|
|
|
attrs:
|
2022-08-09 00:29:33 +00:00
|
|
|
- variable: isSCALE
|
|
|
|
label: Flag this is SCALE
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: boolean
|
|
|
|
default: true
|
2022-08-09 00:29:33 +00:00
|
|
|
hidden: true
|
|
|
|
- variable: controller
|
|
|
|
group: Controller
|
|
|
|
label: ""
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
2022-08-09 00:29:33 +00:00
|
|
|
additional_attrs: true
|
2022-06-07 20:31:13 +00:00
|
|
|
type: dict
|
|
|
|
attrs:
|
2022-08-09 00:29:33 +00:00
|
|
|
- variable: advanced
|
|
|
|
label: Show Advanced Controller Settings
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: boolean
|
2022-08-09 00:29:33 +00:00
|
|
|
default: false
|
|
|
|
show_subquestions_if: true
|
|
|
|
subquestions:
|
|
|
|
- variable: type
|
|
|
|
description: Please specify type of workload to deploy
|
|
|
|
label: (Advanced) Controller Type
|
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
required: true
|
|
|
|
enum:
|
|
|
|
- value: deployment
|
|
|
|
description: Deployment
|
|
|
|
- value: statefulset
|
|
|
|
description: Statefulset
|
|
|
|
- value: daemonset
|
|
|
|
description: Daemonset
|
2022-06-07 20:31:13 +00:00
|
|
|
- variable: service
|
2022-08-09 00:29:33 +00:00
|
|
|
group: Networking and Services
|
|
|
|
label: Configure Service(s)
|
2022-06-07 20:31:13 +00:00
|
|
|
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: "ExternalIP gets connected to using an IP and port, ExternalName gets connected to using a domain name"
|
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
default: "ExternalIP"
|
|
|
|
enum:
|
|
|
|
- value: "ExternalName"
|
|
|
|
description: "ExternalName"
|
|
|
|
- value: "ExternalIP"
|
|
|
|
description: "ExternalIP"
|
|
|
|
- variable: externalName
|
|
|
|
label: "External Service Domainname"
|
|
|
|
description: "Domainname of External service"
|
|
|
|
schema:
|
|
|
|
show_if: [["type", "=", "ExternalName"]]
|
|
|
|
type: string
|
|
|
|
default: "google.com"
|
|
|
|
- variable: externalIP
|
|
|
|
label: "External Service IP"
|
|
|
|
description: "IP of External service"
|
|
|
|
schema:
|
|
|
|
show_if: [["type", "=", "ExternalIP"]]
|
|
|
|
type: string
|
|
|
|
default: "1.1.1.1"
|
|
|
|
- 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: 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"
|
|
|
|
- variable: port
|
|
|
|
label: "Service Port"
|
|
|
|
description: "Both the external service port and internal service port will be the same"
|
|
|
|
schema:
|
|
|
|
type: int
|
|
|
|
default: 10003
|
|
|
|
- variable: ingress
|
|
|
|
label: ""
|
2022-08-09 00:29:33 +00:00
|
|
|
group: Ingress
|
2022-06-07 20:31:13 +00:00
|
|
|
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: annotations
|
|
|
|
label: "annoations"
|
|
|
|
schema:
|
|
|
|
type: dict
|
|
|
|
hidden: true
|
|
|
|
attrs:
|
|
|
|
- variable: traefik.frontend.passHostHeader
|
|
|
|
label: "passHostHeader"
|
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
default: "false"
|
|
|
|
hidden: true
|
|
|
|
- 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: "pathType"
|
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
required: true
|
|
|
|
default: "Prefix"
|
|
|
|
- variable: tls
|
2022-08-09 00:29:33 +00:00
|
|
|
label: TLS-Settings
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: list
|
|
|
|
default: []
|
|
|
|
items:
|
|
|
|
- variable: tlsEntry
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Host
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
additional_attrs: true
|
|
|
|
type: dict
|
|
|
|
attrs:
|
|
|
|
- variable: hosts
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Certificate Hosts
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: list
|
|
|
|
default: []
|
|
|
|
items:
|
|
|
|
- variable: host
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Host
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
default: ""
|
|
|
|
required: true
|
|
|
|
- variable: scaleCert
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Select TrueNAS SCALE Certificate
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: int
|
|
|
|
$ref:
|
|
|
|
- "definitions/certificate"
|
|
|
|
- variable: entrypoint
|
2022-08-09 00:29:33 +00:00
|
|
|
label: (Advanced) Traefik Entrypoint
|
|
|
|
description: Entrypoint used by Traefik when using Traefik as Ingress Provider
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: string
|
2022-08-09 00:29:33 +00:00
|
|
|
default: websecure
|
2022-06-07 20:31:13 +00:00
|
|
|
required: true
|
|
|
|
- variable: middlewares
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Traefik Middlewares
|
|
|
|
description: Add previously created Traefik Middlewares to this Ingress
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: list
|
|
|
|
default: []
|
|
|
|
items:
|
|
|
|
- variable: name
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Name
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
default: ""
|
|
|
|
required: true
|
|
|
|
- variable: expert
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Show Expert Configuration Options
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: boolean
|
|
|
|
default: false
|
|
|
|
show_subquestions_if: true
|
|
|
|
subquestions:
|
|
|
|
- variable: enableFixedMiddlewares
|
2022-08-09 00:29:33 +00:00
|
|
|
description: These middlewares enforce a number of best practices.
|
|
|
|
label: Enable Default Middlewares
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: boolean
|
|
|
|
default: true
|
|
|
|
- variable: ingressClassName
|
2022-08-09 00:29:33 +00:00
|
|
|
label: IngressClass Name
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
default: ""
|
|
|
|
- variable: labelsList
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Labels
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: list
|
|
|
|
default: []
|
|
|
|
items:
|
|
|
|
- variable: labelItem
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Label
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
additional_attrs: true
|
|
|
|
type: dict
|
|
|
|
attrs:
|
|
|
|
- variable: name
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Name
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
- variable: value
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Value
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
- variable: annotationsList
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Annotations
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: list
|
|
|
|
default: []
|
|
|
|
items:
|
|
|
|
- variable: annotationItem
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Label
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
additional_attrs: true
|
|
|
|
type: dict
|
|
|
|
attrs:
|
|
|
|
- variable: name
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Name
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
- variable: value
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Value
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
- variable: ingressList
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Add Manual Custom Ingresses
|
|
|
|
group: Ingress
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: list
|
|
|
|
default: []
|
|
|
|
items:
|
|
|
|
- variable: ingressListEntry
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Custom Ingress
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
additional_attrs: true
|
|
|
|
type: dict
|
|
|
|
attrs:
|
|
|
|
- variable: enabled
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Enable Ingress
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: boolean
|
|
|
|
default: true
|
|
|
|
hidden: true
|
|
|
|
- variable: name
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Name
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
default: ""
|
|
|
|
- variable: ingressClassName
|
2022-08-09 00:29:33 +00:00
|
|
|
label: IngressClass Name
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
default: ""
|
|
|
|
- variable: labelsList
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Labels
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: list
|
|
|
|
default: []
|
|
|
|
items:
|
|
|
|
- variable: labelItem
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Label
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
additional_attrs: true
|
|
|
|
type: dict
|
|
|
|
attrs:
|
|
|
|
- variable: name
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Name
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
- variable: value
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Value
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
- variable: annotationsList
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Annotations
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: list
|
|
|
|
default: []
|
|
|
|
items:
|
|
|
|
- variable: annotationItem
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Label
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
additional_attrs: true
|
|
|
|
type: dict
|
|
|
|
attrs:
|
|
|
|
- variable: name
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Name
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
- variable: value
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Value
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
- variable: hosts
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Hosts
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: list
|
|
|
|
default: []
|
|
|
|
items:
|
|
|
|
- variable: hostEntry
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Host
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
additional_attrs: true
|
|
|
|
type: dict
|
|
|
|
attrs:
|
|
|
|
- variable: host
|
2022-08-09 00:29:33 +00:00
|
|
|
label: HostName
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
default: ""
|
|
|
|
required: true
|
|
|
|
- variable: paths
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Paths
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: list
|
|
|
|
default: []
|
|
|
|
items:
|
|
|
|
- variable: pathEntry
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Host
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
additional_attrs: true
|
|
|
|
type: dict
|
|
|
|
attrs:
|
|
|
|
- variable: path
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Path
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
required: true
|
|
|
|
default: "/"
|
|
|
|
- variable: pathType
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Path Type
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
required: true
|
2022-08-09 00:29:33 +00:00
|
|
|
default: Prefix
|
2022-06-07 20:31:13 +00:00
|
|
|
- variable: service
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Linked Service
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
additional_attrs: true
|
|
|
|
type: dict
|
|
|
|
attrs:
|
|
|
|
- variable: name
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Service Name
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
default: ""
|
|
|
|
- variable: port
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Service Port
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: int
|
|
|
|
- variable: tls
|
2022-08-09 00:29:33 +00:00
|
|
|
label: TLS-Settings
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: list
|
|
|
|
default: []
|
|
|
|
items:
|
|
|
|
- variable: tlsEntry
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Host
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
additional_attrs: true
|
|
|
|
type: dict
|
|
|
|
attrs:
|
|
|
|
- variable: hosts
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Certificate Hosts
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: list
|
|
|
|
default: []
|
|
|
|
items:
|
|
|
|
- variable: host
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Host
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
default: ""
|
|
|
|
required: true
|
|
|
|
- variable: scaleCert
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Select TrueNAS SCALE Certificate
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: int
|
|
|
|
$ref:
|
|
|
|
- "definitions/certificate"
|
|
|
|
- variable: entrypoint
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Traefik Entrypoint
|
|
|
|
description: Entrypoint used by Traefik when using Traefik as Ingress Provider
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: string
|
2022-08-09 00:29:33 +00:00
|
|
|
default: websecure
|
2022-06-07 20:31:13 +00:00
|
|
|
required: true
|
|
|
|
- variable: middlewares
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Traefik Middlewares
|
|
|
|
description: Add previously created Traefik Middlewares to this Ingress
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: list
|
|
|
|
default: []
|
|
|
|
items:
|
|
|
|
- variable: name
|
2022-08-09 00:29:33 +00:00
|
|
|
label: Name
|
2022-06-07 20:31:13 +00:00
|
|
|
schema:
|
|
|
|
type: string
|
|
|
|
default: ""
|
|
|
|
required: true
|