TrueChartsClone/templates/questions/addons/codeserver.yaml

278 lines
16 KiB
YAML

- variable: codeserver
label: Codeserver
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: Enabled
schema:
type: boolean
default: false
show_subquestions_if: true
subquestions:
- variable: service
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: type
label: Service Type
description: "ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer"
schema:
type: string
default: LoadBalancer
enum:
- value: NodePort
description: Deprecated CHANGE THIS
- value: ClusterIP
description: ClusterIP
- value: LoadBalancer
description: LoadBalancer
- variable: loadBalancerIP
label: LoadBalancer IP
description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB"
schema:
show_if: [["type", "=", "LoadBalancer"]]
type: string
default: ""
- variable: ports
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: codeserver
label: ""
schema:
additional_attrs: true
type: dict
attrs:
- variable: port
label: Port
schema:
type: int
default: 36107
- variable: ingress
label: "Ingress"
schema:
additional_attrs: true
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:
additional_attrs: true
type: dict
attrs:
- variable: host
label: HostName
schema:
type: string
default: ""
required: true
- variable: paths
label: Paths
schema:
type: list
default: [{path: "/", pathType: "Prefix"}]
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: Path Type
schema:
type: string
required: true
default: Prefix
- variable: integrations
label: Integrations
description: Connect ingress with other charts
schema:
additional_attrs: true
type: dict
attrs:
- variable: traefik
label: Traefik
description: Connect ingress with Traefik
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: enabled
schema:
type: boolean
default: true
- variable: allowCors
label: 'Allow Cross Origin Requests (advanced)'
schema:
type: boolean
default: false
show_if: [["enabled", "=", true]]
- variable: entrypoints
label: Entrypoints
schema:
type: list
default: ["websecure"]
show_if: [["enabled", "=", true]]
items:
- variable: entrypoint
label: Entrypoint
schema:
type: string
- variable: middlewares
label: Middlewares
schema:
type: list
default: []
show_if: [["enabled", "=", true]]
items:
- variable: middleware
label: Middleware
schema:
additional_attrs: true
type: dict
attrs:
- variable: name
label: name
schema:
type: string
default: ""
required: true
- variable: namespace
label: 'namespace (optional)'
schema:
type: string
default: ""
- variable: certManager
label: certManager
description: Connect ingress with certManager
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: enabled
schema:
type: boolean
default: false
- variable: certificateIssuer
label: certificateIssuer
description: defaults to chartname
schema:
type: string
default: ""
show_if: [["enabled", "=", true]]
- variable: advanced
label: Show Advanced Settings
description: Advanced settings are not covered by TrueCharts Support
schema:
type: boolean
default: false
- variable: ingressClassName
label: (Advanced/Optional) IngressClass Name
schema:
type: string
show_if: [["advanced", "=", true]]
default: ""
- variable: tls
label: TLS-Settings
schema:
type: list
show_if: [["advanced", "=", true]]
default: []
items:
- variable: tlsEntry
label: Host
schema:
additional_attrs: true
type: dict
attrs:
- variable: hosts
label: Certificate Hosts
schema:
type: list
default: []
items:
- variable: host
label: Host
schema:
type: string
default: ""
required: true
- variable: certificateIssuer
label: Use Cert-Manager clusterIssuer
description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates.'
schema:
type: string
default: ""
- variable: clusterCertificate
label: 'Cluster Certificate (Advanced)'
description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.'
schema:
type: string
show_if: [["certificateIssuer", "=", ""]]
default: ""
- variable: secretName
label: 'Use Custom Certificate Secret (Advanced)'
schema:
show_if: [["certificateIssuer", "=", ""]]
type: string
default: ""
- variable: scaleCert
label: 'Use TrueNAS SCALE Certificate (Deprecated)'
schema:
show_if: [["certificateIssuer", "=", ""]]
type: int
$ref:
- "definitions/certificate"
- variable: envList
label: Codeserver Environment Variables
schema:
type: list
show_if: [["type", "!=", "disabled"]]
default: []
items:
- variable: envItem
label: Environment Variable
schema:
additional_attrs: true
type: dict
attrs:
- variable: name
label: Name
schema:
type: string
required: true
- variable: value
label: Value
schema:
type: string
required: true