427 lines
16 KiB
YAML
427 lines
16 KiB
YAML
# Include{groups}
|
|
portals:
|
|
open:
|
|
# Include{portalLink}
|
|
path: "$kubernetes-resource_configmap_tcportal-open_path"
|
|
questions:
|
|
# Include{global}
|
|
# Include{workload}
|
|
# Include{workloadDeployment}
|
|
# Include{replicas1}
|
|
# Include{podSpec}
|
|
# Include{containerMain}
|
|
# Include{containerBasic}
|
|
# Include{containerAdvanced}
|
|
# Include{containerConfig}
|
|
# Include{podOptions}
|
|
- variable: expertIngressClass
|
|
label: Expert Mode
|
|
group: App Configuration
|
|
description: |
|
|
Expert Mode contains settings like: </br>
|
|
- IngressClass </br>
|
|
schema:
|
|
type: boolean
|
|
default: false
|
|
show_subquestions_if: true
|
|
subquestions:
|
|
- variable: ingressClass
|
|
label: "ingressClass"
|
|
schema:
|
|
additional_attrs: true
|
|
type: dict
|
|
attrs:
|
|
- variable: enabled
|
|
label: "Enable"
|
|
description: "When enabled, ingressClass will match the entered name of this app"
|
|
schema:
|
|
type: boolean
|
|
default: false
|
|
- variable: isDefaultClass
|
|
label: "isDefaultClass"
|
|
schema:
|
|
type: boolean
|
|
show_if: [["enabled", "=", true]]
|
|
default: false
|
|
- variable: logs
|
|
label: "Logs"
|
|
group: "App Configuration"
|
|
schema:
|
|
additional_attrs: true
|
|
type: dict
|
|
attrs:
|
|
- variable: general
|
|
label: "General Logs"
|
|
schema:
|
|
additional_attrs: true
|
|
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: format
|
|
label: "General Log format"
|
|
schema:
|
|
type: string
|
|
default: "common"
|
|
enum:
|
|
- value: "common"
|
|
description: "Common Log Format"
|
|
- value: "json"
|
|
description: "JSON"
|
|
- variable: access
|
|
label: "Access Logs"
|
|
schema:
|
|
additional_attrs: true
|
|
type: dict
|
|
attrs:
|
|
- variable: enabled
|
|
label: "Enable"
|
|
schema:
|
|
type: boolean
|
|
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:
|
|
additional_attrs: true
|
|
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:
|
|
additional_attrs: true
|
|
type: dict
|
|
attrs:
|
|
- variable: general
|
|
label: "General"
|
|
schema:
|
|
additional_attrs: true
|
|
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:
|
|
additional_attrs: true
|
|
type: dict
|
|
attrs:
|
|
- variable: defaultmode
|
|
label: "Default Mode"
|
|
schema:
|
|
type: string
|
|
default: "drop"
|
|
enum:
|
|
- value: "keep"
|
|
description: "Keep"
|
|
- value: "drop"
|
|
description: "Drop"
|
|
- variable: format
|
|
label: "Access Log format"
|
|
schema:
|
|
type: string
|
|
default: "common"
|
|
enum:
|
|
- value: "common"
|
|
description: "Common Log Format"
|
|
- value: "json"
|
|
description: "JSON"
|
|
- variable: middlewares
|
|
label: ""
|
|
group: "Middlewares"
|
|
schema:
|
|
additional_attrs: true
|
|
type: dict
|
|
attrs:
|
|
# Include{basicAuthMiddleware}
|
|
# Include{forwardAuthMiddleware}
|
|
# Include{bufferingMiddleware}
|
|
# Include{customRequestHeadersMiddleware}
|
|
# Include{customResponseHeadersMiddleware}
|
|
# Include{rewriteResponseHeadersMiddleware}
|
|
# Include{customFrameOptionsValueMiddleware}
|
|
# Include{chainMiddleware}
|
|
# Include{redirectSchemeMiddleware}
|
|
# Include{rateLimitMiddleware}
|
|
# Include{redirectRegexMiddleware}
|
|
# Include{stripPrefixRegexMiddleware}
|
|
# Include{ipWhitelistMiddleware}
|
|
# Include{themeParkMiddleware}
|
|
# Include{realIPMiddleware}
|
|
# Include{geoBlockMiddleware}
|
|
# Include{addPrefixMiddleware}
|
|
# Include{modsecurityMiddleware}
|
|
- variable: service
|
|
group: "Networking and Services"
|
|
label: "Configure Service Entrypoint"
|
|
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:
|
|
# Include{serviceSelectorLoadBalancer}
|
|
# Include{serviceSelectorExtras}
|
|
- variable: main
|
|
label: "Main Entrypoint Configuration"
|
|
schema:
|
|
additional_attrs: true
|
|
type: dict
|
|
attrs:
|
|
- variable: port
|
|
label: "Entrypoints Port"
|
|
schema:
|
|
type: int
|
|
default: 9000
|
|
required: true
|
|
- variable: tcp
|
|
label: "TCP Service"
|
|
description: "The tcp Entrypoint service"
|
|
schema:
|
|
additional_attrs: true
|
|
type: dict
|
|
attrs:
|
|
# Include{serviceSelectorLoadBalancer}
|
|
# Include{serviceSelectorExtras}
|
|
- variable: web
|
|
label: "web Entrypoint Configuration"
|
|
schema:
|
|
additional_attrs: true
|
|
type: dict
|
|
attrs:
|
|
- variable: port
|
|
label: "Entrypoints Port"
|
|
schema:
|
|
type: int
|
|
default: 80
|
|
required: true
|
|
- variable: advanced
|
|
label: Show Advanced Settings
|
|
schema:
|
|
type: boolean
|
|
default: false
|
|
show_subquestions_if: true
|
|
subquestions:
|
|
- variable: redirectPort
|
|
label: "Redirect to Port"
|
|
schema:
|
|
type: int
|
|
- variable: redirectTo
|
|
label: "Redirect to Entrypoint"
|
|
schema:
|
|
type: string
|
|
default: "websecure"
|
|
# Include{forwardedHeaders}
|
|
# Include{proxyProtocol}
|
|
- variable: websecure
|
|
label: "websecure Entrypoints Configuration"
|
|
schema:
|
|
additional_attrs: true
|
|
type: dict
|
|
attrs:
|
|
- variable: port
|
|
label: "Entrypoints Port"
|
|
schema:
|
|
type: int
|
|
default: 443
|
|
required: true
|
|
- variable: advanced
|
|
label: Show Advanced Settings
|
|
schema:
|
|
type: boolean
|
|
default: false
|
|
show_subquestions_if: true
|
|
subquestions:
|
|
- variable: redirectPort
|
|
label: "Redirect to Port"
|
|
schema:
|
|
type: int
|
|
- variable: redirectTo
|
|
label: "Redirect to Entrypoint"
|
|
schema:
|
|
type: string
|
|
# Include{forwardedHeaders}
|
|
# Include{proxyProtocol}
|
|
- variable: tls
|
|
label: "websecure Entrypoints Configuration"
|
|
schema:
|
|
additional_attrs: true
|
|
type: dict
|
|
hidden: true
|
|
attrs:
|
|
- variable: enabled
|
|
label: "Enabled"
|
|
schema:
|
|
type: boolean
|
|
default: true
|
|
hidden: true
|
|
- variable: portsList
|
|
label: "Additional TCP Entrypoints"
|
|
schema:
|
|
type: list
|
|
default: []
|
|
items:
|
|
- variable: portsListEntry
|
|
label: "Custom Entrypoints"
|
|
schema:
|
|
additional_attrs: true
|
|
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:
|
|
additional_attrs: true
|
|
type: dict
|
|
attrs:
|
|
- variable: enabled
|
|
label: "Enabled"
|
|
schema:
|
|
type: boolean
|
|
default: true
|
|
- variable: redirectPort
|
|
label: "Redirect to Port"
|
|
schema:
|
|
type: int
|
|
- variable: redirectTo
|
|
label: "Redirect to Entrypoint"
|
|
schema:
|
|
type: string
|
|
# Include{forwardedHeaders}
|
|
# Include{proxyProtocol}
|
|
# Include{ingressRoot}
|
|
- variable: main
|
|
label: "Main Ingress"
|
|
schema:
|
|
additional_attrs: true
|
|
type: dict
|
|
attrs:
|
|
# Include{ingressDefault}
|
|
# Include{ingressAdvanced}
|
|
# Include{ingressList}
|
|
# Include{securityContextRoot}
|
|
- 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 of the user running the application"
|
|
schema:
|
|
type: int
|
|
default: 568
|
|
# Include{securityContextContainer}
|
|
# Include{securityContextAdvanced}
|
|
# Include{securityContextPod}
|
|
- variable: fsGroup
|
|
label: "fsGroup"
|
|
description: "The group that should own ALL storage."
|
|
schema:
|
|
type: int
|
|
default: 568
|
|
# Include{resources}
|
|
# Include{metrics}
|
|
# Include{prometheusRule}
|
|
# Include{advanced}
|
|
# Include{addons}
|
|
# Include{codeserver}
|
|
# Include{netshoot}
|
|
# Include{vpn}
|
|
# Include{documentation}
|
|
- variable: warning
|
|
group: Documentation
|
|
label: 'WARNING: If installed, be sure to move the TrueNAS GUI to another port (not 80 or 443).'
|
|
description: 'See: <br /><a href="https://truecharts.org/charts/enterprise/traefik/how-to">https://truecharts.org/charts/enterprise/traefik/how-to</a> for more info.'
|
|
schema:
|
|
additional_attrs: true
|
|
type: dict
|
|
attrs:
|
|
- variable: warningconfim
|
|
label: I am aware that I will brick my system, if I did not follow the instructions.
|
|
schema:
|
|
type: boolean
|
|
default: true
|
|
required: true
|