diff --git a/charts/deprecated/nzbhydra/SCALE/questions.yaml b/charts/deprecated/nzbhydra/SCALE/questions.yaml index f79377ad637..88a886ed8d6 100644 --- a/charts/deprecated/nzbhydra/SCALE/questions.yaml +++ b/charts/deprecated/nzbhydra/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +64,27 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -92,14 +104,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -111,60 +123,91 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 5076 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 5076 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36041 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 5076 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 5076 + editable: true + hidden: false + 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: 36041 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -275,104 +318,9 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -384,7 +332,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/incubator/appdaemon/SCALE/questions.yaml b/charts/incubator/appdaemon/SCALE/questions.yaml index 914ed862848..2febfebff00 100644 --- a/charts/incubator/appdaemon/SCALE/questions.yaml +++ b/charts/incubator/appdaemon/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,7 +64,6 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - # Docker specific env - variable: env group: "Configuration" @@ -113,17 +113,21 @@ questions: type: int default: 0 required: true - - + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -136,7 +140,6 @@ questions: label: "Value" schema: type: string - # Enable Host Networking - variable: hostNetwork group: "Networking" @@ -144,14 +147,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -163,58 +166,88 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 5050 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 51050 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36052 - required: true -## TrueCharts Specific - + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 5050 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 51050 + editable: true + hidden: false + 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: 36052 + required: true + ## TrueCharts Specific - variable: hostPathMounts label: "Custom app storage" group: "Storage" @@ -269,105 +302,9 @@ questions: schema: type: hostpath required: true - - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "selfsigned" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -379,7 +316,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/incubator/bazarr/SCALE/questions.yaml b/charts/incubator/bazarr/SCALE/questions.yaml index 469f7241654..da449a377b5 100644 --- a/charts/incubator/bazarr/SCALE/questions.yaml +++ b/charts/incubator/bazarr/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +64,27 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -92,14 +104,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -111,60 +123,91 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 6767 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 6767 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36025 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 6767 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 6767 + editable: true + hidden: false + 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: 36025 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -275,104 +318,9 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -384,7 +332,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/incubator/calibre-web/SCALE/questions.yaml b/charts/incubator/calibre-web/SCALE/questions.yaml index 7794744cb58..9b41c36c536 100644 --- a/charts/incubator/calibre-web/SCALE/questions.yaml +++ b/charts/incubator/calibre-web/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -62,16 +64,39 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: PUID + label: "PUID" + description: "Sets the PUID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: PGID + label: "PGID" + description: "Sets the PGID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -91,14 +116,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -110,60 +135,91 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 8083 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 8083 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36015 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 8083 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8083 + editable: true + hidden: false + 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: 36015 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -274,176 +330,3 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - variable: PUID - group: "Advanced" - label: "PUID" - description: "Sets the PUID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - - variable: PGID - group: "Advanced" - label: "PGID" - description: "Sets the PGID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" - # Enable privileged - - variable: securityContext - group: "Advanced" - label: "Security Context" - schema: - type: dict - attrs: - - variable: privileged - label: "Enable privileged mode for Common-Chart based charts" - schema: - type: boolean - default: false - # Set Pod Security Policy - - variable: podSecurityContext - group: "Advanced" - label: "Pod Security Context" - schema: - type: dict - attrs: - - variable: runAsNonRoot - label: "runAsNonRoot" - schema: - type: boolean - default: false - - variable: runAsUser - label: "runAsUser" - description: "The UserID of the user running the application" - schema: - type: int - default: 0 - - variable: runAsGroup - label: "runAsGroup" - description: The groupID this App of the user running the application" - schema: - type: int - default: 0 - - variable: supplementalGroups - label: "supplementalGroups" - description: "Additional groups this App needs access to" - schema: - type: list - default: [] - items: - - variable: Group - label: "Group" - schema: - type: int - default: 568 - - variable: fsGroup - label: "fsGroup" - description: "The group that should own ALL storage." - schema: - type: int - default: 568 - - variable: fsGroupChangePolicy - label: "When should we take ownership?" - schema: - type: string - default: "OnRootMismatch" - enum: - - value: "OnRootMismatch" - description: "OnRootMismatch" - - value: "Always" - description: "Always" diff --git a/charts/incubator/deluge/SCALE/questions.yaml b/charts/incubator/deluge/SCALE/questions.yaml index e0dd3e505e3..5ae87743f08 100644 --- a/charts/incubator/deluge/SCALE/questions.yaml +++ b/charts/incubator/deluge/SCALE/questions.yaml @@ -6,15 +6,19 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" + - name: "WARNING" + description: "WARNING" portals: web_portal: protocols: @@ -24,7 +28,7 @@ portals: ports: - "$kubernetes-resource_configmap_portal_port" questions: -## Portal Button + ## Portal Button - variable: portal group: "Container Image" label: "Configure Portal Button" @@ -40,7 +44,7 @@ questions: editable: false type: boolean default: true -## Update Policy + ## Update Policy - variable: strategyType group: "Container Image" label: "Update Strategy" @@ -52,7 +56,7 @@ questions: description: "Create new pods and then kill old ones" - value: "Recreate" description: "Kill existing pods before creating new ones" -## Configure Time Zone + ## Configure Time Zone - variable: timezone group: "Container Image" label: "Timezone" @@ -61,16 +65,39 @@ questions: default: "Australia/Hobart" $ref: - "definitions/timezone" - -## Configure Enviroment Variables - - variable: environmentVariables + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: PUID + label: "PUID" + description: "Sets the PUID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: PGID + label: "PGID" + description: "Sets the PGID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" + ## Configure Enviroment Variables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -83,16 +110,255 @@ questions: label: "Value" schema: type: string -## Enable Host Network + ## Enable Host Network - variable: hostNetwork group: "Networking" label: "Enable Host Network" schema: type: boolean default: false + - variable: service + group: "Networking" + 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: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 8112 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8112 + editable: true + hidden: false + 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: 36026 + required: true + - variable: torrent + label: "Torrent Service" + description: "Torrent 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: tcp + label: "TCP Service Port Configuration" + schema: + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "TCP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 51413 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 51413 + editable: true + hidden: false + 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: 51413 + required: true + - variable: udp + label: "UDP Service Port Configuration" + schema: + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "UDP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 51413 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 51413 + editable: true + hidden: false + 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: 51413 + required: true - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -203,369 +469,3 @@ questions: schema: type: hostpath required: true - - variable: services - group: "Networking" - label: "Configure Service" - 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" - schema: - type: string - default: "ClusterIP" - enum: - - value: "NodePort" - description: "NodePort" - - value: "ClusterIP" - description: "ClusterIP" - - variable: port - label: "Port configuration" - schema: - type: dict - attrs: - - variable: protocol - label: "Port Type" - schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 8112 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 8112 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36026 - required: true - - variable: tcp - label: "" - description: "TCP port for Torrent Connections" - schema: - type: dict - attrs: - - variable: enabled - label: "Enable TCP port for Torrent Connections" - schema: - type: boolean - default: true - hidden: true - - variable: type - label: "Service type" - schema: - type: string - default: "ClusterIP" - enum: - - value: "NodePort" - description: "NodePort" - - value: "ClusterIP" - description: "ClusterIP" - - variable: port - label: "Port configuration" - schema: - type: dict - attrs: - - variable: name - label: "port name" - schema: - type: string - default: "torrent-tcp" - hidden: true - - variable: protocol - label: "Protocol" - schema: - type: string - default: "TCP" - hidden: true - - variable: port - label: "container port" - schema: - type: int - default: 51413 - editable: false - hidden: true - - variable: targetport - label: "container targetport" - schema: - type: int - default: 51413 - editable: false - hidden: true - - variable: nodePort - label: "Node Port to expose" - schema: - type: int - min: 9000 - max: 65535 - default: 51413 - required: false - - variable: udp - label: "" - description: "UDP port for Torrent Connections" - schema: - type: dict - attrs: - - variable: enabled - label: "Enable UDP port for Torrent Connections" - schema: - type: boolean - default: true - hidden: true - - variable: type - label: "Service type" - schema: - type: string - default: "ClusterIP" - enum: - - value: "NodePort" - description: "NodePort" - - value: "ClusterIP" - description: "ClusterIP" - - variable: port - label: "Port configuration" - schema: - type: dict - attrs: - - variable: name - label: "port name" - schema: - type: string - default: "torrent-udp" - hidden: true - - variable: protocol - label: "Protocol" - schema: - type: string - default: "UDP" - hidden: true - - variable: port - label: "container port" - schema: - type: int - default: 51413 - editable: false - hidden: true - - variable: targetport - label: "container targetport" - schema: - type: int - default: 51413 - editable: false - hidden: true - - variable: nodePort - label: "Node Port to expose" - schema: - type: int - min: 9000 - max: 65535 - default: 51413 - required: false - -## Ingres - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - variable: PUID - group: "Advanced" - label: "PUID" - description: "Sets the PUID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - - variable: PGID - group: "Advanced" - label: "PGID" - description: "Sets the PGID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" - # Enable privileged - - variable: securityContext - group: "Advanced" - label: "Security Context" - schema: - type: dict - attrs: - - variable: privileged - label: "Enable privileged mode for Common-Chart based charts" - schema: - type: boolean - default: false - # Set Pod Security Policy - - variable: podSecurityContext - group: "Advanced" - label: "Pod Security Context" - schema: - type: dict - attrs: - - variable: runAsNonRoot - label: "runAsNonRoot" - schema: - type: boolean - default: false - - variable: runAsUser - label: "runAsUser" - description: "The UserID of the user running the application" - schema: - type: int - default: 0 - - variable: runAsGroup - label: "runAsGroup" - description: The groupID this App of the user running the application" - schema: - type: int - default: 0 - - variable: supplementalGroups - label: "supplementalGroups" - description: "Additional groups this App needs access to" - schema: - type: list - default: [] - items: - - variable: Group - label: "Group" - schema: - type: int - default: 568 - - variable: fsGroup - label: "fsGroup" - description: "The group that should own ALL storage." - schema: - type: int - default: 568 - - variable: fsGroupChangePolicy - label: "When should we take ownership?" - schema: - type: string - default: "OnRootMismatch" - enum: - - value: "OnRootMismatch" - description: "OnRootMismatch" - - value: "Always" - description: "Always" diff --git a/charts/incubator/fireflyiii/SCALE/questions.yaml b/charts/incubator/fireflyiii/SCALE/questions.yaml index 8a46f4e8a93..9507691190c 100644 --- a/charts/incubator/fireflyiii/SCALE/questions.yaml +++ b/charts/incubator/fireflyiii/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -62,28 +64,6 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - # Configure Enviroment Variables - - variable: environmentVariables - label: "Image environment" - group: "Configuration" - schema: - type: list - default: [] - items: - - variable: environmentVariable - label: "Environment Variable" - schema: - type: dict - attrs: - - variable: name - label: "Name" - schema: - type: string - - variable: value - label: "Value" - schema: - type: string - # Docker specific env - variable: env group: "Configuration" @@ -98,7 +78,32 @@ questions: type: string default: "" required: true - + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" + - variable: envList + label: "Image environment" + group: "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 # Enable Host Networking - variable: hostNetwork group: "Networking" @@ -106,14 +111,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -125,61 +130,91 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 8080 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 51080 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36048 - required: true - -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 8080 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 51080 + editable: true + hidden: false + 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: 36048 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -401,104 +436,9 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -510,7 +450,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/incubator/freshrss/SCALE/questions.yaml b/charts/incubator/freshrss/SCALE/questions.yaml index daa2d01503b..7714f4b6faf 100644 --- a/charts/incubator/freshrss/SCALE/questions.yaml +++ b/charts/incubator/freshrss/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +64,39 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: PUID + label: "PUID" + description: "Sets the PUID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: PGID + label: "PGID" + description: "Sets the PGID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -92,14 +116,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -111,60 +135,91 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 80 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 80 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36029 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 80 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 80 + editable: true + hidden: false + 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: 36029 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -221,7 +276,6 @@ questions: schema: type: string default: "100Gi" - - variable: hostPathMounts label: "Custom app storage" group: "Storage" @@ -276,176 +330,3 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - variable: PUID - group: "Advanced" - label: "PUID" - description: "Sets the PUID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - - variable: PGID - group: "Advanced" - label: "PGID" - description: "Sets the PGID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" - # Enable privileged - - variable: securityContext - group: "Advanced" - label: "Security Context" - schema: - type: dict - attrs: - - variable: privileged - label: "Enable privileged mode for Common-Chart based charts" - schema: - type: boolean - default: false - # Set Pod Security Policy - - variable: podSecurityContext - group: "Advanced" - label: "Pod Security Context" - schema: - type: dict - attrs: - - variable: runAsNonRoot - label: "runAsNonRoot" - schema: - type: boolean - default: false - - variable: runAsUser - label: "runAsUser" - description: "The UserID of the user running the application" - schema: - type: int - default: 0 - - variable: runAsGroup - label: "runAsGroup" - description: The groupID this App of the user running the application" - schema: - type: int - default: 0 - - variable: supplementalGroups - label: "supplementalGroups" - description: "Additional groups this App needs access to" - schema: - type: list - default: [] - items: - - variable: Group - label: "Group" - schema: - type: int - default: 568 - - variable: fsGroup - label: "fsGroup" - description: "The group that should own ALL storage." - schema: - type: int - default: 568 - - variable: fsGroupChangePolicy - label: "When should we take ownership?" - schema: - type: string - default: "OnRootMismatch" - enum: - - value: "OnRootMismatch" - description: "OnRootMismatch" - - value: "Always" - description: "Always" diff --git a/charts/incubator/gaps/SCALE/questions.yaml b/charts/incubator/gaps/SCALE/questions.yaml index c12954889d2..8ef13745ffe 100644 --- a/charts/incubator/gaps/SCALE/questions.yaml +++ b/charts/incubator/gaps/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +64,27 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -92,14 +104,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -111,59 +123,90 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 8484 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 8484 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36030 - required: true + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 8484 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8484 + editable: true + hidden: false + 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: 36030 + required: true - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -220,8 +263,6 @@ questions: schema: type: string default: "100Gi" - - - variable: hostPathMounts label: "Custom app storage" group: "Storage" @@ -276,104 +317,9 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -385,7 +331,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/incubator/grocy/SCALE/questions.yaml b/charts/incubator/grocy/SCALE/questions.yaml index a5eb28f5404..439df3f618d 100644 --- a/charts/incubator/grocy/SCALE/questions.yaml +++ b/charts/incubator/grocy/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +64,40 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: PUID + label: "PUID" + description: "Sets the PUID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: PGID + label: "PGID" + description: "Sets the PGID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -92,14 +117,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -111,59 +136,90 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 80 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 80 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36031 - required: true + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 80 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 80 + editable: true + hidden: false + 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: 36031 + required: true - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -274,176 +330,3 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - variable: PUID - group: "Advanced" - label: "PUID" - description: "Sets the PUID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - - variable: PGID - group: "Advanced" - label: "PGID" - description: "Sets the PGID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" - # Enable privileged - - variable: securityContext - group: "Advanced" - label: "Security Context" - schema: - type: dict - attrs: - - variable: privileged - label: "Enable privileged mode for Common-Chart based charts" - schema: - type: boolean - default: false - # Set Pod Security Policy - - variable: podSecurityContext - group: "Advanced" - label: "Pod Security Context" - schema: - type: dict - attrs: - - variable: runAsNonRoot - label: "runAsNonRoot" - schema: - type: boolean - default: false - - variable: runAsUser - label: "runAsUser" - description: "The UserID of the user running the application" - schema: - type: int - default: 0 - - variable: runAsGroup - label: "runAsGroup" - description: The groupID this App of the user running the application" - schema: - type: int - default: 0 - - variable: supplementalGroups - label: "supplementalGroups" - description: "Additional groups this App needs access to" - schema: - type: list - default: [] - items: - - variable: Group - label: "Group" - schema: - type: int - default: 568 - - variable: fsGroup - label: "fsGroup" - description: "The group that should own ALL storage." - schema: - type: int - default: 568 - - variable: fsGroupChangePolicy - label: "When should we take ownership?" - schema: - type: string - default: "OnRootMismatch" - enum: - - value: "OnRootMismatch" - description: "OnRootMismatch" - - value: "Always" - description: "Always" diff --git a/charts/incubator/heimdall/SCALE/questions.yaml b/charts/incubator/heimdall/SCALE/questions.yaml index 13b2d038c7d..2be6b567771 100644 --- a/charts/incubator/heimdall/SCALE/questions.yaml +++ b/charts/incubator/heimdall/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +64,39 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: PUID + label: "PUID" + description: "Sets the PUID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: PGID + label: "PGID" + description: "Sets the PGID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -92,14 +116,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -111,60 +135,91 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 80 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 80 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36033 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 80 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 80 + editable: true + hidden: false + 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: 36033 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -275,176 +330,3 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - variable: PUID - group: "Advanced" - label: "PUID" - description: "Sets the PUID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - - variable: PGID - group: "Advanced" - label: "PGID" - description: "Sets the PGID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" - # Enable privileged - - variable: securityContext - group: "Advanced" - label: "Security Context" - schema: - type: dict - attrs: - - variable: privileged - label: "Enable privileged mode for Common-Chart based charts" - schema: - type: boolean - default: false - # Set Pod Security Policy - - variable: podSecurityContext - group: "Advanced" - label: "Pod Security Context" - schema: - type: dict - attrs: - - variable: runAsNonRoot - label: "runAsNonRoot" - schema: - type: boolean - default: false - - variable: runAsUser - label: "runAsUser" - description: "The UserID of the user running the application" - schema: - type: int - default: 0 - - variable: runAsGroup - label: "runAsGroup" - description: The groupID this App of the user running the application" - schema: - type: int - default: 0 - - variable: supplementalGroups - label: "supplementalGroups" - description: "Additional groups this App needs access to" - schema: - type: list - default: [] - items: - - variable: Group - label: "Group" - schema: - type: int - default: 568 - - variable: fsGroup - label: "fsGroup" - description: "The group that should own ALL storage." - schema: - type: int - default: 568 - - variable: fsGroupChangePolicy - label: "When should we take ownership?" - schema: - type: string - default: "OnRootMismatch" - enum: - - value: "OnRootMismatch" - description: "OnRootMismatch" - - value: "Always" - description: "Always" diff --git a/charts/incubator/lazylibrarian/SCALE/questions.yaml b/charts/incubator/lazylibrarian/SCALE/questions.yaml index 07284e32de8..487a7ac7d53 100644 --- a/charts/incubator/lazylibrarian/SCALE/questions.yaml +++ b/charts/incubator/lazylibrarian/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +64,39 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: PUID + label: "PUID" + description: "Sets the PUID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: PGID + label: "PGID" + description: "Sets the PGID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -92,14 +116,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -111,60 +135,91 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 5299 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 5299 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36033 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 5299 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 5299 + editable: true + hidden: false + 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: 36033 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -221,7 +276,6 @@ questions: schema: type: string default: "100Gi" - - variable: hostPathMounts label: "Custom app storage" group: "Storage" @@ -276,176 +330,3 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - variable: PUID - group: "Advanced" - label: "PUID" - description: "Sets the PUID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - - variable: PGID - group: "Advanced" - label: "PGID" - description: "Sets the PGID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" - # Enable privileged - - variable: securityContext - group: "Advanced" - label: "Security Context" - schema: - type: dict - attrs: - - variable: privileged - label: "Enable privileged mode for Common-Chart based charts" - schema: - type: boolean - default: false - # Set Pod Security Policy - - variable: podSecurityContext - group: "Advanced" - label: "Pod Security Context" - schema: - type: dict - attrs: - - variable: runAsNonRoot - label: "runAsNonRoot" - schema: - type: boolean - default: false - - variable: runAsUser - label: "runAsUser" - description: "The UserID of the user running the application" - schema: - type: int - default: 0 - - variable: runAsGroup - label: "runAsGroup" - description: The groupID this App of the user running the application" - schema: - type: int - default: 0 - - variable: supplementalGroups - label: "supplementalGroups" - description: "Additional groups this App needs access to" - schema: - type: list - default: [] - items: - - variable: Group - label: "Group" - schema: - type: int - default: 568 - - variable: fsGroup - label: "fsGroup" - description: "The group that should own ALL storage." - schema: - type: int - default: 568 - - variable: fsGroupChangePolicy - label: "When should we take ownership?" - schema: - type: string - default: "OnRootMismatch" - enum: - - value: "OnRootMismatch" - description: "OnRootMismatch" - - value: "Always" - description: "Always" diff --git a/charts/incubator/lychee/SCALE/questions.yaml b/charts/incubator/lychee/SCALE/questions.yaml index b25a085a456..3200f1acc91 100644 --- a/charts/incubator/lychee/SCALE/questions.yaml +++ b/charts/incubator/lychee/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +64,39 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: PUID + label: "PUID" + description: "Sets the PUID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: PGID + label: "PGID" + description: "Sets the PGID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -92,14 +116,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -111,60 +135,91 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 80 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 80 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36034 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 80 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 80 + editable: true + hidden: false + 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: 36034 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -275,176 +330,3 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - variable: PUID - group: "Advanced" - label: "PUID" - description: "Sets the PUID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - - variable: PGID - group: "Advanced" - label: "PGID" - description: "Sets the PGID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" - # Enable privileged - - variable: securityContext - group: "Advanced" - label: "Security Context" - schema: - type: dict - attrs: - - variable: privileged - label: "Enable privileged mode for Common-Chart based charts" - schema: - type: boolean - default: false - # Set Pod Security Policy - - variable: podSecurityContext - group: "Advanced" - label: "Pod Security Context" - schema: - type: dict - attrs: - - variable: runAsNonRoot - label: "runAsNonRoot" - schema: - type: boolean - default: false - - variable: runAsUser - label: "runAsUser" - description: "The UserID of the user running the application" - schema: - type: int - default: 0 - - variable: runAsGroup - label: "runAsGroup" - description: The groupID this App of the user running the application" - schema: - type: int - default: 0 - - variable: supplementalGroups - label: "supplementalGroups" - description: "Additional groups this App needs access to" - schema: - type: list - default: [] - items: - - variable: Group - label: "Group" - schema: - type: int - default: 568 - - variable: fsGroup - label: "fsGroup" - description: "The group that should own ALL storage." - schema: - type: int - default: 568 - - variable: fsGroupChangePolicy - label: "When should we take ownership?" - schema: - type: string - default: "OnRootMismatch" - enum: - - value: "OnRootMismatch" - description: "OnRootMismatch" - - value: "Always" - description: "Always" diff --git a/charts/incubator/navidrome/SCALE/questions.yaml b/charts/incubator/navidrome/SCALE/questions.yaml index f5601c5518f..f65cb1436fb 100644 --- a/charts/incubator/navidrome/SCALE/questions.yaml +++ b/charts/incubator/navidrome/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +64,27 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -92,14 +104,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -111,60 +123,91 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 4533 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 4533 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36027 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 4533 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 4533 + editable: true + hidden: false + 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: 36027 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -275,104 +318,9 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -384,7 +332,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/incubator/node-red/SCALE/questions.yaml b/charts/incubator/node-red/SCALE/questions.yaml index d5b9a6f4822..544eafb56cb 100644 --- a/charts/incubator/node-red/SCALE/questions.yaml +++ b/charts/incubator/node-red/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +64,27 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -92,14 +104,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -111,60 +123,91 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 1880 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 1880 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36028 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 1880 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 1880 + editable: true + hidden: false + 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: 36028 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -275,104 +318,9 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -384,7 +332,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/incubator/nzbget/SCALE/questions.yaml b/charts/incubator/nzbget/SCALE/questions.yaml index 85010f5d717..22928683a7e 100644 --- a/charts/incubator/nzbget/SCALE/questions.yaml +++ b/charts/incubator/nzbget/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +64,27 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -92,14 +104,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -111,60 +123,91 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 6789 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 6789 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36021 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 6789 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 6789 + editable: true + hidden: false + 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: 36021 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -275,104 +318,9 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -384,7 +332,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/incubator/organizr/SCALE/questions.yaml b/charts/incubator/organizr/SCALE/questions.yaml index 1f01a33b628..d732f75a518 100644 --- a/charts/incubator/organizr/SCALE/questions.yaml +++ b/charts/incubator/organizr/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +64,39 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: PUID + label: "PUID" + description: "Sets the PUID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: PGID + label: "PGID" + description: "Sets the PGID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -92,14 +116,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -111,60 +135,91 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 80 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 80 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36046 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 80 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 80 + editable: true + hidden: false + 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: 36046 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -327,176 +382,3 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - variable: PUID - group: "Advanced" - label: "PUID" - description: "Sets the PUID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - - variable: PGID - group: "Advanced" - label: "PGID" - description: "Sets the PGID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" - # Enable privileged - - variable: securityContext - group: "Advanced" - label: "Security Context" - schema: - type: dict - attrs: - - variable: privileged - label: "Enable privileged mode for Common-Chart based charts" - schema: - type: boolean - default: false - # Set Pod Security Policy - - variable: podSecurityContext - group: "Advanced" - label: "Pod Security Context" - schema: - type: dict - attrs: - - variable: runAsNonRoot - label: "runAsNonRoot" - schema: - type: boolean - default: false - - variable: runAsUser - label: "runAsUser" - description: "The UserID of the user running the application" - schema: - type: int - default: 0 - - variable: runAsGroup - label: "runAsGroup" - description: The groupID this App of the user running the application" - schema: - type: int - default: 0 - - variable: supplementalGroups - label: "supplementalGroups" - description: "Additional groups this App needs access to" - schema: - type: list - default: [] - items: - - variable: Group - label: "Group" - schema: - type: int - default: 568 - - variable: fsGroup - label: "fsGroup" - description: "The group that should own ALL storage." - schema: - type: int - default: 568 - - variable: fsGroupChangePolicy - label: "When should we take ownership?" - schema: - type: string - default: "OnRootMismatch" - enum: - - value: "OnRootMismatch" - description: "OnRootMismatch" - - value: "Always" - description: "Always" diff --git a/charts/incubator/podgrab/SCALE/questions.yaml b/charts/incubator/podgrab/SCALE/questions.yaml index 41f89e33092..0f3bd6aacdb 100644 --- a/charts/incubator/podgrab/SCALE/questions.yaml +++ b/charts/incubator/podgrab/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,8 +64,7 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - -# App env variables + # App env variables - variable: env group: "Configuration" label: "Image Environment" @@ -85,16 +85,15 @@ questions: type: int default: 240 required: true - # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -107,7 +106,6 @@ questions: label: "Value" schema: type: string - # Enable Host Networking - variable: hostNetwork group: "Networking" @@ -115,14 +113,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -134,60 +132,91 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 8080 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 51080 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36047 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 8080 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 51080 + editable: true + hidden: false + 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: 36047 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" - description: "Config Storage" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -244,7 +273,6 @@ questions: schema: type: string default: "1Gi" - - variable: hostPathMounts label: "Custom app storage" group: "Storage" @@ -299,97 +327,9 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -399,10 +339,9 @@ questions: schema: type: boolean default: false - # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/incubator/qbittorrent/SCALE/questions.yaml b/charts/incubator/qbittorrent/SCALE/questions.yaml index dff064e6bf0..01d504645f0 100644 --- a/charts/incubator/qbittorrent/SCALE/questions.yaml +++ b/charts/incubator/qbittorrent/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +64,27 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -92,14 +104,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -111,59 +123,90 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 8080 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 8080 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36039 - required: true - - variable: tcp - label: "TCP Torrent connections" - description: "This service is used to process incomming torrent connections over TCP" + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 8080 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8080 + editable: true + hidden: false + 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: 36039 + required: true + - variable: torrent + label: "Torrent Service" + description: "Torrent Service" schema: type: dict attrs: @@ -174,8 +217,8 @@ questions: 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" + 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" @@ -184,113 +227,126 @@ questions: description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" - schema: - type: dict - attrs: - - variable: protocol - label: "Port Type" - schema: - type: string - default: "TCP" - hidden: true - enum: - - value: TCP - description: "TCP" - - value: "UDP" - description: "UDP" - - variable: port - label: "container port" - schema: - type: int - default: 6881 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 51413 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36040 - required: true - - variable: udp - label: "UDP Torrent connections" - description: "This service is used to process incomming torrent connections over UDP" - 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" + - value: "LoadBalancer" + description: "LoadBalancer" + - variable: loadBalancerIP + label: "LoadBalancer IP" + description: "LoadBalancerIP" schema: + show_if: [["type", "=", "LoadBalancer"]] type: string - default: "NodePort" - enum: - - value: "NodePort" - description: "NodePort" - - value: "ClusterIP" - description: "ClusterIP" - - variable: port - label: "Port configuration" + 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: protocol - label: "Port Type" + - variable: tcp + label: "TCP Service Port Configuration" schema: - type: string - default: "UDP" - hidden: true - enum: - - value: TCP - description: "TCP" - - value: "UDP" - description: "UDP" - - variable: port - label: "container port" + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "TCP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 51413 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 51413 + editable: true + hidden: false + 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: 36040 + required: true + - variable: udp + label: "UDP Service Port Configuration" schema: - type: int - default: 6881 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 51413 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36040 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "UDP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 51413 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 51413 + editable: true + hidden: false + 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: 36040 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -347,7 +403,6 @@ questions: schema: type: string default: "100Gi" - - variable: hostPathMounts label: "Custom app storage" group: "Storage" @@ -402,104 +457,9 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -511,7 +471,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/incubator/readarr/SCALE/questions.yaml b/charts/incubator/readarr/SCALE/questions.yaml index 83303799858..f842de7a3a3 100644 --- a/charts/incubator/readarr/SCALE/questions.yaml +++ b/charts/incubator/readarr/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +64,27 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -92,14 +104,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -111,60 +123,91 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 8787 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 8787 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36038 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 8787 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8787 + editable: true + hidden: false + 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: 36038 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -275,104 +318,9 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -384,7 +332,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/incubator/sabnzbd/SCALE/questions.yaml b/charts/incubator/sabnzbd/SCALE/questions.yaml index 73d64929e0b..68c99166689 100644 --- a/charts/incubator/sabnzbd/SCALE/questions.yaml +++ b/charts/incubator/sabnzbd/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,8 +64,6 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - - # Docker specific env - variable: env group: "Configuration" @@ -79,15 +78,21 @@ questions: type: string default: "" required: false + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -100,7 +105,6 @@ questions: label: "Value" schema: type: string - # Enable Host Networking - variable: hostNetwork group: "Networking" @@ -108,14 +112,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -127,60 +131,91 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 8080 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 8080 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36045 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 8080 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8080 + editable: true + hidden: false + 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: 36045 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -291,104 +326,9 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -400,7 +340,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/incubator/tvheadend/SCALE/questions.yaml b/charts/incubator/tvheadend/SCALE/questions.yaml index b293ef126cc..5ad48392a21 100644 --- a/charts/incubator/tvheadend/SCALE/questions.yaml +++ b/charts/incubator/tvheadend/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -54,7 +55,6 @@ questions: description: "Create new pods and then kill old ones" - value: "Recreate" description: "Kill existing pods before creating new ones" - # Configure Time Zone - variable: timezone group: "Container Image" @@ -64,8 +64,50 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - - # Service Configuration + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: PUID + label: "PUID" + description: "Sets the PUID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: PGID + label: "PGID" + description: "Sets the PGID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" + - variable: envList + label: "Image environment" + group: "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 # Enable Host Networking - variable: hostNetwork group: "Networking" @@ -73,14 +115,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -92,59 +134,90 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 9981 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 9981 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36042 - required: true + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 9981 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 9981 + editable: true + hidden: false + 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: 36042 + required: true - variable: htsp - label: "HTSP service" - description: "Service to connect to htsp" + label: "HTSP Service" + description: "HTSP service" schema: type: dict attrs: @@ -153,60 +226,92 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: tcp + label: "TCP Service Port Configuration" schema: - type: string - default: "TCP" - hidden: true - enum: - - value: TCP - description: "TCP" - - value: "UDP" - description: "UDP" - - variable: port - label: "container port" - schema: - type: int - default: 9982 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 9982 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36043 - required: true + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "TCP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 9982 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 9982 + editable: true + hidden: false + 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: 36043 + required: true - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -317,176 +422,3 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - variable: PUID - group: "Advanced" - label: "PUID" - description: "Sets the PUID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - - variable: PGID - group: "Advanced" - label: "PGID" - description: "Sets the PGID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" - # Enable privileged - - variable: securityContext - group: "Advanced" - label: "Security Context" - schema: - type: dict - attrs: - - variable: privileged - label: "Enable privileged mode for Common-Chart based charts" - schema: - type: boolean - default: false - # Set Pod Security Policy - - variable: podSecurityContext - group: "Advanced" - label: "Pod Security Context" - schema: - type: dict - attrs: - - variable: runAsNonRoot - label: "runAsNonRoot" - schema: - type: boolean - default: false - - variable: runAsUser - label: "runAsUser" - description: "The UserID of the user running the application" - schema: - type: int - default: 0 - - variable: runAsGroup - label: "runAsGroup" - description: The groupID this App of the user running the application" - schema: - type: int - default: 0 - - variable: supplementalGroups - label: "supplementalGroups" - description: "Additional groups this App needs access to" - schema: - type: list - default: [] - items: - - variable: Group - label: "Group" - schema: - type: int - default: 568 - - variable: fsGroup - label: "fsGroup" - description: "The group that should own ALL storage." - schema: - type: int - default: 568 - - variable: fsGroupChangePolicy - label: "When should we take ownership?" - schema: - type: string - default: "OnRootMismatch" - enum: - - value: "OnRootMismatch" - description: "OnRootMismatch" - - value: "Always" - description: "Always" diff --git a/charts/incubator/unifi/SCALE/questions.yaml b/charts/incubator/unifi/SCALE/questions.yaml index 3e55996d9bd..89d3472596d 100644 --- a/charts/incubator/unifi/SCALE/questions.yaml +++ b/charts/incubator/unifi/SCALE/questions.yaml @@ -6,18 +6,19 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" description: "WARNING" -portals: web_portal: protocols: - "$kubernetes-resource_configmap_portal_protocol" @@ -41,7 +42,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +63,39 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: PUID + label: "PUID" + description: "Sets the PUID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: PGID + label: "PGID" + description: "Sets the PGID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -92,14 +115,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -111,59 +134,90 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTPS" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 8443 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 8443 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36035 - required: true - - variable: tcp - label: "Unifi Device Communications" - description: "This services is used for devices to communicate with the controller" + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 8443 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8443 + editable: true + hidden: false + 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: 36035 + required: true + - variable: comm + label: "Unifi Device Communication Service" + description: "Unifi Device Communication Service" schema: type: dict attrs: @@ -174,59 +228,90 @@ questions: 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" + 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: "ClusterIP" + default: "LoadBalancer" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: tcp + label: "TCP Service Port Configuration" schema: - type: string - default: "TCP" - hidden: true - enum: - - value: TCP - description: "TCP" - - value: "UDP" - description: "UDP" - - variable: port - label: "container port" - schema: - type: int - default: 8080 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 8080 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36036 - required: true - - variable: udp - label: "Stun Device Communications" - description: "This services is used for devices to communicate with the controller using STUN" + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "TCP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 8080 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8080 + editable: true + hidden: false + 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: 36036 + required: true + - variable: stun + label: "STUN Device Communication Service" + description: "STUN Device Communication Service" schema: type: dict attrs: @@ -237,59 +322,90 @@ questions: 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" + 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: "ClusterIP" + default: "LoadBalancer" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: tcp + label: "TCP Service Port Configuration" schema: - type: string - default: "UDP" - hidden: true - enum: - - value: TCP - description: "TCP" - - value: "UDP" - description: "UDP" - - variable: port - label: "container port" - schema: - type: int - default: 3478 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 3478 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36037 - required: true + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "UDP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 3478 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 3478 + editable: true + hidden: false + 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: 36037 + required: true - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -346,8 +462,6 @@ questions: schema: type: string default: "100Gi" - - - variable: hostPathMounts label: "Custom app storage" group: "Storage" @@ -402,234 +516,3 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - variable: tcp - label: "TCP Ingress Configuration" - schema: - type: dict - attrs: - - variable: enabled - label: "Enable TCP Ingress" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: type - label: "Select Ingress Type" - schema: - type: string - default: "TCP" - required: true - editable: false - hidden: true - - variable: entrypoint - label: "Select Entrypoint" - schema: - type: string - default: "unificom" - required: true - enum: - - value: "unificom" - description: "Unifi Communications TCP: port 8080" - - variable: udp - label: "UDP Ingress Configuration" - schema: - type: dict - attrs: - - variable: enabled - label: "Enable UDP Ingress" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: type - label: "Select Ingress Type" - schema: - type: string - default: "UDP" - required: true - editable: false - hidden: true - - variable: entrypoint - label: "Select Entrypoint" - schema: - type: string - default: "stun-udp" - required: true - enum: - - value: "stun-udp" - description: "STUN UDP: port 3478" - - variable: PUID - group: "Advanced" - label: "PUID" - description: "Sets the PUID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - - variable: PGID - group: "Advanced" - label: "PGID" - description: "Sets the PGID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" - # Enable privileged - - variable: securityContext - group: "Advanced" - label: "Security Context" - schema: - type: dict - attrs: - - variable: privileged - label: "Enable privileged mode for Common-Chart based charts" - schema: - type: boolean - default: false - # Set Pod Security Policy - - variable: podSecurityContext - group: "Advanced" - label: "Pod Security Context" - schema: - type: dict - attrs: - - variable: runAsNonRoot - label: "runAsNonRoot" - schema: - type: boolean - default: false - - variable: runAsUser - label: "runAsUser" - description: "The UserID of the user running the application" - schema: - type: int - default: 0 - - variable: runAsGroup - label: "runAsGroup" - description: The groupID this App of the user running the application" - schema: - type: int - default: 0 - - variable: supplementalGroups - label: "supplementalGroups" - description: "Additional groups this App needs access to" - schema: - type: list - default: [] - items: - - variable: Group - label: "Group" - schema: - type: int - default: 568 - - variable: fsGroup - label: "fsGroup" - description: "The group that should own ALL storage." - schema: - type: int - default: 568 - - variable: fsGroupChangePolicy - label: "When should we take ownership?" - schema: - type: string - default: "OnRootMismatch" - enum: - - value: "OnRootMismatch" - description: "OnRootMismatch" - - value: "Always" - description: "Always" diff --git a/charts/stable/bitwarden/SCALE/questions.yaml b/charts/stable/bitwarden/SCALE/questions.yaml index 089138c86d3..d35ae274ff7 100644 --- a/charts/stable/bitwarden/SCALE/questions.yaml +++ b/charts/stable/bitwarden/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -62,7 +64,7 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" -# Configure Bitwarden: + # Configure Bitwarden: - variable: bitwardenrs label: "" group: "Configuration" @@ -173,7 +175,6 @@ questions: schema: type: string default: "" - - variable: smtp label: "SMTP Settings (Email)" schema: @@ -256,7 +257,6 @@ questions: schema: type: boolean default: false - - variable: allowSignups label: "Allow Signup" description: "Allow any user to sign-up: https://github.com/dani-garcia/bitwarden_rs/wiki/Disable-registration-of-new-users" @@ -275,14 +275,12 @@ questions: schema: type: string default: "" - - variable: showPasswordHint label: "Show password hints" description: "https://github.com/dani-garcia/bitwarden_rs/wiki/Password-hint-display" schema: type: boolean default: true - - variable: signupwhitelistenable label: "Enable Signup Whitelist" description: "allowSignups is ignored if set" @@ -360,15 +358,27 @@ questions: schema: type: string default: "" + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -389,19 +399,17 @@ questions: type: boolean default: false hidden: true - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict - hidden: true attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict - hidden: true attrs: - variable: enabled label: "Enable the service" @@ -410,60 +418,92 @@ questions: 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" + 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: "ClusterIP" - hidden: true + default: "NodePort" enum: + - value: "NodePort" + description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: true - enum: - - value: HTTP - description: "HTTP" - - variable: port - label: "container port" - schema: - type: int - default: 8080 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 8080 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36000 - required: true - hidden: true + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 8080 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8080 + editable: true + hidden: false + 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: 36000 + required: true - variable: ws - label: "Websocket service" - description: "Websocket Service" + label: "WebSocket Service" + description: "WebSocket Service" schema: type: dict - hidden: true attrs: - variable: enabled label: "Enable the service" @@ -472,59 +512,91 @@ questions: 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" + 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: "ClusterIP" - hidden: true enum: + - value: "NodePort" + description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: ws + label: "WebSocket Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: true - enum: - - value: HTTP - description: "HTTP" - - variable: port - label: "container port" - schema: - type: int - default: 3012 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 3012 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36001 - required: true - hidden: true - -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 3012 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 3012 + editable: true + hidden: false + 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: 36001 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -746,104 +818,9 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -855,7 +832,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/stable/collabora-online/SCALE/questions.yaml b/charts/stable/collabora-online/SCALE/questions.yaml index 9af0a96b809..186da46c71b 100644 --- a/charts/stable/collabora-online/SCALE/questions.yaml +++ b/charts/stable/collabora-online/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -42,7 +44,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -64,8 +65,7 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - - # environmentVariables Configuraiton + # envList Configuraiton - variable: env group: "Configuration" label: "Environment Variables Configuration" @@ -111,14 +111,14 @@ questions: type: string default: 'collabora\.domain\.tld' # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -131,8 +131,6 @@ questions: label: "Value" schema: type: string - - # Service Configuration # Enable Host Networking - variable: hostNetwork group: "Networking" @@ -140,14 +138,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -159,56 +157,87 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 9980 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 9980 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36004 - required: true + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 9980 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 9980 + editable: true + hidden: false + 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: 36004 + required: true # Reverse Proxy - variable: hostPathMounts label: "Custom app storage" @@ -264,90 +293,3 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" diff --git a/charts/stable/deepstack-cpu/SCALE/questions.yaml b/charts/stable/deepstack-cpu/SCALE/questions.yaml index 0f6d92f0eae..ec6504e10ec 100644 --- a/charts/stable/deepstack-cpu/SCALE/questions.yaml +++ b/charts/stable/deepstack-cpu/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -26,7 +28,6 @@ portals: ports: - "$kubernetes-resource_configmap_portal_port" questions: - # Portal - variable: portal group: "Container Image" @@ -43,7 +44,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -65,16 +65,39 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: PUID + label: "PUID" + description: "Sets the PUID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: PGID + label: "PGID" + description: "Sets the PGID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -87,7 +110,6 @@ questions: label: "Value" schema: type: string - - variable: env group: "Configuration" label: "Image Environment" @@ -147,24 +169,21 @@ questions: type: string default: "/modelstore/detection" required: true - # Enable Host Networking - - variable: hostNetwork group: "Networking" label: "Enable Host Networking" schema: type: boolean default: false - - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -176,58 +195,88 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 5000 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 5000 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36005 - required: true - -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 5000 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 5000 + editable: true + hidden: false + 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: 36005 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" group: "Storage" @@ -340,124 +389,3 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - variable: PUID - group: "Advanced" - label: "PUID" - description: "Sets the PUID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - - variable: PGID - group: "Advanced" - label: "PGID" - description: "Sets the PGID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" - # Enable privileged - - variable: securityContext - group: "Advanced" - label: "Security Context" - schema: - type: dict - attrs: - - variable: privileged - label: "Enable privileged mode for Common-Chart based charts" - schema: - type: boolean - default: false diff --git a/charts/stable/emby/SCALE/questions.yaml b/charts/stable/emby/SCALE/questions.yaml index e3dc93459f6..7ab7940ecbb 100644 --- a/charts/stable/emby/SCALE/questions.yaml +++ b/charts/stable/emby/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +64,27 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -92,14 +104,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -111,57 +123,88 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 8096 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 8096 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36006 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 8096 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8096 + editable: true + hidden: false + 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: 36006 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" group: "Storage" @@ -283,104 +326,9 @@ questions: $ref: - "definitions/scaleGPU" attrs: [] - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -392,7 +340,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/stable/esphome/SCALE/questions.yaml b/charts/stable/esphome/SCALE/questions.yaml index 7a6a47c2c7b..751ee59700c 100644 --- a/charts/stable/esphome/SCALE/questions.yaml +++ b/charts/stable/esphome/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -63,15 +65,15 @@ questions: $ref: - "definitions/timezone" # Configure Enviroment Variables - - variable: environment + - variable: envList + label: "Image environment" group: "Configuration" - label: "Environment Variables" schema: type: list default: [] items: - - variable: environmentVariable - label: "" + - variable: envItem + label: "Environment Variable" schema: type: dict attrs: @@ -83,7 +85,6 @@ questions: label: "Value" schema: type: string - # Service Configuration # Enable Host Networking - variable: hostNetwork group: "Networking" @@ -91,14 +92,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -110,56 +111,87 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 6052 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 6052 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36007 - required: true + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 6052 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 6052 + editable: true + hidden: false + 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: 36007 + required: true # Configure app volumes - variable: persistence label: "Integrated Persistent Storage" @@ -325,96 +357,9 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -426,7 +371,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/stable/handbrake/SCALE/questions.yaml b/charts/stable/handbrake/SCALE/questions.yaml index 63f3798bab6..9cdf9d820f8 100644 --- a/charts/stable/handbrake/SCALE/questions.yaml +++ b/charts/stable/handbrake/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -26,7 +28,6 @@ portals: ports: - "$kubernetes-resource_configmap_portal_port" questions: - # Portal - variable: portal group: "Container Image" @@ -43,7 +44,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -65,16 +65,39 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - - # Configure Enviroment Variables - - variable: environmentVariables + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: PUID + label: "PUID" + description: "Sets the PUID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: PGID + label: "PGID" + description: "Sets the PGID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" + # Configure Enviroment Variables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -87,7 +110,6 @@ questions: label: "Value" schema: type: string - - variable: env group: "Configuration" label: "Image Environment" @@ -103,28 +125,28 @@ questions: show_subquestions_if: true subquestions: - variable: DISPLAY_WIDTH - label: "DISPLAY_WIDTH" + label: "DISPLAY_WIDTH" description: "Width (in pixels) of the application's window." schema: type: string default: "1280" required: true - variable: DISPLAY_HEIGHT - label: "DISPLAY_HEIGHT" + label: "DISPLAY_HEIGHT" description: "Height (in pixels) of the application's window." schema: type: string default: "768" required: true - variable: SECURE_CONNECTION - label: "SECURE_CONNECTION" + label: "SECURE_CONNECTION" description: "When set to 1, an encrypted connection is used to access the application's GUI (either via a web browser or VNC client). See the Security section for more details." schema: type: string default: "0" required: true - variable: VNC_PASSWORD - label: "VNC_PASSWORD" + label: "VNC_PASSWORD" description: "Password needed to connect to the application's GUI. See the VNC Password section for more details." schema: private: true @@ -139,52 +161,48 @@ questions: show_subquestions_if: true subquestions: - variable: AUTOMATED_CONVERSION_PRESET - label: "AUTOMATED_CONVERSION_PRESET" + label: "AUTOMATED_CONVERSION_PRESET" description: "HandBrake preset used by the automatic video converter. Identification of a preset must follow the format /" schema: type: string - default: 'General/Very Fast 1080p30' + default: "General/Very Fast 1080p30" required: true - variable: AUTOMATED_CONVERSION_FORMAT - label: "AUTOMATED_CONVERSION_FORMAT" + label: "AUTOMATED_CONVERSION_FORMAT" description: "Video container format used by the automatic video converter for output files. This is typically the video filename extension." schema: type: string - default: 'mp4' + default: "mp4" required: true - variable: AUTOMATED_CONVERSION_KEEP_SOURCE - label: "AUTOMATED_CONVERSION_KEEP_SOURCE" + label: "AUTOMATED_CONVERSION_KEEP_SOURCE" description: "When set to 0, a video that has been successfully converted is removed from the watch folder." schema: type: string default: "1" required: true - variable: AUTOMATED_CONVERSION_NON_VIDEO_FILE_ACTION - label: "AUTOMATED_CONVERSION_NON_VIDEO_FILE_ACTION" + label: "AUTOMATED_CONVERSION_NON_VIDEO_FILE_ACTION" description: "When set to ignore, a non-video file found in the watch folder is ignored. If set to copy, a non-video file is copied as-is to the output folder." schema: type: string - default: 'ignore' + default: "ignore" required: true - - # Enable Host Networking - - variable: hostNetwork group: "Networking" label: "Enable Host Networking" schema: type: boolean default: false - - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -196,58 +214,89 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 5800 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 5800 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36002 - required: true + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 5800 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 5800 + editable: true + hidden: false + 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: 36002 + required: true - variable: vnc - label: "VNC service" + label: "VNC Service" description: "VNC Service" schema: type: dict @@ -259,58 +308,88 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: tcp + label: "TCP Service Port Configuration" schema: - type: string - default: "TCP" - hidden: true - enum: - - value: TCP - description: "TCP" - - value: "UDP" - description: "UDP" - - variable: port - label: "container port" - schema: - type: int - default: 5900 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 5900 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36003 - required: true - -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "TCP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 5900 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 5900 + editable: true + hidden: false + 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: 36003 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" group: "Storage" @@ -458,124 +537,3 @@ questions: required: true default: "/dev/ttyACM0" editable: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - variable: PUID - group: "Advanced" - label: "PUID" - description: "Sets the PUID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - - variable: PGID - group: "Advanced" - label: "PGID" - description: "Sets the PGID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" - # Enable privileged - - variable: securityContext - group: "Advanced" - label: "Security Context" - schema: - type: dict - attrs: - - variable: privileged - label: "Enable privileged mode for Common-Chart based charts" - schema: - type: boolean - default: false diff --git a/charts/stable/home-assistant/SCALE/questions.yaml b/charts/stable/home-assistant/SCALE/questions.yaml index c3abc6c105b..4701eef3711 100644 --- a/charts/stable/home-assistant/SCALE/questions.yaml +++ b/charts/stable/home-assistant/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -62,7 +64,6 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - - variable: git group: "Configuration" label: "Home-Assistant Git Settings" @@ -79,15 +80,39 @@ questions: schema: type: string default: "" + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: PUID + label: "PUID" + description: "Sets the PUID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: PGID + label: "PGID" + description: "Sets the PGID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -107,14 +132,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -126,57 +151,88 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 8123 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 8123 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36008 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 8123 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8123 + editable: true + hidden: false + 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: 36008 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" group: "Storage" @@ -324,175 +380,3 @@ questions: required: true default: "/dev/ttyACM0" editable: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - variable: PUID - group: "Advanced" - label: "PUID" - description: "Sets the PUID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - - variable: PGID - group: "Advanced" - label: "PGID" - description: "Sets the PGID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" - # Enable privileged - - variable: securityContext - group: "Advanced" - label: "Security Context" - schema: - type: dict - attrs: - - variable: privileged - label: "Enable privileged mode for Common-Chart based charts" - schema: - type: boolean - default: false - # Set Pod Security Policy - - variable: podSecurityContext - group: "Advanced" - label: "Pod Security Context" - schema: - type: dict - attrs: - - variable: runAsNonRoot - label: "runAsNonRoot" - schema: - type: boolean - default: false - - variable: runAsUser - label: "runAsUser" - description: "The UserID of the user running the application" - schema: - type: int - default: 0 - - variable: runAsGroup - label: "runAsGroup" - description: The groupID this App of the user running the application" - schema: - type: int - default: 0 - - variable: supplementalGroups - label: "supplementalGroups" - description: "Additional groups this App needs access to" - schema: - type: list - default: [5, 20, 24] - items: - - variable: Group - label: "Group" - schema: - type: int - default: 568 - - variable: fsGroup - label: "The group that should own ALL storage." - schema: - type: int - default: 0 - - variable: fsGroupChangePolicy - label: "When should we chmod/chown?" - schema: - type: string - default: "OnRootMismatch" - enum: - - value: "OnRootMismatch" - description: "OnRootMismatch" - - value: "Always" - description: "Always" diff --git a/charts/stable/jackett/SCALE/questions.yaml b/charts/stable/jackett/SCALE/questions.yaml index 66d7063a650..ad1c7e7dbd8 100644 --- a/charts/stable/jackett/SCALE/questions.yaml +++ b/charts/stable/jackett/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -62,16 +64,27 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -91,14 +104,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -110,57 +123,88 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 9117 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 9117 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36009 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 9117 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 9117 + editable: true + hidden: false + 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: 36009 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" group: "Storage" @@ -273,104 +317,9 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -382,7 +331,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/stable/jellyfin/SCALE/questions.yaml b/charts/stable/jellyfin/SCALE/questions.yaml index 423f4cb4dd1..73071952139 100644 --- a/charts/stable/jellyfin/SCALE/questions.yaml +++ b/charts/stable/jellyfin/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +64,27 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -92,14 +104,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -111,57 +123,88 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 8096 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 8096 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36010 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 8096 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8096 + editable: true + hidden: false + 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: 36010 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" group: "Storage" @@ -283,104 +326,9 @@ questions: $ref: - "definitions/scaleGPU" attrs: [] - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -392,7 +340,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/stable/kms/SCALE/questions.yaml b/charts/stable/kms/SCALE/questions.yaml index b12daac9ddd..ca8feb22d28 100644 --- a/charts/stable/kms/SCALE/questions.yaml +++ b/charts/stable/kms/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -33,7 +35,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -55,16 +56,39 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: PUID + label: "PUID" + description: "Sets the PUID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: PGID + label: "PGID" + description: "Sets the PGID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -84,14 +108,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -103,57 +127,88 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 1688 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 1688 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36011 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 1688 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 1688 + editable: true + hidden: false + 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: 36011 + required: true + ## TrueCharts Specific - variable: hostPathMounts label: "Custom app storage" group: "Storage" @@ -208,130 +263,3 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "KMS Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: enabled - label: "Enable TCP Reverse Proxy" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: type - label: "Select Reverse Proxy Type" - schema: - type: string - default: "TCP" - required: true - editable: false - hidden: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - type: string - default: "kms" - required: true - enum: - - value: "kms" - description: "KMS: port 1688" - - variable: PUID - group: "Advanced" - label: "PUID" - description: "Sets the PUID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - - variable: PGID - group: "Advanced" - label: "PGID" - description: "Sets the PGID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" - # Enable privileged - - variable: securityContext - group: "Advanced" - label: "Security Context" - schema: - type: dict - attrs: - - variable: privileged - label: "Enable privileged mode for Common-Chart based charts" - schema: - type: boolean - default: false - # Set Pod Security Policy - - variable: podSecurityContext - group: "Advanced" - label: "Pod Security Context" - schema: - type: dict - attrs: - - variable: runAsNonRoot - label: "runAsNonRoot" - schema: - type: boolean - default: false - - variable: runAsUser - label: "runAsUser" - description: "The UserID of the user running the application" - schema: - type: int - default: 0 - - variable: runAsGroup - label: "runAsGroup" - description: The groupID this App of the user running the application" - schema: - type: int - default: 0 - - variable: supplementalGroups - label: "supplementalGroups" - description: "Additional groups this App needs access to" - schema: - type: list - default: [] - items: - - variable: Group - label: "Group" - schema: - type: int - default: 0 - - variable: fsGroup - label: "The group that should own ALL storage." - schema: - type: int - default: 0 - - variable: fsGroupChangePolicy - label: "When should we chmod/chown?" - schema: - type: string - default: "OnRootMismatch" - enum: - - value: "OnRootMismatch" - description: "OnRootMismatch" - - value: "Always" - description: "Always" diff --git a/charts/stable/lidarr/SCALE/questions.yaml b/charts/stable/lidarr/SCALE/questions.yaml index 9168ca937fb..59fed53cdbd 100644 --- a/charts/stable/lidarr/SCALE/questions.yaml +++ b/charts/stable/lidarr/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +64,27 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -92,14 +104,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -111,57 +123,88 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 8686 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 8686 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36012 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 8686 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8686 + editable: true + hidden: false + 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: 36012 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" group: "Storage" @@ -274,104 +317,9 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -383,7 +331,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/stable/ombi/SCALE/questions.yaml b/charts/stable/ombi/SCALE/questions.yaml index b3591906710..3fac0408d29 100644 --- a/charts/stable/ombi/SCALE/questions.yaml +++ b/charts/stable/ombi/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +64,27 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -92,14 +104,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -111,57 +123,88 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 3579 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 3579 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36013 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 3579 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 3579 + editable: true + hidden: false + 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: 36013 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" group: "Storage" @@ -274,104 +317,9 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -383,7 +331,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/stable/plex/SCALE/questions.yaml b/charts/stable/plex/SCALE/questions.yaml index e5a56723493..28f0251e267 100644 --- a/charts/stable/plex/SCALE/questions.yaml +++ b/charts/stable/plex/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,7 +64,6 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - - variable: env group: "Configuration" label: "Image Environment" @@ -88,15 +88,21 @@ questions: schema: type: string default: "" + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -116,14 +122,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -135,57 +141,88 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTPS" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 32400 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 32400 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 32400 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTPS" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 32400 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 32400 + editable: true + hidden: false + 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: 32400 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" group: "Storage" @@ -307,107 +344,9 @@ questions: $ref: - "definitions/scaleGPU" attrs: [] - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - value: "plex" - description: "Plex: HTTPS/TLS port 32400" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -419,7 +358,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/stable/radarr/SCALE/questions.yaml b/charts/stable/radarr/SCALE/questions.yaml index 7e5b75ca0ee..ea13281786c 100644 --- a/charts/stable/radarr/SCALE/questions.yaml +++ b/charts/stable/radarr/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,17 +64,27 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -93,14 +104,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -112,57 +123,88 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 7878 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 7878 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36016 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 7878 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 7878 + editable: true + hidden: false + 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: 36016 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" group: "Storage" @@ -275,103 +317,9 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -383,7 +331,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/stable/sonarr/SCALE/questions.yaml b/charts/stable/sonarr/SCALE/questions.yaml index 58ffeac9845..752d2be3911 100644 --- a/charts/stable/sonarr/SCALE/questions.yaml +++ b/charts/stable/sonarr/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +64,27 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -85,7 +97,6 @@ questions: label: "Value" schema: type: string - # Enable Host Networking - variable: hostNetwork group: "Networking" @@ -93,14 +104,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -112,57 +123,88 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 8989 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 8989 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36017 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 8989 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8989 + editable: true + hidden: false + 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: 36017 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" group: "Storage" @@ -275,104 +317,9 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -384,7 +331,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/stable/syncthing/SCALE/questions.yaml b/charts/stable/syncthing/SCALE/questions.yaml index a9f1dcd08fc..bf343fda1cb 100644 --- a/charts/stable/syncthing/SCALE/questions.yaml +++ b/charts/stable/syncthing/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -53,16 +55,15 @@ questions: description: "Create new pods and then kill old ones" - value: "Recreate" description: "Kill existing pods before creating new ones" - # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -75,7 +76,6 @@ questions: label: "Value" schema: type: string - # Enable Host Networking - variable: hostNetwork group: "Networking" @@ -83,14 +83,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -102,57 +102,88 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "Container port" - schema: - type: int - default: 8384 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 8384 - editable: false - hidden: true - # - variable: nodePort - # label: "Host nodePort to expose to (optional)" - # description: "Only gets used when nodePort is selected" - # schema: - # type: int - # min: 9000 - # max: 65535 - # default: 36024 - # required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 8384 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8384 + editable: true + hidden: false + 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: 36024 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" group: "Storage" @@ -265,96 +296,9 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -366,7 +310,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/stable/tautulli/SCALE/questions.yaml b/charts/stable/tautulli/SCALE/questions.yaml index 9d0c153dfb3..e9b9d33bbf4 100644 --- a/charts/stable/tautulli/SCALE/questions.yaml +++ b/charts/stable/tautulli/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +64,27 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -85,7 +97,6 @@ questions: label: "Value" schema: type: string - # Enable Host Networking - variable: hostNetwork group: "Networking" @@ -93,14 +104,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -112,57 +123,88 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 8181 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 8181 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36018 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 8181 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8181 + editable: true + hidden: false + 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: 36018 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" group: "Storage" @@ -275,104 +317,9 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -384,7 +331,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/stable/traefik/SCALE/questions.yaml b/charts/stable/traefik/SCALE/questions.yaml index 04324aa77e5..ae208854589 100644 --- a/charts/stable/traefik/SCALE/questions.yaml +++ b/charts/stable/traefik/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -50,103 +52,18 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" + - variable: env + group: "Configuration" + label: "Image Environment" schema: type: dict attrs: - - variable: main - label: "WebUI" + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" schema: - type: dict - attrs: - - variable: enabled - label: "Enable Web Reverse Proxy" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP-IR" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "api@internal" - - variable: serviceKind - label: "Service Kind to proxy to" - schema: - hidden: true - editable: false - type: string - default: "TraefikService" - - variable: entrypoint - label: "Select Entrypoint" - schema: - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certType - label: "Select Certificate Type" - schema: - type: string - default: "selfsigned" - enum: - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - type: string - default: "" + type: string + default: "002" - variable: traefik label: "(Advanced) Traefik Settings" group: "Advanced" @@ -742,17 +659,9 @@ questions: schema: type: string default: "" - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -764,7 +673,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict @@ -819,12 +728,12 @@ questions: description: "Please be sure to set the UI to a different port or adapter" group: "WARNING" schema: - type: dict - attrs: - - variable: confirm-warning - description: "Check this to confirm you have made precautions against conflicts on port 80 and 443, such as running the TrueNAS SCALE UI on a different port or adapter." - label: "I understand above warning and its consequences" - schema: - type: boolean - default: false - required: true + type: dict + attrs: + - variable: confirm-warning + description: "Check this to confirm you have made precautions against conflicts on port 80 and 443, such as running the TrueNAS SCALE UI on a different port or adapter." + label: "I understand above warning and its consequences" + schema: + type: boolean + default: false + required: true diff --git a/charts/stable/transmission/SCALE/questions.yaml b/charts/stable/transmission/SCALE/questions.yaml index bc6bc9ef240..3b30aad8db8 100644 --- a/charts/stable/transmission/SCALE/questions.yaml +++ b/charts/stable/transmission/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,7 +64,6 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - - variable: transmissionConfig group: "Configuration" label: "Transmission Settings" @@ -245,16 +245,27 @@ questions: schema: type: int default: 14 - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -267,7 +278,6 @@ questions: label: "Value" schema: type: string - # Enable Host Networking - variable: hostNetwork group: "Networking" @@ -275,14 +285,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -294,59 +304,90 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 9091 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 9091 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36019 - required: true - - variable: tcp - label: "TCP Torrent connections" - description: "This service is used to process incomming torrent connections over TCP" + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 9091 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 9091 + editable: true + hidden: false + 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: 36019 + required: true + - variable: torrent + label: "Torrent Service" + description: "Torrent service" schema: type: dict attrs: @@ -357,8 +398,8 @@ questions: 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" + 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" @@ -367,110 +408,123 @@ questions: description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" - schema: - type: dict - attrs: - - variable: protocol - label: "Port Type" - schema: - type: string - default: "TCP" - hidden: true - enum: - - value: TCP - description: "TCP" - - value: "UDP" - description: "UDP" - - variable: port - label: "container port" - schema: - type: int - default: 51413 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 51413 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36020 - required: true - - variable: udp - label: "UDP Torrent connections" - description: "This service is used to process incomming torrent connections over UDP" - 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" + - value: "LoadBalancer" + description: "LoadBalancer" + - variable: loadBalancerIP + label: "LoadBalancer IP" + description: "LoadBalancerIP" schema: + show_if: [["type", "=", "LoadBalancer"]] type: string - default: "NodePort" - enum: - - value: "NodePort" - description: "NodePort" - - value: "ClusterIP" - description: "ClusterIP" - - variable: port - label: "Port configuration" + 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: protocol - label: "Port Type" + - variable: tcp + label: "TCP Service Port Configuration" schema: - type: string - default: "UDP" - hidden: true - enum: - - value: TCP - description: "TCP" - - value: "UDP" - description: "UDP" - - variable: port - label: "container port" + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "TCP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 51413 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 51413 + editable: true + hidden: false + 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: 36020 + required: true + - variable: udp + label: "UDP Service Port Configuration" schema: - type: int - default: 51413 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 51413 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36020 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "UDP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 51413 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 51413 + editable: true + hidden: false + 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: 36020 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" group: "Storage" @@ -583,104 +637,9 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -692,7 +651,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/charts/stable/truecommand/SCALE/questions.yaml b/charts/stable/truecommand/SCALE/questions.yaml index 9386cf2bae4..3039865a702 100644 --- a/charts/stable/truecommand/SCALE/questions.yaml +++ b/charts/stable/truecommand/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -41,7 +43,6 @@ questions: editable: false type: boolean default: true - # Update Policy - variable: strategyType group: "Container Image" @@ -63,16 +64,39 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: PUID + label: "PUID" + description: "Sets the PUID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: PGID + label: "PGID" + description: "Sets the PGID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" # Configure Enviroment Variables - - variable: environmentVariables + - variable: envList label: "Image environment" group: "Configuration" schema: type: list default: [] items: - - variable: environmentVariable + - variable: envItem label: "Environment Variable" schema: type: dict @@ -85,7 +109,6 @@ questions: label: "Value" schema: type: string - # Enable Host Networking - variable: hostNetwork group: "Networking" @@ -93,14 +116,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -112,60 +135,91 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 80 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 80 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36044 - required: true -## TrueCharts Specific + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 80 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 80 + editable: true + hidden: false + 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: 36044 + required: true + ## TrueCharts Specific - variable: persistence label: "Integrated Persistent Storage" - description: "Websocket Service" + description: "Integrated Persistent Storage" group: "Storage" schema: type: dict @@ -222,7 +276,6 @@ questions: schema: type: string default: "100Gi" - - variable: hostPathMounts label: "Custom app storage" group: "Storage" @@ -277,177 +330,3 @@ questions: schema: type: hostpath required: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" - - - variable: PUID - group: "Advanced" - label: "PUID" - description: "Sets the PUID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - - variable: PGID - group: "Advanced" - label: "PGID" - description: "Sets the PGID env var for LinuxServer.io (compatible) containers" - schema: - type: int - default: 568 - - variable: UMASK - group: "Advanced" - label: "UMASK" - description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" - schema: - type: string - default: "002" - # Enable privileged - - variable: securityContext - group: "Advanced" - label: "Security Context" - schema: - type: dict - attrs: - - variable: privileged - label: "Enable privileged mode for Common-Chart based charts" - schema: - type: boolean - default: false - # Set Pod Security Policy - - variable: podSecurityContext - group: "Advanced" - label: "Pod Security Context" - schema: - type: dict - attrs: - - variable: runAsNonRoot - label: "runAsNonRoot" - schema: - type: boolean - default: false - - variable: runAsUser - label: "runAsUser" - description: "The UserID of the user running the application" - schema: - type: int - default: 0 - - variable: runAsGroup - label: "runAsGroup" - description: The groupID this App of the user running the application" - schema: - type: int - default: 0 - - variable: supplementalGroups - label: "supplementalGroups" - description: "Additional groups this App needs access to" - schema: - type: list - default: [] - items: - - variable: Group - label: "Group" - schema: - type: int - default: 568 - - variable: fsGroup - label: "fsGroup" - description: "The group that should own ALL storage." - schema: - type: int - default: 568 - - variable: fsGroupChangePolicy - label: "When should we take ownership?" - schema: - type: string - default: "OnRootMismatch" - enum: - - value: "OnRootMismatch" - description: "OnRootMismatch" - - value: "Always" - description: "Always" diff --git a/charts/stable/zwavejs2mqtt/SCALE/questions.yaml b/charts/stable/zwavejs2mqtt/SCALE/questions.yaml index 96a21f53d50..cb2d11d4438 100644 --- a/charts/stable/zwavejs2mqtt/SCALE/questions.yaml +++ b/charts/stable/zwavejs2mqtt/SCALE/questions.yaml @@ -6,13 +6,15 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" + description: "Configure Network and Services for container" - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" - name: "Advanced" description: "Advanced Configuration" - name: "WARNING" @@ -53,7 +55,6 @@ questions: description: "Create new pods and then kill old ones" - value: "Recreate" description: "Kill existing pods before creating new ones" - # Configure Time Zone - variable: timezone group: "Container Image" @@ -63,8 +64,26 @@ questions: default: "Etc/UTC" $ref: - "definitions/timezone" - - # Service Configuration + - variable: envList + label: "Image environment" + group: "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 # Enable Host Networking - variable: hostNetwork group: "Networking" @@ -72,14 +91,14 @@ questions: schema: type: boolean default: false - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: type: dict @@ -91,59 +110,90 @@ questions: 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" + 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: "ClusterIP" + default: "NodePort" enum: - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 8091 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 8091 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36022 - required: true + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 8091 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8091 + editable: true + hidden: false + 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: 36022 + required: true - variable: ws - label: "WebSocket service" - description: "This server is used to process WebSocket Connections" + label: "WebSocket Service" + description: "WebSocket Service" schema: type: dict attrs: @@ -154,8 +204,8 @@ questions: 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" + 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: "ClusterIP" @@ -164,46 +214,77 @@ questions: description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - 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: protocol - label: "Port Type" + - variable: ws + label: "WebSocket Service Port Configuration" schema: - type: string - default: "TCP" - hidden: true - enum: - - value: TCP - description: "TCP" - - value: "UDP" - description: "UDP" - - variable: port - label: "container port" - schema: - type: int - default: 3000 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 3000 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36023 - required: true + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "TCP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 3000 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 3000 + editable: true + hidden: false + 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: 36023 + required: true # Configure app volumes - variable: persistence label: "Integrated Persistent Storage" @@ -352,96 +433,9 @@ questions: required: true default: "/dev/ttyACM0" editable: true - - variable: ingress - label: "" - group: "Reverse Proxy Configuration" - schema: - type: dict - attrs: - - variable: main - label: "WebUI" - schema: - type: dict - attrs: - - variable: certType - label: "Select Reverse-Proxy Type" - schema: - type: string - default: "disabled" - enum: - - value: "disabled" - description: "Disabled" - - value: "" - description: "No Encryption/TLS/Certificates" - - value: "selfsigned" - description: "Self-Signed Certificate" - - value: "ixcert" - description: "TrueNAS SCALE Certificate" - - variable: type - label: "Reverse Proxy Type" - schema: - type: string - default: "HTTP" - hidden: true - editable: false - required: true - - variable: serviceName - label: "Service name to proxy to" - schema: - hidden: true - editable: false - type: string - default: "" - - variable: entrypoint - label: "Select Entrypoint" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "websecure" - required: true - enum: - - value: "websecure" - description: "Websecure: HTTPS/TLS port 443" - - variable: hosts - label: "Hosts" - schema: - show_if: [["certType", "!=", "disabled"]] - type: list - default: [] - items: - - variable: host - label: "Host" - schema: - type: dict - attrs: - - variable: host - label: "Domain Name" - required: true - schema: - type: string - - variable: path - label: "path" - schema: - type: string - required: true - hidden: true - default: "/" - - variable: certificate - label: "Select TrueNAS SCALE Certificate" - schema: - type: int - show_if: [["certType", "=", "ixcert"]] - $ref: - - "definitions/certificate" - - variable: authForwardURL - label: "Forward Authentication URL" - schema: - show_if: [["certType", "!=", "disabled"]] - type: string - default: "" # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -453,7 +447,7 @@ questions: default: false # Set Pod Security Policy - variable: podSecurityContext - group: "Advanced" + group: "Security" label: "Pod Security Context" schema: type: dict diff --git a/docs/development/app development/questions-yaml.md b/docs/development/app development/questions-yaml.md index 89b30cf1326..d759844cdcc 100644 --- a/docs/development/app development/questions-yaml.md +++ b/docs/development/app development/questions-yaml.md @@ -88,21 +88,27 @@ groups: - name: "Configuration" description: "additional container configuration" - name: "Networking" - description: "Configure / service for container" - - name: "Storage and Devices" + description: "Configure Network and Services for container" + - name: "Storage" description: "Persist and share data that is separate from the lifecycle of the container" - name: "Resources and Devices" description: "Specify resources/devices to be allocated to workload" - - name: "Reverse Proxy Configuration" - description: "Reverse Proxy configuration" + - name: "Ingress Configuration" + description: "Ingress Configuration" + - name: "Security" + description: "Configure security context" + - name: "Advanced" + description: "Advanced Configuration" - name: "WARNING" description: "WARNING" ``` ##### General Configuration options -These options are always included because almost every chart (eventually) has a use for them and/or other parts of the common chart depend on them. +These options are always* included because almost every chart (eventually) has a use for them and/or other parts of the common chart depend on them. They are called general options, because they affect the basic functionalities of a chart. For example: Custom User environment variables, permissions and timezones. +*`PUID`, `PGID`, `UMASK` are only included when they are needed. + ``` - variable: timezone group: "Configuration" @@ -113,6 +119,31 @@ They are called general options, because they affect the basic functionalities o $ref: - "definitions/timezone" + - variable: env + group: "Configuration" + label: "Image Environment" + schema: + type: dict + attrs: + - variable: PUID + label: "PUID" + description: "Sets the PUID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: PGID + label: "PGID" + description: "Sets the PGID env var for LinuxServer.io (compatible) containers" + schema: + type: int + default: 568 + - variable: UMASK + label: "UMASK" + description: "Sets the UMASK env var for LinuxServer.io (compatible) containers" + schema: + type: string + default: "002" + # Configure Custom Enviroment Variables - variable: environmentVariables label: "Image environment" @@ -136,33 +167,12 @@ They are called general options, because they affect the basic functionalities o type: string ``` -And at the bottom some advanced settings: -``` - - variable: PUID - group: "Advanced" - label: "Common Group ID" - description: "The UserID of the user running any included common chart-based pods" - schema: - type: int - default: 568 +##### Security Context Configuration options - - variable: PGID - group: "Advanced" - label: "Storage and Common Group ID" - description: "The groupID of the user/group running any included common chart-based pods and owning the files!" - schema: - type: int - default: 568 - - variable: UMASK - group: "Advanced" - label: "UMASK (Common Chart)" - description: "The UMASK used (if supported) by any included common chart-based pod" - schema: - type: string - default: "002" +``` # Enable privileged - variable: securityContext - group: "Advanced" + group: "Security" label: "Security Context" schema: type: dict @@ -172,4 +182,56 @@ And at the bottom some advanced settings: schema: type: boolean default: false -``` + # Set Pod Security Policy + - variable: podSecurityContext + group: "Security" + label: "Pod Security Context" + schema: + type: dict + attrs: + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false + - variable: runAsUser + label: "runAsUser" + description: "The UserID of the user running the application" + schema: + type: int + default: 0 + - variable: runAsGroup + label: "runAsGroup" + description: The groupID this App of the user running the application" + schema: + type: int + default: 0 + - variable: supplementalGroups + label: "supplementalGroups" + description: "Additional groups this App needs access to" + schema: + type: list + default: [] + items: + - variable: Group + label: "Group" + schema: + type: int + default: 568 + - variable: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 + - variable: fsGroupChangePolicy + label: "When should we take ownership?" + schema: + type: string + default: "OnRootMismatch" + enum: + - value: "OnRootMismatch" + description: "OnRootMismatch" + - value: "Always" + description: "Always" +``` \ No newline at end of file diff --git a/docs/development/app development/services.md b/docs/development/app development/services.md index 43c1fbd2ff6..84987a0fc97 100644 --- a/docs/development/app development/services.md +++ b/docs/development/app development/services.md @@ -26,75 +26,108 @@ Every App is required to have a main service, the primary thing that users (or o Please keep in mind that every App is different, some just have one service (which *ALWAYS* has to be called `main`) and others need more (which each has to have an unique name). Every App also uses different ports, so please alter accordingly. ``` - - variable: services + - variable: service group: "Networking" - label: "Configure Service" + label: "Configure Service(s)" schema: type: dict attrs: - variable: main - label: "Main service" + 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 + 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" + 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: "ClusterIP" + default: "NodePort" enum: - - value: "nodePort" + - value: "NodePort" description: "NodePort" - value: "ClusterIP" description: "ClusterIP" - - variable: port - label: "Port configuration" + - value: "LoadBalancer" + description: "LoadBalancer" + - variable: loadBalancerIP + label: "LoadBalancer IP" + description: "LoadBalancerIP" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + required: true + - variable: exetrnalIPs + label: "External IP's" + description: "External IP's" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: list + default: [] + items: + - variable: externalIP + label: "External IP" + required: true + schema: + type: string + - variable: ports + label: "Service's Port(s) Configuration" schema: type: dict attrs: - - variable: protocol - label: "Port Type" + - variable: main + label: "Main Service Port Configuration" schema: - type: string - default: "HTTP" - hidden: false - enum: - - value: HTTP - description: "HTTP" - - value: "HTTPS" - description: "HTTPS" - - variable: port - label: "container port" - schema: - type: int - default: 80 - editable: false - hidden: true - - variable: targetport - label: "Internal Service port" - description: "When connecting internally to this App, you'll need this port" - schema: - type: int - default: 80 - editable: false - hidden: true - - variable: nodePort - label: "(optional) host nodePort to expose to" - description: "only get used when nodePort is selected" - schema: - type: int - min: 9000 - max: 65535 - default: 36052 - required: true + type: dict + attrs: + - variable: protocol + label: "Port Type" + schema: + type: string + default: "HTTP" + hidden: false + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: port + label: "Container Port" + schema: + type: int + default: 5076 + editable: false + hidden: true + - variable: targetport + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 5076 + editable: true + hidden: false + 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: 36041 + required: true ``` ##### Unlimited custom services