diff --git a/.github/ct-install.yaml b/.github/ct-install.yaml index 389be2dd256..e253d952e64 100644 --- a/.github/ct-install.yaml +++ b/.github/ct-install.yaml @@ -40,6 +40,11 @@ excluded-charts: - charts/dev/arma3exilemod - charts/dev/assettocorsa - charts/dev/server-7daystodie +- charts/dev/craftopia +- charts/dev/alienswarm +- charts/dev/csgo +- charts/dev/cstrike1-6 +- charts/dev/cstrikeconditionzero chart-repos: - truecharts=https://charts.truecharts.org - truecharts-library=https://library-charts.truecharts.org diff --git a/charts/dev/acestream/Chart.yaml b/charts/dev/acestream/Chart.yaml index 53147dd8eef..425235d3da9 100644 --- a/charts/dev/acestream/Chart.yaml +++ b/charts/dev/acestream/Chart.yaml @@ -1,18 +1,17 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - MediaServer-Video - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "Acestream-engine\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/acestream -icon: https://truecharts.org/_static/img/appicons/acestream.png +icon: https://truecharts.org/img/chart-icons/acestream.png keywords: - acestream - MediaServer-Video @@ -26,4 +25,4 @@ sources: - https://github.com/vstavrinov/acestream-service - https://hub.docker.com/r/vstavrinov/acestream-service type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/acestream/questions.yaml b/charts/dev/acestream/questions.yaml new file mode 100644 index 00000000000..67f912c3948 --- /dev/null +++ b/charts/dev/acestream/questions.yaml @@ -0,0 +1,282 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8008 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 6878 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: acestreamcache + label: "acestreamcache Storage" + description: "Stream cache data" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/acestream/templates/common.yaml b/charts/dev/acestream/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/acestream/templates/common.yaml +++ b/charts/dev/acestream/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/ama/.helmignore b/charts/dev/actualserver/.helmignore similarity index 100% rename from charts/dev/ama/.helmignore rename to charts/dev/actualserver/.helmignore diff --git a/charts/dev/actualserver/Chart.yaml b/charts/dev/actualserver/Chart.yaml new file mode 100644 index 00000000000..68e2f96e434 --- /dev/null +++ b/charts/dev/actualserver/Chart.yaml @@ -0,0 +1,30 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - Other +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "Actual is a super fast privacy-focused app for managing your finances.\ + \ You own your data and it will sync it across all devices with optional end-to-end\ + \ encryption..\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/actualserver +icon: https://truecharts.org/img/chart-icons/actualserver.png +keywords: +- actualserver +- Other +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: actualserver +sources: +- https://github.com/Kippenhof/docker-templates +- https://hub.docker.com/r/kippenhof/actual-server +type: application +version: 0.0.10 diff --git a/charts/dev/actualserver/icon.png b/charts/dev/actualserver/icon.png new file mode 100644 index 00000000000..90aa2c0d2e7 Binary files /dev/null and b/charts/dev/actualserver/icon.png differ diff --git a/charts/dev/actualserver/questions.yaml b/charts/dev/actualserver/questions.yaml new file mode 100644 index 00000000000..1f3a55cb4c6 --- /dev/null +++ b/charts/dev/actualserver/questions.yaml @@ -0,0 +1,169 @@ +# Include{groups} +portals: {} +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: false +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + +# Include{persistenceList} + + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/actualserver/readme.md b/charts/dev/actualserver/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/actualserver/templates/common.yaml b/charts/dev/actualserver/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/actualserver/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/actualserver/values.yaml b/charts/dev/actualserver/values.yaml new file mode 100644 index 00000000000..a693b395dd6 --- /dev/null +++ b/charts/dev/actualserver/values.yaml @@ -0,0 +1,25 @@ +env: {} +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/actualserver + tag: latest +persistence: {} +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: false + ports: + main: + enabled: false diff --git a/charts/dev/adguard-home/Chart.yaml b/charts/dev/adguard-home/Chart.yaml index fc31fc06c5c..9ab0dc2ef1e 100644 --- a/charts/dev/adguard-home/Chart.yaml +++ b/charts/dev/adguard-home/Chart.yaml @@ -1,15 +1,14 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Network - Network-DNS - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "AdGuard Home is a network-wide software for blocking ads & tracking.\ \ After you set it up, it\u2019ll cover ALL your home devices, and you don\u2019\ @@ -17,7 +16,7 @@ description: "AdGuard Home is a network-wide software for blocking ads & trackin \ connected devices, it becomes more and more important to be able to control your\ \ whole network." home: https://github.com/truecharts/apps/tree/master/charts/stable/adguard-home -icon: https://truecharts.org/_static/img/appicons/adguard-home.png +icon: https://truecharts.org/img/chart-icons/adguard-home.png keywords: - adguard-home - Network @@ -31,4 +30,4 @@ name: adguard-home sources: - https://registry.hub.docker.com/r/adguard/adguardhome type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/adguard-home/questions.yaml b/charts/dev/adguard-home/questions.yaml new file mode 100644 index 00000000000..8e34e69ea84 --- /dev/null +++ b/charts/dev/adguard-home/questions.yaml @@ -0,0 +1,342 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 3000 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: HTTP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 3000 + + - variable: dnsserver + label: 'dnsserver service' + description: "Port that is used for the DNS Server (Changing this is not recomended)" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: dnsserver + label: "dnsserver Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 53 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 53 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: workingdirectory + label: "workingdirectory Storage" + description: "Configuration Directory" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/adguard-home/templates/common.yaml b/charts/dev/adguard-home/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/adguard-home/templates/common.yaml +++ b/charts/dev/adguard-home/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/adguardhome-sync/Chart.yaml b/charts/dev/adguardhome-sync/Chart.yaml index 153f2ecdb94..ae4391a37a6 100644 --- a/charts/dev/adguardhome-sync/Chart.yaml +++ b/charts/dev/adguardhome-sync/Chart.yaml @@ -1,19 +1,18 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Other - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: Adguardhome-sync(https://github.com/bakito/adguardhome-sync/) is a tool to synchronize AdGuardHome config to replica instances. home: https://github.com/truecharts/apps/tree/master/charts/stable/adguardhome-sync -icon: https://truecharts.org/_static/img/appicons/adguardhome-sync.png +icon: https://truecharts.org/img/chart-icons/adguardhome-sync.png keywords: - adguardhome-sync - Other @@ -28,4 +27,4 @@ sources: - https://github.com/orgs/linuxserver/packages/container/package/adguardhome-sync - https://github.com/linuxserver/docker-adguardhome-sync#readme type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/adguardhome-sync/questions.yaml b/charts/dev/adguardhome-sync/questions.yaml new file mode 100644 index 00000000000..ff61bc24acc --- /dev/null +++ b/charts/dev/adguardhome-sync/questions.yaml @@ -0,0 +1,302 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: CONFIGFILE + label: 'CONFIGFILE' + description: "Set a custom config file." + schema: + type: string + default: "" + - variable: UMASK + label: 'UMASK' + description: "Container Variable UMASK" + schema: + type: string + default: "" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8080 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8080 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: config + label: "config Storage" + description: "Contains all relevant configuration files." + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/adguardhome-sync/templates/common.yaml b/charts/dev/adguardhome-sync/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/adguardhome-sync/templates/common.yaml +++ b/charts/dev/adguardhome-sync/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/adminer/Chart.yaml b/charts/dev/adminer/Chart.yaml index 97a28168e4b..ff1ec1b0237 100644 --- a/charts/dev/adminer/Chart.yaml +++ b/charts/dev/adminer/Chart.yaml @@ -1,21 +1,20 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Tools-Utilities - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "Adminer (formerly phpMinAdmin) is a full-featured database management\ \ tool written in PHP. Conversely to phpMyAdmin, it consist of a single file ready\ \ to deploy to the target server. Adminer is available for MySQL, PostgreSQL, SQLite,\ \ MS SQL, Oracle, Firebird, SimpleDB, Elasticsearch and MongoDB.\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/adminer -icon: https://truecharts.org/_static/img/appicons/adminer.png +icon: https://truecharts.org/img/chart-icons/adminer.png keywords: - adminer - Tools-Utilities @@ -29,4 +28,4 @@ sources: - https://github.com/vrana/adminer - http://hub.docker.com/_/adminer/ type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/adminer/questions.yaml b/charts/dev/adminer/questions.yaml new file mode 100644 index 00000000000..7da075b196a --- /dev/null +++ b/charts/dev/adminer/questions.yaml @@ -0,0 +1,283 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: ADMINER_DESIGN + label: 'ADMINER_DESIGN' + description: "Container Variable ADMINERDESIGN" + schema: + type: string + default: "" + - variable: ADMINER_PLUGINS + label: 'ADMINER_PLUGINS' + description: "e.g. ADMINERPLUGINS=tables-filter tinymce" + schema: + type: string + default: "" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8080 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8080 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/adminer/templates/common.yaml b/charts/dev/adminer/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/adminer/templates/common.yaml +++ b/charts/dev/adminer/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/ambd/.helmignore b/charts/dev/agent-dvr/.helmignore similarity index 100% rename from charts/dev/ambd/.helmignore rename to charts/dev/agent-dvr/.helmignore diff --git a/charts/dev/agent-dvr/Chart.yaml b/charts/dev/agent-dvr/Chart.yaml new file mode 100644 index 00000000000..a9eb7f9312d --- /dev/null +++ b/charts/dev/agent-dvr/Chart.yaml @@ -0,0 +1,31 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - Security + - Network-Other +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "Agent DVR (next gen version of iSpy) is a super advanced video surveillance\ + \ platform\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/agent-dvr +icon: https://truecharts.org/img/chart-icons/agent-dvr.png +keywords: +- agent-dvr +- Security +- Network-Other +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: agent-dvr +sources: +- https://www.ispyconnect.com/ +- https://hub.docker.com/r/doitandbedone/ispyagentdvr +type: application +version: 0.0.10 diff --git a/charts/dev/agent-dvr/icon.png b/charts/dev/agent-dvr/icon.png new file mode 100644 index 00000000000..b0bee9d969c Binary files /dev/null and b/charts/dev/agent-dvr/icon.png differ diff --git a/charts/dev/agent-dvr/questions.yaml b/charts/dev/agent-dvr/questions.yaml new file mode 100644 index 00000000000..0091857ac4d --- /dev/null +++ b/charts/dev/agent-dvr/questions.yaml @@ -0,0 +1,418 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8090 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: HTTP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8090 + + - variable: turnserver + label: 'turnserver service' + description: "Main port used for TURN server communication." + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: turnserver + label: "turnserver Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 3478 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 3478 + - variable: webrtc + label: 'webrtc service' + description: "Ports used to create connections or WebRTC. These will be used as needed.Additional 50000-50010 may be required based on use" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: webrtc + label: "webrtc Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 50000 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 50000 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: configpath + label: "configpath Storage" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: mediapath + label: "mediapath Storage" + description: "This is where video recordings go, Place this in an unraid share if needed" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: commandspath + label: "commandspath Storage" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/agent-dvr/readme.md b/charts/dev/agent-dvr/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/agent-dvr/templates/common.yaml b/charts/dev/agent-dvr/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/agent-dvr/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/agent-dvr/values.yaml b/charts/dev/agent-dvr/values.yaml new file mode 100644 index 00000000000..513abee6175 --- /dev/null +++ b/charts/dev/agent-dvr/values.yaml @@ -0,0 +1,46 @@ +env: {} +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/agent-dvr + tag: latest +persistence: + commandspath: + enabled: true + mountPath: /agent/Commands + configpath: + enabled: true + mountPath: /agent/Media/XML/ + mediapath: + enabled: true + mountPath: /agent/Media/WebServerRoot/Media/ +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 8090 + protocol: HTTP + targetPort: 8090 + turnserver: + enabled: true + ports: + turnserver: + enabled: true + port: 3478 + protocol: UDP + targetPort: 3478 + webrtc: + enabled: true + ports: + webrtc: + enabled: true + port: 50000 + protocol: TCP + targetPort: 50000 diff --git a/charts/dev/alienswarm-reactivedrop/Chart.yaml b/charts/dev/alienswarm-reactivedrop/Chart.yaml index 82b1a13938b..91dfe3da6b1 100644 --- a/charts/dev/alienswarm-reactivedrop/Chart.yaml +++ b/charts/dev/alienswarm-reactivedrop/Chart.yaml @@ -1,20 +1,19 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - GameServers - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "This Docker will download and install SteamCMD. It will also install\ \ Alien Swarm: Reactive Drop and run it. (!!!This container will only run on systems\ \ with less than 32 CPU cores!!!) \r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/alienswarm-reactivedrop -icon: https://truecharts.org/_static/img/appicons/alienswarm-reactivedrop.png +icon: https://truecharts.org/img/chart-icons/alienswarm-reactivedrop.png keywords: - alienswarm-reactivedrop - GameServers @@ -28,4 +27,4 @@ sources: - https://www.steampowered.com/ - https://hub.docker.com/r/ich777/steamcmd/ type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/alienswarm-reactivedrop/questions.yaml b/charts/dev/alienswarm-reactivedrop/questions.yaml new file mode 100644 index 00000000000..363f8ee969e --- /dev/null +++ b/charts/dev/alienswarm-reactivedrop/questions.yaml @@ -0,0 +1,401 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_ID + label: 'GAME_ID' + description: "The GAMEID that the container download at startup.(httpsdeveloper.valvesoftware.comwikiDedicatedServersList)" + schema: + type: string + default: "563560" + - variable: GAME_NAME + label: 'GAME_NAME' + description: "Game name to start (is connected to the GAMEPARAMS)." + schema: + type: string + default: "reactivedrop" + - variable: GAME_PARAMS + label: 'GAME_PARAMS' + description: "Enter your start up commands for the server." + schema: + type: string + default: "+map lobby -maxplayers 4 +exec server.cfg" + - variable: USERNAME + label: 'USERNAME' + description: "Your Steam username goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: VALIDATE + label: 'VALIDATE' + description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." + schema: + type: string + default: "" + - variable: PASSWRD + label: 'PASSWRD' + description: "Your Steam password goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: GAME_PORT + label: 'GAME_PORT' + description: "Container Variable GAMEPORT" + schema: + type: string + default: "27015" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27015 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27015 + + - variable: tcprconport + label: 'tcprconport service' + description: "TCP RCON Port (not required)" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: tcprconport + label: "tcprconport Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27015 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27015 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: steamcmd + label: "steamcmd Storage" + description: "Container Path serverdatasteamcmd" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: serverfiles + label: "serverfiles Storage" + description: "Container Path serverdataserverfiles" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/alienswarm-reactivedrop/templates/common.yaml b/charts/dev/alienswarm-reactivedrop/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/alienswarm-reactivedrop/templates/common.yaml +++ b/charts/dev/alienswarm-reactivedrop/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/alienswarm-reactivedrop/values.yaml b/charts/dev/alienswarm-reactivedrop/values.yaml index c8bec0cfaf5..a22b981a10c 100644 --- a/charts/dev/alienswarm-reactivedrop/values.yaml +++ b/charts/dev/alienswarm-reactivedrop/values.yaml @@ -20,6 +20,13 @@ persistence: podSecurityContext: runAsGroup: 0 runAsUser: 0 +probes: + liveness: + port: '{{ .Values.service.tcprconport.ports.tcprconport.targetPort }}' + readiness: + port: '{{ .Values.service.tcprconport.ports.tcprconport.targetPort }}' + startup: + port: '{{ .Values.service.tcprconport.ports.tcprconport.targetPort }}' securityContext: readOnlyRootFilesystem: false runAsNonRoot: false @@ -32,13 +39,11 @@ service: port: 27015 protocol: UDP targetPort: 27015 - tcp-rconport: + tcprconport: enabled: true ports: - tcp-rconport: + tcprconport: enabled: true port: 27015 protocol: TCP targetPort: 27015 -command: ["/bin/sh"] -args: ["-c", "groupmod -g ${GID} ${USER} && bash /opt/scripts/start.sh"] diff --git a/charts/dev/alienswarm/Chart.yaml b/charts/dev/alienswarm/Chart.yaml index e4b2ed9ff7c..0293d60514b 100644 --- a/charts/dev/alienswarm/Chart.yaml +++ b/charts/dev/alienswarm/Chart.yaml @@ -1,19 +1,18 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - GameServers - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "This Docker will download and install SteamCMD. It will also install\ \ Alien Swarm and run it.\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/alienswarm -icon: https://truecharts.org/_static/img/appicons/alienswarm.png +icon: https://truecharts.org/img/chart-icons/alienswarm.png keywords: - alienswarm - GameServers @@ -27,4 +26,4 @@ sources: - https://www.steampowered.com/ - https://hub.docker.com/r/ich777/steamcmd/ type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/alienswarm/questions.yaml b/charts/dev/alienswarm/questions.yaml new file mode 100644 index 00000000000..f178d324755 --- /dev/null +++ b/charts/dev/alienswarm/questions.yaml @@ -0,0 +1,401 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_ID + label: 'GAME_ID' + description: "The GAMEID that the container download at startup.(httpsdeveloper.valvesoftware.comwikiDedicatedServersList)" + schema: + type: string + default: "635" + - variable: GAME_NAME + label: 'GAME_NAME' + description: "Game name to start (is connected to the GAMEPARAMS)." + schema: + type: string + default: "swarm" + - variable: GAME_PARAMS + label: 'GAME_PARAMS' + description: "Enter your start up commands for the server." + schema: + type: string + default: "+map lobby -maxplayers 4 +exec server.cfg" + - variable: USERNAME + label: 'USERNAME' + description: "Your Steam username goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: PASSWRD + label: 'PASSWRD' + description: "Your Steam password goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: VALIDATE + label: 'VALIDATE' + description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." + schema: + type: string + default: "" + - variable: GAME_PORT + label: 'GAME_PORT' + description: "Container Variable GAMEPORT" + schema: + type: string + default: "27015" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27015 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27015 + + - variable: tcprconport + label: 'tcprconport service' + description: "TCP RCON Port (not required)" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: tcprconport + label: "tcprconport Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27015 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27015 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: steamcmd + label: "steamcmd Storage" + description: "Container Path serverdatasteamcmd" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: serverfiles + label: "serverfiles Storage" + description: "Container Path serverdataserverfiles" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/alienswarm/templates/common.yaml b/charts/dev/alienswarm/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/alienswarm/templates/common.yaml +++ b/charts/dev/alienswarm/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/alienswarm/values.yaml b/charts/dev/alienswarm/values.yaml index 9ac3c975113..ab6281c728e 100644 --- a/charts/dev/alienswarm/values.yaml +++ b/charts/dev/alienswarm/values.yaml @@ -20,6 +20,13 @@ persistence: podSecurityContext: runAsGroup: 0 runAsUser: 0 +probes: + liveness: + port: '{{ .Values.service.tcprconport.ports.tcprconport.targetPort }}' + readiness: + port: '{{ .Values.service.tcprconport.ports.tcprconport.targetPort }}' + startup: + port: '{{ .Values.service.tcprconport.ports.tcprconport.targetPort }}' securityContext: readOnlyRootFilesystem: false runAsNonRoot: false @@ -28,24 +35,15 @@ service: enabled: true ports: main: - enabled: true - port: 27015 - protocol: TCP - targetPort: 27015 - gameport: - enabled: true - ports: - tcp-rconport: enabled: true port: 27015 protocol: UDP targetPort: 27015 -command: ["/bin/sh"] -args: ["-c", "groupmod -g ${GID} ${USER} && bash /opt/scripts/start.sh"] -probes: - liveness: - enabled: false - readiness: - enabled: false - startup: - enabled: false + tcprconport: + enabled: true + ports: + tcprconport: + enabled: true + port: 27015 + protocol: TCP + targetPort: 27015 diff --git a/charts/dev/altitude/Chart.yaml b/charts/dev/altitude/Chart.yaml index 23ff2884f8f..4b72c7c52b7 100644 --- a/charts/dev/altitude/Chart.yaml +++ b/charts/dev/altitude/Chart.yaml @@ -1,18 +1,17 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - GameServers - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "This Docker will download and install Altitude and run it.\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/altitude -icon: https://truecharts.org/_static/img/appicons/altitude.png +icon: https://truecharts.org/img/chart-icons/altitude.png keywords: - altitude - GameServers @@ -26,4 +25,4 @@ sources: - https://www.steampowered.com/ - https://hub.docker.com/r/ich777/altitude/ type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/altitude/questions.yaml b/charts/dev/altitude/questions.yaml new file mode 100644 index 00000000000..80c9539cf4d --- /dev/null +++ b/charts/dev/altitude/questions.yaml @@ -0,0 +1,302 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_PARAMS + label: 'GAME_PARAMS' + description: "Enter your start up commands for the server." + schema: + type: string + default: "" + - variable: DL_URL + label: 'DL_URL' + description: "Dont change unless you know what you are doing." + schema: + type: string + default: "http://installer.altitudegame.com/0.0.1/altitude.sh" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27276 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27276 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: serverfiles + label: "serverfiles Storage" + description: "Container Path altitude" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/altitude/templates/common.yaml b/charts/dev/altitude/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/altitude/templates/common.yaml +++ b/charts/dev/altitude/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/altitude/values.yaml b/charts/dev/altitude/values.yaml index 0fec6c004eb..88b2cbde570 100644 --- a/charts/dev/altitude/values.yaml +++ b/charts/dev/altitude/values.yaml @@ -12,6 +12,13 @@ persistence: podSecurityContext: runAsGroup: 0 runAsUser: 0 +probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false securityContext: readOnlyRootFilesystem: false runAsNonRoot: false @@ -24,13 +31,3 @@ service: port: 27276 protocol: UDP targetPort: 27276 - -command: ["/bin/sh"] -args: ["-c", "groupmod -g ${GID} ${USER} && bash /opt/scripts/start.sh"] -probes: - liveness: - enabled: false - readiness: - enabled: false - startup: - enabled: false diff --git a/charts/dev/ama/CHANGELOG.md b/charts/dev/ama/CHANGELOG.md deleted file mode 100644 index 4112797f2bf..00000000000 --- a/charts/dev/ama/CHANGELOG.md +++ /dev/null @@ -1,48 +0,0 @@ -# Changelog - - - - - -### [ama-0.0.5](https://github.com/truecharts/apps/compare/clamav-2.1.12...ama-0.0.5) (2022-05-05) - -#### Chore - -* update helm general non-major helm releases ([#2612](https://github.com/truecharts/apps/issues/2612)) - - - - -### [ama-0.0.4](https://github.com/truecharts/apps/compare/tinymediamanager-1.0.10...ama-0.0.4) (2022-04-26) - -#### Chore - -* update helm general non-major helm releases ([#2573](https://github.com/truecharts/apps/issues/2573)) - - - - -### [ama-0.0.3](https://github.com/truecharts/apps/compare/tinymediamanager-1.0.9...ama-0.0.3) (2022-04-20) - -#### Chore - -* add missing quote on description ([#2515](https://github.com/truecharts/apps/issues/2515)) -* update helm general non-major helm releases ([#2524](https://github.com/truecharts/apps/issues/2524)) - - - - -### [ama-0.0.2](https://github.com/truecharts/apps/compare/clamav-2.1.7...ama-0.0.2) (2022-04-12) - -#### Chore - -* update helm general non-major helm releases ([#2480](https://github.com/truecharts/apps/issues/2480)) - - - - -### [ama-0.0.1](https://github.com/truecharts/apps/compare/tinymediamanager-1.0.7...ama-0.0.1) (2022-04-08) - -#### Feat - -* Unraid Port - A ([#2438](https://github.com/truecharts/apps/issues/2438)) diff --git a/charts/dev/ama/Chart.yaml b/charts/dev/ama/Chart.yaml deleted file mode 100644 index 684e52451f3..00000000000 --- a/charts/dev/ama/Chart.yaml +++ /dev/null @@ -1,32 +0,0 @@ -annotations: - truecharts.org/SCALE-support: 'false' - truecharts.org/catagories: | - - Downloaders - - MediaApp-Music - truecharts.org/grade: U -apiVersion: v2 -appVersion: "latest" -dependencies: -- name: common - repository: https://library-charts.truecharts.org - version: 9.3.3 -deprecated: false -description: 'Automated Music Archiver :: This script will automatically archive music - using a popular online DL Client' -home: https://github.com/truecharts/apps/tree/master/charts/stable/ama -icon: https://truecharts.org/_static/img/appicons/ama.png -keywords: -- ama -- Downloaders -- MediaApp-Music -kubeVersion: '>=1.16.0-0' -maintainers: -- email: info@truecharts.org - name: TrueCharts - url: https://truecharts.org -name: ama -sources: -- https://github.com/RandomNinjaAtk/docker-ama -- https://hub.docker.com/r/randomninjaatk/ama -type: application -version: 0.0.5 diff --git a/charts/dev/ama/README.md b/charts/dev/ama/README.md deleted file mode 100644 index c89e385b881..00000000000 --- a/charts/dev/ama/README.md +++ /dev/null @@ -1,108 +0,0 @@ -# ama - -![Version: 0.0.5](https://img.shields.io/badge/Version-0.0.5-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: latest](https://img.shields.io/badge/AppVersion-latest-informational?style=flat-square) - -Automated Music Archiver :: This script will automatically archive music using a popular online DL Client - -TrueCharts can be installed as both *normal* Helm Charts or as Apps on TrueNAS SCALE. - -This readme is just an automatically generated general guide on installing our Helm Charts and Apps. -For more information, please click here: [ama](https://truecharts.org/charts/stable/ama) - -**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/truecharts/apps/issues/new/choose)** - -## Source Code - -* -* - -## Requirements - -Kubernetes: `>=1.16.0-0` - -## Dependencies - -| Repository | Name | Version | -|------------|------|---------| -| https://library-charts.truecharts.org | common | 9.3.3 | - -## Installing the Chart - -### TrueNAS SCALE - -To install this App on TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/manual/Quick-Start%20Guides/02-Installing-an-App/). - -### Helm - -To install the chart with the release name `ama` - -```console -helm repo add TrueCharts https://helm.truecharts.org -helm repo update -helm install ama TrueCharts/ama -``` - -## Uninstall - -### TrueNAS SCALE - -**Upgrading, Rolling Back and Uninstalling the Chart** - -To upgrade, rollback or delete this App from TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/manual/Quick-Start%20Guides/04-Upgrade-rollback-delete-an-App/). - -### Helm - -To uninstall the `ama` deployment - -```console -helm uninstall ama -``` - -## Configuration - -### Helm - -#### Available Settings - -Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values. -Other values may be used from the [values.yaml](https://github.com/truecharts/library-charts/tree/main/charts/stable/common/values.yaml) from the [common library](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common). - -#### Configure using the Commandline - -Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. - -```console -helm install ama \ - --set env.TZ="America/New York" \ - TrueCharts/ama -``` - -#### Configure using a yaml file - -Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. - -```console -helm install ama TrueCharts/ama -f values.yaml -``` - -#### Connecting to other apps - -If you need to connect this App to other Apps on TrueNAS SCALE, please refer to our [Linking Apps Internally](https://truecharts.org/manual/Quick-Start%20Guides/06-linking-apps/) quick-start guide. - -## Support - -- Please check our [quick-start guides for TrueNAS SCALE](https://truecharts.org/docs/manual/SCALE%20Apps/Quick-Start%20Guides/Important-MUST-READ). -- See the [Website](https://truecharts.org) -- Check our [Discord](https://discord.gg/tVsPTHWTtr) -- Open a [issue](https://github.com/truecharts/apps/issues/new/choose) - ---- - -## Sponsor TrueCharts - -TrueCharts can only exist due to the incredible effort of our staff. -Please consider making a [donation](https://truecharts.org/docs/about/sponsor) or contributing back to the project any way you can! - ---- - -All Rights Reserved - The TrueCharts Project diff --git a/charts/dev/ama/icon.png b/charts/dev/ama/icon.png deleted file mode 100644 index 0a3b8cd5b46..00000000000 Binary files a/charts/dev/ama/icon.png and /dev/null differ diff --git a/charts/dev/ama/templates/common.yaml b/charts/dev/ama/templates/common.yaml deleted file mode 100644 index f6d3b6d3a08..00000000000 --- a/charts/dev/ama/templates/common.yaml +++ /dev/null @@ -1,2 +0,0 @@ -{{/* Render the templates */}} -{{ include "common.all" . }} diff --git a/charts/dev/ama/values.yaml b/charts/dev/ama/values.yaml deleted file mode 100644 index 712dc86f46b..00000000000 --- a/charts/dev/ama/values.yaml +++ /dev/null @@ -1,52 +0,0 @@ -env: - ALBUM_TYPE_FILTER: '' - ARL_TOKEN: '' - AUTOSTART: '' - BITRATE: '' - COMPLETE_MY_ARTISTS: '' - CONCURRENT_DOWNLOADS: '' - EMBEDDED_COVER_QUALITY: '' - FAN_COUNT: '' - FILE_PERMISSIONS: '' - FOLDER_PERMISSIONS: '' - FORCECONVERT: '' - FORMAT: '' - IGNORE_ARTIST_WITHOUT_IMAGE: '' - LIDARR_API_KEY: '' - LIDARR_LIST_IMPORT: '' - LIDARR_URL: '' - MODE: '' - NOTIFYPLEX: '' - PLEXLIBRARYNAME: '' - PLEXTOKEN: '' - PLEXURL: '' - POSTPROCESSTHREADS: '' - RELATED_ARTIST: '' - RELATED_ARTIST_RELATED: '' - RELATED_COUNT: '' - REPLAYGAIN: '' - REQUIRE_QUALITY: '' - SCRIPTINTERVAL: '' -image: - pullPolicy: IfNotPresent - repository: tccr.io/truecharts/ama - tag: latest -persistence: - config: - enabled: true - mountPath: /config - hostpathfordownloads-ama: - enabled: true - mountPath: /downloads-ama -podSecurityContext: - runAsGroup: 0 - runAsUser: 0 -securityContext: - readOnlyRootFilesystem: false - runAsNonRoot: false -service: - main: - enabled: false - ports: - main: - enabled: false diff --git a/charts/dev/ambd/CHANGELOG.md b/charts/dev/ambd/CHANGELOG.md deleted file mode 100644 index 7924f9d4ae8..00000000000 --- a/charts/dev/ambd/CHANGELOG.md +++ /dev/null @@ -1,49 +0,0 @@ -# Changelog - - - - - -### [ambd-0.0.5](https://github.com/truecharts/apps/compare/ambd-0.0.4...ambd-0.0.5) (2022-05-05) - -#### Chore - -* update helm general non-major helm releases ([#2612](https://github.com/truecharts/apps/issues/2612)) - - - - -### [ambd-0.0.4](https://github.com/truecharts/apps/compare/ambd-0.0.3...ambd-0.0.4) (2022-04-26) - -#### Chore - -* update helm general non-major helm releases ([#2573](https://github.com/truecharts/apps/issues/2573)) - - - - -### [ambd-0.0.3](https://github.com/truecharts/apps/compare/ambd-0.0.2...ambd-0.0.3) (2022-04-20) - -#### Chore - -* add missing quote on description ([#2515](https://github.com/truecharts/apps/issues/2515)) -* update helm general non-major helm releases ([#2524](https://github.com/truecharts/apps/issues/2524)) - - - - -### [ambd-0.0.2](https://github.com/truecharts/apps/compare/ambd-0.0.1...ambd-0.0.2) (2022-04-12) - -#### Chore - -* Auto-update chart README [skip ci] -* update helm general non-major helm releases ([#2480](https://github.com/truecharts/apps/issues/2480)) - - - - -### ambd-0.0.1 (2022-04-08) - -#### Feat - -* Unraid Port - A ([#2438](https://github.com/truecharts/apps/issues/2438)) diff --git a/charts/dev/ambd/Chart.yaml b/charts/dev/ambd/Chart.yaml deleted file mode 100644 index b559a8482c1..00000000000 --- a/charts/dev/ambd/Chart.yaml +++ /dev/null @@ -1,32 +0,0 @@ -annotations: - truecharts.org/SCALE-support: 'false' - truecharts.org/catagories: | - - Downloaders - - MediaApp-Music - truecharts.org/grade: U -apiVersion: v2 -appVersion: "latest" -dependencies: -- name: common - repository: https://library-charts.truecharts.org - version: 9.3.3 -deprecated: false -description: 'Automated MusicBrainz Downloader :: This script will automatically archive - music using a popular online DL Client' -home: https://github.com/truecharts/apps/tree/master/charts/stable/ambd -icon: https://truecharts.org/_static/img/appicons/ambd.png -keywords: -- ambd -- Downloaders -- MediaApp-Music -kubeVersion: '>=1.16.0-0' -maintainers: -- email: info@truecharts.org - name: TrueCharts - url: https://truecharts.org -name: ambd -sources: -- https://github.com/RandomNinjaAtk/docker-ambd -- https://hub.docker.com/r/randomninjaatk/ambd -type: application -version: 0.0.5 diff --git a/charts/dev/ambd/README.md b/charts/dev/ambd/README.md deleted file mode 100644 index 65fbfa2df25..00000000000 --- a/charts/dev/ambd/README.md +++ /dev/null @@ -1,108 +0,0 @@ -# ambd - -![Version: 0.0.5](https://img.shields.io/badge/Version-0.0.5-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: latest](https://img.shields.io/badge/AppVersion-latest-informational?style=flat-square) - -Automated MusicBrainz Downloader :: This script will automatically archive music using a popular online DL Client - -TrueCharts can be installed as both *normal* Helm Charts or as Apps on TrueNAS SCALE. - -This readme is just an automatically generated general guide on installing our Helm Charts and Apps. -For more information, please click here: [ambd](https://truecharts.org/charts/stable/ambd) - -**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/truecharts/apps/issues/new/choose)** - -## Source Code - -* -* - -## Requirements - -Kubernetes: `>=1.16.0-0` - -## Dependencies - -| Repository | Name | Version | -|------------|------|---------| -| https://library-charts.truecharts.org | common | 9.3.3 | - -## Installing the Chart - -### TrueNAS SCALE - -To install this App on TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/manual/Quick-Start%20Guides/02-Installing-an-App/). - -### Helm - -To install the chart with the release name `ambd` - -```console -helm repo add TrueCharts https://helm.truecharts.org -helm repo update -helm install ambd TrueCharts/ambd -``` - -## Uninstall - -### TrueNAS SCALE - -**Upgrading, Rolling Back and Uninstalling the Chart** - -To upgrade, rollback or delete this App from TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/manual/Quick-Start%20Guides/04-Upgrade-rollback-delete-an-App/). - -### Helm - -To uninstall the `ambd` deployment - -```console -helm uninstall ambd -``` - -## Configuration - -### Helm - -#### Available Settings - -Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values. -Other values may be used from the [values.yaml](https://github.com/truecharts/library-charts/tree/main/charts/stable/common/values.yaml) from the [common library](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common). - -#### Configure using the Commandline - -Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. - -```console -helm install ambd \ - --set env.TZ="America/New York" \ - TrueCharts/ambd -``` - -#### Configure using a yaml file - -Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. - -```console -helm install ambd TrueCharts/ambd -f values.yaml -``` - -#### Connecting to other apps - -If you need to connect this App to other Apps on TrueNAS SCALE, please refer to our [Linking Apps Internally](https://truecharts.org/manual/Quick-Start%20Guides/06-linking-apps/) quick-start guide. - -## Support - -- Please check our [quick-start guides for TrueNAS SCALE](https://truecharts.org/docs/manual/SCALE%20Apps/Quick-Start%20Guides/Important-MUST-READ). -- See the [Website](https://truecharts.org) -- Check our [Discord](https://discord.gg/tVsPTHWTtr) -- Open a [issue](https://github.com/truecharts/apps/issues/new/choose) - ---- - -## Sponsor TrueCharts - -TrueCharts can only exist due to the incredible effort of our staff. -Please consider making a [donation](https://truecharts.org/docs/about/sponsor) or contributing back to the project any way you can! - ---- - -All Rights Reserved - The TrueCharts Project diff --git a/charts/dev/ambd/icon.png b/charts/dev/ambd/icon.png deleted file mode 100644 index 0a3b8cd5b46..00000000000 Binary files a/charts/dev/ambd/icon.png and /dev/null differ diff --git a/charts/dev/ambd/templates/common.yaml b/charts/dev/ambd/templates/common.yaml deleted file mode 100644 index f6d3b6d3a08..00000000000 --- a/charts/dev/ambd/templates/common.yaml +++ /dev/null @@ -1,2 +0,0 @@ -{{/* Render the templates */}} -{{ include "common.all" . }} diff --git a/charts/dev/ambd/values.yaml b/charts/dev/ambd/values.yaml deleted file mode 100644 index faee9dfff23..00000000000 --- a/charts/dev/ambd/values.yaml +++ /dev/null @@ -1,39 +0,0 @@ -env: - ARL_TOKEN: '' - AUTOSTART: '' - CONCURRENT_DOWNLOADS: '' - EMBEDDED_COVER_QUALITY: '' - FILE_PERMISSIONS: '' - FOLDER_PERMISSIONS: '' - NOTIFYPLEX: '' - PLEXLIBRARYNAME: '' - PLEXTOKEN: '' - PLEXURL: '' - QUALITY: '' - SCRIPTINTERVAL: '' -image: - pullPolicy: IfNotPresent - repository: tccr.io/truecharts/ambd - tag: latest -persistence: - config: - enabled: true - mountPath: /config - hostpathfordownloads-ambd: - enabled: true - mountPath: /downloads-ambd - hostpathforlibrary-ambd: - enabled: true - mountPath: /library-ambd -podSecurityContext: - runAsGroup: 0 - runAsUser: 0 -securityContext: - readOnlyRootFilesystem: false - runAsNonRoot: false -service: - main: - enabled: false - ports: - main: - enabled: false diff --git a/charts/dev/americasarmy-pg/Chart.yaml b/charts/dev/americasarmy-pg/Chart.yaml index 0034a5599ca..366bf42eb90 100644 --- a/charts/dev/americasarmy-pg/Chart.yaml +++ b/charts/dev/americasarmy-pg/Chart.yaml @@ -1,19 +1,18 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - GameServers - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "This Docker will download and install SteamCMD. It will also install\ \ America's Army: Proving Grounds and run it.\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/americasarmy-pg -icon: https://truecharts.org/_static/img/appicons/americasarmy-pg.png +icon: https://truecharts.org/img/chart-icons/americasarmy-pg.png keywords: - americasarmy-pg - GameServers @@ -27,4 +26,4 @@ sources: - https://www.americasarmy.com/ - https://hub.docker.com/r/ich777/steamcmd/ type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/americasarmy-pg/questions.yaml b/charts/dev/americasarmy-pg/questions.yaml new file mode 100644 index 00000000000..1f40ab36378 --- /dev/null +++ b/charts/dev/americasarmy-pg/questions.yaml @@ -0,0 +1,395 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_ID + label: 'GAME_ID' + description: "The GAMEID that the container download at startup.If you want to install a static or beta version of the game change the value to 203300 -beta YOURBRANCH (without quotes, replace YOURBRANCH with the branch or version you want to install)." + schema: + type: string + default: "203300" + - variable: SRV_NAME + label: 'SRV_NAME' + description: "Container Variable SRVNAME" + schema: + type: string + default: "Army Docker" + - variable: GAME_PARAMS + label: 'GAME_PARAMS' + description: "Enter your start up commands for the server." + schema: + type: string + default: "-port=7778 -SAP=8778 -SQP=27015 -aauregion=1 -log=Server.log" + - variable: USERNAME + label: 'USERNAME' + description: "Your Steam username goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: VALIDATE + label: 'VALIDATE' + description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." + schema: + type: string + default: "" + - variable: PASSWRD + label: 'PASSWRD' + description: "Your Steam password goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8778 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8778 + + - variable: steamqueryport + label: 'steamqueryport service' + description: "UDP Queryport (if you need another port, please delete this entry and create a new UDP Port with the required port number, also dont forget to click an Show more settings ... and change the port number" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: steamqueryport + label: "steamqueryport Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27015 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27015 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: steamcmd + label: "steamcmd Storage" + description: "Container Path serverdatasteamcmd" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: serverfiles + label: "serverfiles Storage" + description: "Container Path serverdataserverfiles" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/americasarmy-pg/templates/common.yaml b/charts/dev/americasarmy-pg/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/americasarmy-pg/templates/common.yaml +++ b/charts/dev/americasarmy-pg/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/americasarmy-pg/values.yaml b/charts/dev/americasarmy-pg/values.yaml index dbc9abe243b..7c390912d34 100644 --- a/charts/dev/americasarmy-pg/values.yaml +++ b/charts/dev/americasarmy-pg/values.yaml @@ -19,6 +19,13 @@ persistence: podSecurityContext: runAsGroup: 0 runAsUser: 0 +probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false securityContext: readOnlyRootFilesystem: false runAsNonRoot: false @@ -39,12 +46,3 @@ service: port: 27015 protocol: UDP targetPort: 27015 -command: ["/bin/sh"] -args: ["-c", "groupmod -g ${GID} ${USER} && bash /opt/scripts/start.sh"] -probes: - liveness: - enabled: false - readiness: - enabled: false - startup: - enabled: false diff --git a/charts/dev/amtd/Chart.yaml b/charts/dev/amtd/Chart.yaml index ae7660f7c66..464a05fe727 100644 --- a/charts/dev/amtd/Chart.yaml +++ b/charts/dev/amtd/Chart.yaml @@ -1,22 +1,21 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Downloaders - MediaApp-Video - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: 'Automated Movie Trailer Downloader :: AMTD is a Radarr Companion script to automatically download movie trailers for use in media applications ' home: https://github.com/truecharts/apps/tree/master/charts/stable/amtd -icon: https://truecharts.org/_static/img/appicons/amtd.png +icon: https://truecharts.org/img/chart-icons/amtd.png keywords: - amtd - Downloaders @@ -31,4 +30,4 @@ sources: - https://github.com/RandomNinjaAtk/docker-amtd - https://hub.docker.com/r/randomninjaatk/amtd type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/amtd/questions.yaml b/charts/dev/amtd/questions.yaml new file mode 100644 index 00000000000..f08de6408ad --- /dev/null +++ b/charts/dev/amtd/questions.yaml @@ -0,0 +1,280 @@ +# Include{groups} +portals: {} +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: false +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: AUTOSTART + label: 'AUTOSTART' + description: "true = Enabled Runs script automatically on startup" + schema: + type: string + default: "" + - variable: SCRIPTINTERVAL + label: 'SCRIPTINTERVAL' + description: "#s or #m or #h or #d s = seconds, m = minutes, h = hours, d = days Amount of time between each script run, when AUTOSTART is enabled" + schema: + type: string + default: "" + - variable: RadarrUrl + label: 'RadarrUrl' + description: "Set domain or IP to your Radarr instance including port. If using reverse proxy, do not use a trailing slash. Ensure you specify https..." + schema: + type: string + default: "" + - variable: RadarrAPIkey + label: 'RadarrAPIkey' + description: "Radarr API Key" + schema: + type: string + default: "" + - variable: extrastype + label: 'extrastype' + description: "all or trailers all downloads all available videos (trailers, clips, featurettes, etc...) trailers only downloads trailers" + schema: + type: string + default: "" + - variable: LANGUAGES + label: 'LANGUAGES' + description: "Set the primary desired language, if not found, fallback to next langauge in the list... (this is a , separated list of ISO 639-1 language codes)" + schema: + type: string + default: "" + - variable: videoformat + label: 'videoformat' + description: "For guidence, please see youtube-dl documentation" + schema: + type: string + default: "" + - variable: subtitlelanguage + label: 'subtitlelanguage' + description: "Desired Language Code For guidence, please see youtube-dl documentation" + schema: + type: string + default: "" + - variable: SINGLETRAILER + label: 'SINGLETRAILER' + description: "true = enabled Only downloads the first available trailer, does not apply to other extras type" + schema: + type: string + default: "" + - variable: PREFER_EXISTING + label: 'PREFER_EXISTING' + description: "true = enabled Checks for existing trailer file, and skips it if found" + schema: + type: string + default: "" + - variable: USEFOLDERS + label: 'USEFOLDERS' + description: "true = enabled Creates subfolders within the movie folder for extras" + schema: + type: string + default: "" + - variable: EndClient + label: 'EndClient' + description: "plex or emby or jellyfin Select the appropriate client for maximum compatibility" + schema: + type: string + default: "" + - variable: FilePermissions + label: 'FilePermissions' + description: "Based on chmod linux permissions" + schema: + type: string + default: "" + - variable: FolderPermissions + label: 'FolderPermissions' + description: "Based on chmod linux permissions" + schema: + type: string + default: "" + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: config + label: "config Storage" + description: "Container Path config" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/amtd/templates/common.yaml b/charts/dev/amtd/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/amtd/templates/common.yaml +++ b/charts/dev/amtd/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/amtd/values.yaml b/charts/dev/amtd/values.yaml index 5f9caa0e139..2ac375dd820 100644 --- a/charts/dev/amtd/values.yaml +++ b/charts/dev/amtd/values.yaml @@ -24,6 +24,13 @@ persistence: podSecurityContext: runAsGroup: 0 runAsUser: 0 +probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false securityContext: readOnlyRootFilesystem: false runAsNonRoot: false diff --git a/charts/dev/amule/Chart.yaml b/charts/dev/amule/Chart.yaml index 11c0883d945..f25171b4452 100644 --- a/charts/dev/amule/Chart.yaml +++ b/charts/dev/amule/Chart.yaml @@ -1,20 +1,19 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Downloaders - Productivity - Tools-Utilities - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "DESCRIPTION\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/amule -icon: https://truecharts.org/_static/img/appicons/amule.png +icon: https://truecharts.org/img/chart-icons/amule.png keywords: - amule - Downloaders @@ -30,4 +29,4 @@ sources: - https://github.com/t-chab/dockerfiles - https://hub.docker.com/r/tchabaud/amule type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/amule/questions.yaml b/charts/dev/amule/questions.yaml new file mode 100644 index 00000000000..c04b4ea0259 --- /dev/null +++ b/charts/dev/amule/questions.yaml @@ -0,0 +1,440 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: WEBUI_PWD + label: 'WEBUI_PWD' + description: "Password for WebUI." + schema: + type: string + default: "admin" + - variable: WEBUI_TEMPLATE + label: 'WEBUI_TEMPLATE' + description: "Alternative material WebUI design." + schema: + type: string + default: "default" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 4711 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: HTTP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 4711 + + - variable: porttcp + label: 'porttcp service' + description: "Client to client transfers" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: porttcp + label: "porttcp Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 4662 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 4662 + - variable: portudp + label: 'portudp service' + description: "Extended aMule protocol, Queue Rating, File Reask Ping" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: portudp + label: "portudp Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 4672 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 4672 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: storagecomplete + label: "storagecomplete Storage" + description: "This is the location for complete downloads." + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: storageincomplete + label: "storageincomplete Storage" + description: "This is the location for incomplete downloads." + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: storageconfig + label: "storageconfig Storage" + description: "This is the location for the internal data." + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/amule/templates/common.yaml b/charts/dev/amule/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/amule/templates/common.yaml +++ b/charts/dev/amule/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/amvd/Chart.yaml b/charts/dev/amvd/Chart.yaml index 2fbfd3f9c58..2265df1b068 100644 --- a/charts/dev/amvd/Chart.yaml +++ b/charts/dev/amvd/Chart.yaml @@ -1,20 +1,19 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Downloaders - MediaApp-Video - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: 'Automated Music Video Downloader :: AMVD is a Lidarr Companion script to automatically download and tag Music Videos for use in various media applications' home: https://github.com/truecharts/apps/tree/master/charts/stable/amvd -icon: https://truecharts.org/_static/img/appicons/amvd.png +icon: https://truecharts.org/img/chart-icons/amvd.png keywords: - amvd - Downloaders @@ -29,4 +28,4 @@ sources: - https://github.com/RandomNinjaAtk/docker-amvd - https://hub.docker.com/r/randomninjaatk/amvd type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/amvd/questions.yaml b/charts/dev/amvd/questions.yaml new file mode 100644 index 00000000000..523f58e294e --- /dev/null +++ b/charts/dev/amvd/questions.yaml @@ -0,0 +1,277 @@ +# Include{groups} +portals: {} +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: false +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: AUTOSTART + label: 'AUTOSTART' + description: "true = Enabled Runs script automatically on startup" + schema: + type: string + default: "" + - variable: SCRIPTINTERVAL + label: 'SCRIPTINTERVAL' + description: "#s or #m or #h or #d s = seconds, m = minutes, h = hours, d = days Amount of time between each script run, when AUTOSTART is enabled" + schema: + type: string + default: "" + - variable: MBRAINZMIRROR + label: 'MBRAINZMIRROR' + description: "OPTIONAL Only change if using a different mirror" + schema: + type: string + default: "" + - variable: MBRATELIMIT + label: 'MBRATELIMIT' + description: "OPTIONAL musicbrainz rate limit, musicbrainz allows only 1 connection per second, max setting is 10" + schema: + type: string + default: "" + - variable: SOURCE_CONNECTION + label: 'SOURCE_CONNECTION' + description: "lidarr or ama ama requires the AMA config folder to be mounted as a volume ama" + schema: + type: string + default: "" + - variable: LidarrUrl + label: 'LidarrUrl' + description: "Set domain or IP to your Lidarr instance including port. If using reverse proxy, do not use a trailing slash. Ensure you specify https." + schema: + type: string + default: "" + - variable: LidarrAPIkey + label: 'LidarrAPIkey' + description: "Lidarr API key" + schema: + type: string + default: "" + - variable: CountryCode + label: 'CountryCode' + description: "Set the country code for preferred video matching, uses Musicbrainz Country Codes, lowercase only." + schema: + type: string + default: "" + - variable: subtitlelanguage + label: 'subtitlelanguage' + description: "Desired Language Code For guidence, please see youtube-dl documentation" + schema: + type: string + default: "" + - variable: WriteNFOs + label: 'WriteNFOs' + description: "true = enabled Create NFO and Local Thumbnail for use in applications such as Kodi" + schema: + type: string + default: "" + - variable: USEFOLDERS + label: 'USEFOLDERS' + description: "true = enabled Creates subfolders using the Lidarr Artist folder name" + schema: + type: string + default: "" + - variable: USEVIDEOFOLDERS + label: 'USEVIDEOFOLDERS' + description: "true = enabled Creates subfolders using Video File Name only, requires USEFOLDERS to be enabled" + schema: + type: string + default: "" + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: config + label: "config Storage" + description: "Container Path config" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: hostpathfordownloads-amvd + label: "hostpathfordownloads-amvd Storage" + description: "Container Path downloads-amvd" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/amvd/templates/common.yaml b/charts/dev/amvd/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/amvd/templates/common.yaml +++ b/charts/dev/amvd/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/amvd/values.yaml b/charts/dev/amvd/values.yaml index c6c6b5b2d48..938e38a1bbc 100644 --- a/charts/dev/amvd/values.yaml +++ b/charts/dev/amvd/values.yaml @@ -1,20 +1,16 @@ env: AUTOSTART: '' CountryCode: '' - FilePermissions: '' - FolderPermissions: '' LidarrAPIkey: '' LidarrUrl: '' MBRAINZMIRROR: '' MBRATELIMIT: '' - RequireVideoMatch: '' SCRIPTINTERVAL: '' SOURCE_CONNECTION: '' USEFOLDERS: '' USEVIDEOFOLDERS: '' WriteNFOs: '' subtitlelanguage: '' - videofilter: '' image: pullPolicy: IfNotPresent repository: tccr.io/truecharts/amvd @@ -29,6 +25,13 @@ persistence: podSecurityContext: runAsGroup: 0 runAsUser: 0 +probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false securityContext: readOnlyRootFilesystem: false runAsNonRoot: false diff --git a/charts/dev/android-8-0/Chart.yaml b/charts/dev/android-8-0/Chart.yaml index 83faa297e4e..c7c6aa20d90 100644 --- a/charts/dev/android-8-0/Chart.yaml +++ b/charts/dev/android-8-0/Chart.yaml @@ -1,20 +1,19 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Other - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: Android in docker solution with noVNC supported and video recording. Work way better with Intel CPUs because AMD doesn't an cpu graphics card. So with amd cpus can be unusable. home: https://github.com/truecharts/apps/tree/master/charts/stable/android-8-0 -icon: https://truecharts.org/_static/img/appicons/android-8-0.png +icon: https://truecharts.org/img/chart-icons/android-8-0.png keywords: - android-8-0 - Other @@ -27,4 +26,4 @@ name: android-8-0 sources: - https://registry.hub.docker.com/r/ulisses1478/docker-android type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/android-8-0/questions.yaml b/charts/dev/android-8-0/questions.yaml new file mode 100644 index 00000000000..1f3a55cb4c6 --- /dev/null +++ b/charts/dev/android-8-0/questions.yaml @@ -0,0 +1,169 @@ +# Include{groups} +portals: {} +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: false +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + +# Include{persistenceList} + + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/android-8-0/templates/common.yaml b/charts/dev/android-8-0/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/android-8-0/templates/common.yaml +++ b/charts/dev/android-8-0/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/android-8-0/values.yaml b/charts/dev/android-8-0/values.yaml index 983d41965e6..9db504a2330 100644 --- a/charts/dev/android-8-0/values.yaml +++ b/charts/dev/android-8-0/values.yaml @@ -7,6 +7,13 @@ persistence: {} podSecurityContext: runAsGroup: 0 runAsUser: 0 +probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false securityContext: readOnlyRootFilesystem: false runAsNonRoot: false diff --git a/charts/dev/androiddebugbridge/Chart.yaml b/charts/dev/androiddebugbridge/Chart.yaml index 81705c58109..84bc0a4cd04 100644 --- a/charts/dev/androiddebugbridge/Chart.yaml +++ b/charts/dev/androiddebugbridge/Chart.yaml @@ -1,19 +1,18 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - HomeAutomation - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "Control AndroidTV/FireTV devices through ADB from the Home Assistant\ \ Core docker image.\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/androiddebugbridge -icon: https://truecharts.org/_static/img/appicons/androiddebugbridge.png +icon: https://truecharts.org/img/chart-icons/androiddebugbridge.png keywords: - androiddebugbridge - HomeAutomation @@ -27,4 +26,4 @@ sources: - https://hub.docker.com/r/barnybbb/adb-hass-androidtv - https://hub.docker.com/r/barnybbb/adb-hass-androidtv/ type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/androiddebugbridge/questions.yaml b/charts/dev/androiddebugbridge/questions.yaml new file mode 100644 index 00000000000..69240300cd7 --- /dev/null +++ b/charts/dev/androiddebugbridge/questions.yaml @@ -0,0 +1,289 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: bootwait + label: 'bootwait' + description: "Length of time in seconds to wait after the container has started before attempting to connect to devices." + schema: + type: string + default: "10" + - variable: devicelist + label: 'devicelist' + description: "Comma separated list of androidtvfiretv devices to connect to, each one listed as [iphostname][port],[iphostname][port]." + schema: + type: string + default: "10.0.0.192:5555" + - variable: checkfreq + label: 'checkfreq' + description: "Length of time in seconds to wait between successive attempts to connect (or re-connect) to devices." + schema: + type: string + default: "30" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 5037 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 5037 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/androiddebugbridge/templates/common.yaml b/charts/dev/androiddebugbridge/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/androiddebugbridge/templates/common.yaml +++ b/charts/dev/androiddebugbridge/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/anope/Chart.yaml b/charts/dev/anope/Chart.yaml index 42aaa44807e..66050f4837b 100644 --- a/charts/dev/anope/Chart.yaml +++ b/charts/dev/anope/Chart.yaml @@ -1,21 +1,20 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Network-Other - Productivity - Tools-Utilities - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "Anope is a set of IRC Services designed for flexibility and ease of\ \ use.\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/anope -icon: https://truecharts.org/_static/img/appicons/anope.png +icon: https://truecharts.org/img/chart-icons/anope.png keywords: - anope - Network-Other @@ -31,4 +30,4 @@ sources: - https://thelounge.chat/ - https://hub.docker.com/r/ich777/anope type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/anope/questions.yaml b/charts/dev/anope/questions.yaml new file mode 100644 index 00000000000..bbcd254b016 --- /dev/null +++ b/charts/dev/anope/questions.yaml @@ -0,0 +1,256 @@ +# Include{groups} +portals: {} +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: false +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: HOST + label: 'HOST' + description: "Specify the full hostname from your IRCd (must be the same as configured in your IRCd Server)." + schema: + type: string + default: "irc.example.com" + - variable: IP_ADDR + label: 'IP_ADDR' + description: "Specify the IP Address from your IRCd (if you run it on Unraid it is usually the IP address of Unraid)." + schema: + type: string + default: "" + - variable: SSL + label: 'SSL' + description: "Use SSL to establish the connection (if your IRCd is on the same network this is no problem since Anope talks internally to your IRCd - use this carefully since you have to configure some extra settings in the services.conf itself - valid options are yes or no)." + schema: + type: string + default: "yes" + - variable: PORT + label: 'PORT' + description: "The Server port of your IRCd (usually 7000 is without SSL - this is be no proble if you connect it to your internal network since it only talks internally to your IRCd - if you want to enable SSL you have to configure some extra settings in the services.conf itself)." + schema: + type: string + default: "7000" + - variable: PASSWORD + label: 'PASSWORD' + description: "This have to be the same as your IRCd Service Password (if you are using InspIRCd click on Show more Settings)." + schema: + type: string + default: "" + - variable: IRCD + label: 'IRCD' + description: "Set your IRCd type (valid options are bahamut, charybdis, hybrid, inspircd12, inspircd20, inspircd3, ngircd, plexus, ratbox, unreal (for 3.2.x), unreal4)" + schema: + type: string + default: "inspircd3" + - variable: CASEMAP + label: 'CASEMAP' + description: "Specify the casemap of your IRCd (if you use InspIRCd the default value is rfc1459 other clients often use for example ascii)" + schema: + type: string + default: "rfc1459" + - variable: LOCAL_HOSTNAME + label: 'LOCAL_HOSTNAME' + description: "Specify the hostname where Anope is available (this has to be something different than your IRCd hostname, you dont have to make it reachable from outside or create any port forwarding - leave this value as it is)" + schema: + type: string + default: "services" + - variable: UMASK + label: 'UMASK' + description: "Container Variable UMASK" + schema: + type: string + default: "000" + - variable: DATA_PERM + label: 'DATA_PERM' + description: "Container Variable DATAPERM" + schema: + type: string + default: "770" + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: datapath + label: "datapath Storage" + description: "Data Path" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/anope/templates/common.yaml b/charts/dev/anope/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/anope/templates/common.yaml +++ b/charts/dev/anope/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/anope/values.yaml b/charts/dev/anope/values.yaml index 16269f53522..bd6d45a5fb1 100644 --- a/charts/dev/anope/values.yaml +++ b/charts/dev/anope/values.yaml @@ -20,6 +20,13 @@ persistence: podSecurityContext: runAsGroup: 0 runAsUser: 0 +probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false securityContext: readOnlyRootFilesystem: false runAsNonRoot: false diff --git a/charts/dev/apache-webdav/Chart.yaml b/charts/dev/apache-webdav/Chart.yaml index 1ce3e0f081d..05543795457 100644 --- a/charts/dev/apache-webdav/Chart.yaml +++ b/charts/dev/apache-webdav/Chart.yaml @@ -1,20 +1,19 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Cloud - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "Very simple WebDAV server based on Apache. You need a WebDAV client\ \ to transfer files. It does not include a WebUI to upload files through your browser.\r\ \n" home: https://github.com/truecharts/apps/tree/master/charts/stable/apache-webdav -icon: https://truecharts.org/_static/img/appicons/apache-webdav.png +icon: https://truecharts.org/img/chart-icons/apache-webdav.png keywords: - apache-webdav - Cloud @@ -28,4 +27,4 @@ sources: - https://httpd.apache.org/docs/2.4/mod/mod_dav.html - https://github.com/mgutt/docker-apachewebdav type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/apache-webdav/questions.yaml b/charts/dev/apache-webdav/questions.yaml new file mode 100644 index 00000000000..1bdd98b2e25 --- /dev/null +++ b/charts/dev/apache-webdav/questions.yaml @@ -0,0 +1,353 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: SERVER_NAMES + label: 'SERVER_NAMES' + description: "Comma-separated list of domains (eg, example.com,www.example.com). The first is set as the ServerName, and the rest (if any) are set as ServerAlias. The default is localhost." + schema: + type: string + default: "localhost" + - variable: LOCATION + label: 'LOCATION' + description: "The URL path for WebDAV (eg, if set to webdav then clients should connect to example.comwebdav). The default is ." + schema: + type: string + default: "/" + - variable: AUTH_TYPE + label: 'AUTH_TYPE' + description: "Apache authentication type to use. This can be Basic (best choice for HTTPS) or Digest (best choice for HTTP). The default is Basic." + schema: + type: string + default: "Basic" + - variable: REALM + label: 'REALM' + description: "The string will appear in the password dialog provided by browsers." + schema: + type: string + default: "WebDAV-Login" + - variable: USERNAME + label: 'USERNAME' + description: "Authenticate with this username (and the password below). Will be ignored if user.passwd is present." + schema: + type: string + default: "" + - variable: PASSWORD + label: 'PASSWORD' + description: "Authenticate with this password (and the username above). Will be ignored if user.passwd is present." + schema: + type: string + default: "" + - variable: ANONYMOUS_METHODS + label: 'ANONYMOUS_METHODS' + description: "Comma-separated list of HTTP request methods (eg, GET,POST,OPTIONS,PROPFIND) which can be used without login. The default is to disallow any anonymous access." + schema: + type: string + default: "" + - variable: SSL_CERT + label: 'SSL_CERT' + description: "Set to selfsigned to generate a self-signed certificate and enable Apaches SSL module. If you specify SERVERNAMES, the first domain is set as the Common Name." + schema: + type: string + default: "" + - variable: PUMASK + label: 'PUMASK' + description: "Container Variable PUMASK" + schema: + type: string + default: "0000" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8384 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 80 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: data + label: "data Storage" + description: "Container Path varlibdavdata" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: config + label: "config Storage" + description: "Container Path varlibdav" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/apache-webdav/templates/common.yaml b/charts/dev/apache-webdav/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/apache-webdav/templates/common.yaml +++ b/charts/dev/apache-webdav/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/apprise-api/Chart.yaml b/charts/dev/apprise-api/Chart.yaml index 84cc78f0228..55c27442b74 100644 --- a/charts/dev/apprise-api/Chart.yaml +++ b/charts/dev/apprise-api/Chart.yaml @@ -1,14 +1,13 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Other - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: 'Apprise-api(https://github.com/caronc/apprise-api) Takes advantage of Apprise(https://github.com/caronc/apprise) through your network with a user-friendly @@ -16,7 +15,7 @@ description: 'Apprise-api(https://github.com/caronc/apprise-api) Takes advantage ' home: https://github.com/truecharts/apps/tree/master/charts/stable/apprise-api -icon: https://truecharts.org/_static/img/appicons/apprise-api.png +icon: https://truecharts.org/img/chart-icons/apprise-api.png keywords: - apprise-api - Other @@ -31,4 +30,4 @@ sources: - https://github.com/orgs/linuxserver/packages/container/package/apprise-api - https://github.com/linuxserver/docker-apprise-api#readme type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/apprise-api/questions.yaml b/charts/dev/apprise-api/questions.yaml new file mode 100644 index 00000000000..04873cbdcb9 --- /dev/null +++ b/charts/dev/apprise-api/questions.yaml @@ -0,0 +1,296 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: UMASK + label: 'UMASK' + description: "Container Variable UMASK" + schema: + type: string + default: "" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8000 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8000 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: config + label: "config Storage" + description: "Where config is stored." + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/apprise-api/templates/common.yaml b/charts/dev/apprise-api/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/apprise-api/templates/common.yaml +++ b/charts/dev/apprise-api/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/apt-cacher-ng/Chart.yaml b/charts/dev/apt-cacher-ng/Chart.yaml index 717fd2121e8..8d3456acb3d 100644 --- a/charts/dev/apt-cacher-ng/Chart.yaml +++ b/charts/dev/apt-cacher-ng/Chart.yaml @@ -1,22 +1,21 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Network-Proxy - Network-Other - Tools-Utilities - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: Apt-Cacher NG is a caching proxy, specialized for package files from Linux distributors, primarily for Debian (and Debian based) distributions but not limited to those. home: https://github.com/truecharts/apps/tree/master/charts/stable/apt-cacher-ng -icon: https://truecharts.org/_static/img/appicons/apt-cacher-ng.png +icon: https://truecharts.org/img/chart-icons/apt-cacher-ng.png keywords: - apt-cacher-ng - Network-Proxy @@ -32,4 +31,4 @@ sources: - https://www.unix-ag.uni-kl.de/~bloch/acng/ - https://hub.docker.com/r/sameersbn/apt-cacher-ng/ type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/apt-cacher-ng/questions.yaml b/charts/dev/apt-cacher-ng/questions.yaml new file mode 100644 index 00000000000..e9295dbc368 --- /dev/null +++ b/charts/dev/apt-cacher-ng/questions.yaml @@ -0,0 +1,281 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 3142 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 3142 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: apt-cacher-ng + label: "apt-cacher-ng Storage" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/apt-cacher-ng/templates/common.yaml b/charts/dev/apt-cacher-ng/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/apt-cacher-ng/templates/common.yaml +++ b/charts/dev/apt-cacher-ng/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/archiveteam-warrior/Chart.yaml b/charts/dev/archiveteam-warrior/Chart.yaml index 6886da97532..ccf961f3ebc 100644 --- a/charts/dev/archiveteam-warrior/Chart.yaml +++ b/charts/dev/archiveteam-warrior/Chart.yaml @@ -1,22 +1,21 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Backup - Cloud - Downloaders - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "The Archive Team Warrior is a virtual archiving appliance. You can run\ \ it to help with the Archive Team archiving efforts. It will download sites and\ \ upload them to our archive\u2014and it\u2019s really easy to do!\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/archiveteam-warrior -icon: https://truecharts.org/_static/img/appicons/archiveteam-warrior.png +icon: https://truecharts.org/img/chart-icons/archiveteam-warrior.png keywords: - archiveteam-warrior - Backup @@ -32,4 +31,4 @@ sources: - https://wiki.archiveteam.org/index.php/ArchiveTeam_Warrior - https://hub.docker.com/r/archiveteam/warrior-dockerfile/ type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/archiveteam-warrior/questions.yaml b/charts/dev/archiveteam-warrior/questions.yaml new file mode 100644 index 00000000000..c69c53fd63c --- /dev/null +++ b/charts/dev/archiveteam-warrior/questions.yaml @@ -0,0 +1,282 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8001 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8001 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: appdata + label: "appdata Storage" + description: "Container Path varrundocker.sock" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/archiveteam-warrior/templates/common.yaml b/charts/dev/archiveteam-warrior/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/archiveteam-warrior/templates/common.yaml +++ b/charts/dev/archiveteam-warrior/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/arksurvivalevolved/Chart.yaml b/charts/dev/arksurvivalevolved/Chart.yaml index 64304341153..a74da59c7d2 100644 --- a/charts/dev/arksurvivalevolved/Chart.yaml +++ b/charts/dev/arksurvivalevolved/Chart.yaml @@ -1,20 +1,19 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - GameServers - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "This Docker will download and install SteamCMD. It will also install\ \ ARK:SurvivalEvolved and run it (Normal server startup of ARK can take a long time!).\r\ \n" home: https://github.com/truecharts/apps/tree/master/charts/stable/arksurvivalevolved -icon: https://truecharts.org/_static/img/appicons/arksurvivalevolved.png +icon: https://truecharts.org/img/chart-icons/arksurvivalevolved.png keywords: - arksurvivalevolved - GameServers @@ -28,4 +27,4 @@ sources: - https://survivetheark.com/ - https://hub.docker.com/r/ich777/steamcmd/ type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/arksurvivalevolved/questions.yaml b/charts/dev/arksurvivalevolved/questions.yaml new file mode 100644 index 00000000000..77b5191cb6d --- /dev/null +++ b/charts/dev/arksurvivalevolved/questions.yaml @@ -0,0 +1,539 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_ID + label: 'GAME_ID' + description: "The GAMEID that the container download at startup.If you want to install a static or beta version of the game change the value to 376030 -beta YOURBRANCH (without quotes, replace YOURBRANCH with the branch or version you want to install)." + schema: + type: string + default: "376030" + - variable: USERNAME + label: 'USERNAME' + description: "Your Steam username goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: VALIDATE + label: 'VALIDATE' + description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." + schema: + type: string + default: "" + - variable: PASSWRD + label: 'PASSWRD' + description: "Your Steam password goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: MAP + label: 'MAP' + description: "Container Variable MAP" + schema: + type: string + default: "TheIsland" + - variable: SERVER_NAME + label: 'SERVER_NAME' + description: "Leave empty if you want to use the settings from GameUserSettings.ini (this field accepts no spaces)" + schema: + type: string + default: "" + - variable: SRV_PWD + label: 'SRV_PWD' + description: "Leave empty if you want to use the settings from GameUserSettings.ini (this field accepts no spaces)" + schema: + type: string + default: "" + - variable: SRV_ADMIN_PWD + label: 'SRV_ADMIN_PWD' + description: "Leave empty if you want to use the settings from GameUserSettings.ini (this field accepts no spaces)" + schema: + type: string + default: "" + - variable: GAME_PARAMS + label: 'GAME_PARAMS' + description: "Enter your game parameters seperated with ? and start with a ? (dont put spaces in between eg ?MaxPlayers=40?FastDecayUnsnappedCoreStructures=true)" + schema: + type: string + default: "" + - variable: GAME_PARAMS_EXTRA + label: 'GAME_PARAMS_EXTRA' + description: "Type in your Extra Game Parameters seperated with a space and - (eg -DisableDeathSpectator -UseBattlEye)" + schema: + type: string + default: "-server -log" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 7777 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 7777 + + - variable: udp2 + label: 'udp2 service' + description: "Container Port 7778" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: udp2 + label: "udp2 Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 7778 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 7778 + - variable: udpsteam + label: 'udpsteam service' + description: "Container Port 27015" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: udpsteam + label: "udpsteam Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27015 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27015 + - variable: rcontcp + label: 'rcontcp service' + description: "Container Port 27020" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: rcontcp + label: "rcontcp Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27020 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27020 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: steamcmd + label: "steamcmd Storage" + description: "Container Path serverdatasteamcmd" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: serverfiles + label: "serverfiles Storage" + description: "Container Path serverdataserverfiles" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/arksurvivalevolved/templates/common.yaml b/charts/dev/arksurvivalevolved/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/arksurvivalevolved/templates/common.yaml +++ b/charts/dev/arksurvivalevolved/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/arksurvivalevolved/values.yaml b/charts/dev/arksurvivalevolved/values.yaml index c9054410eff..adacd80f63f 100644 --- a/charts/dev/arksurvivalevolved/values.yaml +++ b/charts/dev/arksurvivalevolved/values.yaml @@ -23,6 +23,13 @@ persistence: podSecurityContext: runAsGroup: 0 runAsUser: 0 +probes: + liveness: + port: '{{ .Values.service.rcontcp.ports.rcontcp.targetPort }}' + readiness: + port: '{{ .Values.service.rcontcp.ports.rcontcp.targetPort }}' + startup: + port: '{{ .Values.service.rcontcp.ports.rcontcp.targetPort }}' securityContext: readOnlyRootFilesystem: false runAsNonRoot: false @@ -59,5 +66,3 @@ service: port: 27015 protocol: UDP targetPort: 27015 -command: ["/bin/sh"] -args: ["-c", "groupmod -g ${GID} ${USER} && bash /opt/scripts/start.sh"] diff --git a/charts/dev/arma3/Chart.yaml b/charts/dev/arma3/Chart.yaml index 5ccc9487acd..2408ba90cf7 100644 --- a/charts/dev/arma3/Chart.yaml +++ b/charts/dev/arma3/Chart.yaml @@ -1,19 +1,18 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - GameServers - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "This Docker will download and install SteamCMD. It will also install\ \ ArmA III and run it.\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/arma3 -icon: https://truecharts.org/_static/img/appicons/arma3.png +icon: https://truecharts.org/img/chart-icons/arma3.png keywords: - arma3 - GameServers @@ -27,4 +26,4 @@ sources: - https://arma3.com/ - https://hub.docker.com/r/ich777/steamcmd/ type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/arma3/questions.yaml b/charts/dev/arma3/questions.yaml new file mode 100644 index 00000000000..0d43729712f --- /dev/null +++ b/charts/dev/arma3/questions.yaml @@ -0,0 +1,644 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_ID + label: 'GAME_ID' + description: "The GAMEID that the container download at startup.(httpsdeveloper.valvesoftware.comwikiDedicatedServersList)" + schema: + type: string + default: "233780" + - variable: GAME_PARAMS + label: 'GAME_PARAMS' + description: "Enter your start up commands for the server.Note To change the Port of the server please click on Show more settings button, dont forget to change the other ports." + schema: + type: string + default: "-config=server.cfg -mod=" + - variable: USERNAME + label: 'USERNAME' + description: "Your Steam username goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: PASSWRD + label: 'PASSWRD' + description: "Your Steam password goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: VALIDATE + label: 'VALIDATE' + description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." + schema: + type: string + default: "" + - variable: GAME_PORT + label: 'GAME_PORT' + description: "Container Variable GAMEPORT" + schema: + type: string + default: "2302" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 2302 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 2302 + + - variable: udpgameport + label: 'udpgameport service' + description: "Same as TCP Game Port" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: udpgameport + label: "udpgameport Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 2302 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 2302 + - variable: udpsteamquerry + label: 'udpsteamquerry service' + description: "UDP Game Port 1" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: udpsteamquerry + label: "udpsteamquerry Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 2303 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 2303 + - variable: udpsteammaster + label: 'udpsteammaster service' + description: "UDP Game Port 2" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: udpsteammaster + label: "udpsteammaster Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 2304 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 2304 + - variable: udpvonport + label: 'udpvonport service' + description: "UDP Game Port 3" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: udpvonport + label: "udpvonport Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 2305 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 2305 + - variable: udpbattleyetra + label: 'udpbattleyetra service' + description: "UDP Game Port 4" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: udpbattleyetra + label: "udpbattleyetra Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 2306 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 2306 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: steamcmd + label: "steamcmd Storage" + description: "Container Path serverdatasteamcmd" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: serverfiles + label: "serverfiles Storage" + description: "Container Path serverdataserverfiles" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: profiles + label: "profiles Storage" + description: "serverdata.localshare" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/arma3/templates/common.yaml b/charts/dev/arma3/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/arma3/templates/common.yaml +++ b/charts/dev/arma3/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/arma3/values.yaml b/charts/dev/arma3/values.yaml index 160238487ff..933c2ee926f 100644 --- a/charts/dev/arma3/values.yaml +++ b/charts/dev/arma3/values.yaml @@ -74,5 +74,3 @@ service: port: 2305 protocol: UDP targetPort: 2305 -command: ["/bin/sh"] -args: ["-c", "groupmod -g ${GID} ${USER} && bash /opt/scripts/start.sh"] diff --git a/charts/dev/arma3exilemod/Chart.yaml b/charts/dev/arma3exilemod/Chart.yaml index 55bf71965bc..07c450835cc 100644 --- a/charts/dev/arma3exilemod/Chart.yaml +++ b/charts/dev/arma3exilemod/Chart.yaml @@ -1,19 +1,18 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - GameServers - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "This Docker will download and install SteamCMD. It will also install\ \ ArmA III including ExileMod and run it.\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/arma3exilemod -icon: https://truecharts.org/_static/img/appicons/arma3exilemod.png +icon: https://truecharts.org/img/chart-icons/arma3exilemod.png keywords: - arma3exilemod - GameServers @@ -27,4 +26,4 @@ sources: - http://www.exilemod.com/ - https://hub.docker.com/r/ich777/steamcmd/ type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/arma3exilemod/questions.yaml b/charts/dev/arma3exilemod/questions.yaml new file mode 100644 index 00000000000..e18bb6a6c05 --- /dev/null +++ b/charts/dev/arma3exilemod/questions.yaml @@ -0,0 +1,722 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_ID + label: 'GAME_ID' + description: "The GAMEID that the container download at startup.(httpsdeveloper.valvesoftware.comwikiDedicatedServersList)" + schema: + type: string + default: "233780" + - variable: GAME_PARAMS + label: 'GAME_PARAMS' + description: "Enter your start up commands for the server.Note To change the Port of the server please click on Show more settings button, dont forget to change the other ports." + schema: + type: string + default: "" + - variable: USERNAME + label: 'USERNAME' + description: "Your Steam username goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: PASSWRD + label: 'PASSWRD' + description: "Your Steam password goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: VALIDATE + label: 'VALIDATE' + description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." + schema: + type: string + default: "" + - variable: MARIA_DB_ROOT_PWD + label: 'MARIA_DB_ROOT_PWD' + description: "Enter the preffered root password of the database." + schema: + type: string + default: "ExileMod" + - variable: WORKSHOP_MAN_INST + label: 'WORKSHOP_MAN_INST' + description: "Please set to true (without quotes) if you want to install the Workshopcontent for ExileMod manually since the account you specified above must have a valid game purchase for ArmA3 (you could also use one account to download the dedicated server files and another to install the Workshop files).A COMPLETE HOW TO WILL BE IN THE CONSOLEWARNING Please let this variable set to true if you initially set it to true." + schema: + type: string + default: "" + - variable: GAME_PORT + label: 'GAME_PORT' + description: "Container Variable GAMEPORT" + schema: + type: string + default: "2302" + - variable: EXILEMOD_SERVER_URL + label: 'EXILEMOD_SERVER_URL' + description: "Change only if you know what you are doing!" + schema: + type: string + default: "http://www.exilemod.com/ExileServer-1.0.4a.zip" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 2302 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 2302 + + - variable: udpgameport + label: 'udpgameport service' + description: "Same as TCP Game Port" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: udpgameport + label: "udpgameport Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 2302 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 2302 + - variable: udpsteamquerry + label: 'udpsteamquerry service' + description: "UDP Game Port 1" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: udpsteamquerry + label: "udpsteamquerry Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 2303 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 2303 + - variable: udpsteammaster + label: 'udpsteammaster service' + description: "UDP Game Port 2" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: udpsteammaster + label: "udpsteammaster Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 2304 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 2304 + - variable: udpvonport + label: 'udpvonport service' + description: "UDP Game Port 3" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: udpvonport + label: "udpvonport Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 2305 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 2305 + - variable: udpbattleyetra + label: 'udpbattleyetra service' + description: "UDP Game Port 4" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: udpbattleyetra + label: "udpbattleyetra Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 2306 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 2306 + - variable: tcpmariadb + label: 'tcpmariadb service' + description: "Not required, only if you want to connect to the database from outside. Delete if you allready have a MariaDB container running." + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: tcpmariadb + label: "tcpmariadb Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 3306 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 3306 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: steamcmd + label: "steamcmd Storage" + description: "Container Path serverdatasteamcmd" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: serverfiles + label: "serverfiles Storage" + description: "Container Path serverdataserverfiles" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: profiles + label: "profiles Storage" + description: "serverdata.localshare" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/arma3exilemod/templates/common.yaml b/charts/dev/arma3exilemod/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/arma3exilemod/templates/common.yaml +++ b/charts/dev/arma3exilemod/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/arma3exilemod/values.yaml b/charts/dev/arma3exilemod/values.yaml index 927ad35a1f7..1a5e14ad14d 100644 --- a/charts/dev/arma3exilemod/values.yaml +++ b/charts/dev/arma3exilemod/values.yaml @@ -85,5 +85,3 @@ service: port: 2305 protocol: UDP targetPort: 2305 -command: ["/bin/sh"] -args: ["-c", "groupmod -g ${GID} ${USER} && bash /opt/scripts/start.sh"] diff --git a/charts/dev/artifactory-oss/Chart.yaml b/charts/dev/artifactory-oss/Chart.yaml index c372dc44b9f..26cf88303df 100644 --- a/charts/dev/artifactory-oss/Chart.yaml +++ b/charts/dev/artifactory-oss/Chart.yaml @@ -1,22 +1,21 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Productivity - Tools-Utilities - truecharts.org/grade: U apiVersion: v2 -appVersion: "7.38.7" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "JFrog\u2019s Artifactory open source project was created to speed up\ \ development cycles using binary repositories. It\u2019s the world\u2019s most\ \ advanced repository manager, creating a single place for teams to manage all their\ \ binary artifacts efficiently." home: https://github.com/truecharts/apps/tree/master/charts/stable/artifactory-oss -icon: https://truecharts.org/_static/img/appicons/artifactory-oss.png +icon: https://truecharts.org/img/chart-icons/artifactory-oss.png keywords: - artifactory-oss - Productivity @@ -31,4 +30,4 @@ sources: - https://jfrog.com/ - https://registry.hub.docker.com/r/docker.bintray.io/jfrog/artifactory-oss type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/artifactory-oss/questions.yaml b/charts/dev/artifactory-oss/questions.yaml new file mode 100644 index 00000000000..15635569520 --- /dev/null +++ b/charts/dev/artifactory-oss/questions.yaml @@ -0,0 +1,296 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: EXTRA_JAVA_OPTIONS + label: 'EXTRA_JAVA_OPTIONS' + description: "Container Variable EXTRAJAVAOPTIONS" + schema: + type: string + default: "-Xms512m -Xmx4g" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8181 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8081 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: varoptjfrogartifactory + label: "varoptjfrogartifactory Storage" + description: "varoptjfrogartifactory" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/artifactory-oss/templates/common.yaml b/charts/dev/artifactory-oss/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/artifactory-oss/templates/common.yaml +++ b/charts/dev/artifactory-oss/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/assettocorsa/Chart.yaml b/charts/dev/assettocorsa/Chart.yaml index 9859393907e..3074f72326a 100644 --- a/charts/dev/assettocorsa/Chart.yaml +++ b/charts/dev/assettocorsa/Chart.yaml @@ -1,19 +1,18 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - GameServers - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "This Docker will download and install SteamCMD. It will also install\ \ AssettoCorsa and run it.\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/assettocorsa -icon: https://truecharts.org/_static/img/appicons/assettocorsa.png +icon: https://truecharts.org/img/chart-icons/assettocorsa.png keywords: - assettocorsa - GameServers @@ -27,4 +26,4 @@ sources: - https://www.assettocorsa.net/ - https://hub.docker.com/r/ich777/steamcmd/ type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/assettocorsa/questions.yaml b/charts/dev/assettocorsa/questions.yaml new file mode 100644 index 00000000000..b701924c3e3 --- /dev/null +++ b/charts/dev/assettocorsa/questions.yaml @@ -0,0 +1,575 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_ID + label: 'GAME_ID' + description: "The GAMEID that the container download at startup.(httpsdeveloper.valvesoftware.comwikiDedicatedServersList)" + schema: + type: string + default: "302550" + - variable: USERNAME + label: 'USERNAME' + description: "Your Steam username goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: VALIDATE + label: 'VALIDATE' + description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." + schema: + type: string + default: "" + - variable: PASSWRD + label: 'PASSWRD' + description: "Your Steam password goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: INSTALL_STRACKER + label: 'INSTALL_STRACKER' + description: "Set to true (without quotes) to install Stacker, otherwise leave blank (Please note that you can only Stacker or Assetto-Server-Manager, not both at the same time)." + schema: + type: string + default: "" + - variable: INSTALL_ASSETTO_SERVER_MANAGER + label: 'INSTALL_ASSETTO_SERVER_MANAGER' + description: "Set to true (without quotes) to install Assetto-Server-Manager, otherwise leave blank (Please note that you can only Stacker or Assetto-Server-Manager, not both at the same time)." + schema: + type: string + default: "" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 9600 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 9600 + + - variable: udp + label: 'udp service' + description: "Container Port 9600" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: udp + label: "udp Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 9600 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 9600 + - variable: tcp2 + label: 'tcp2 service' + description: "Container Port 8081" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: tcp2 + label: "tcp2 Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8081 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8081 + - variable: stracker + label: 'stracker service' + description: "Only needed if you installed Stacker (Webserver Address http[IPOFYOURSERVER]50041)." + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: stracker + label: "stracker Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 50041 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 50041 + - variable: assetto + label: 'assetto service' + description: "Only needed if you installed Assetto-Server-Manager (Webserver Address http[IPOFYOURSERVER]8771)." + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: assetto + label: "assetto Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8772 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8772 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: steamcmd + label: "steamcmd Storage" + description: "Container Path serverdatasteamcmd" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: serverfiles + label: "serverfiles Storage" + description: "Container Path serverdataserverfiles" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/assettocorsa/templates/common.yaml b/charts/dev/assettocorsa/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/assettocorsa/templates/common.yaml +++ b/charts/dev/assettocorsa/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/atd/CHANGELOG.md b/charts/dev/atd/CHANGELOG.md deleted file mode 100644 index 7f8445594d1..00000000000 --- a/charts/dev/atd/CHANGELOG.md +++ /dev/null @@ -1,49 +0,0 @@ -# Changelog - - - - - -### [atd-0.0.5](https://github.com/truecharts/apps/compare/atd-0.0.4...atd-0.0.5) (2022-05-05) - -#### Chore - -* update helm general non-major helm releases ([#2612](https://github.com/truecharts/apps/issues/2612)) - - - - -### [atd-0.0.4](https://github.com/truecharts/apps/compare/atd-0.0.3...atd-0.0.4) (2022-04-26) - -#### Chore - -* update helm general non-major helm releases ([#2573](https://github.com/truecharts/apps/issues/2573)) - - - - -### [atd-0.0.3](https://github.com/truecharts/apps/compare/atd-0.0.2...atd-0.0.3) (2022-04-20) - -#### Chore - -* add missing quote on description ([#2515](https://github.com/truecharts/apps/issues/2515)) -* update helm general non-major helm releases ([#2524](https://github.com/truecharts/apps/issues/2524)) - - - - -### [atd-0.0.2](https://github.com/truecharts/apps/compare/atd-0.0.1...atd-0.0.2) (2022-04-12) - -#### Chore - -* Auto-update chart README [skip ci] -* update helm general non-major helm releases ([#2480](https://github.com/truecharts/apps/issues/2480)) - - - - -### atd-0.0.1 (2022-04-08) - -#### Feat - -* Unraid Port - A ([#2438](https://github.com/truecharts/apps/issues/2438)) diff --git a/charts/dev/atd/Chart.yaml b/charts/dev/atd/Chart.yaml deleted file mode 100644 index f98bf955870..00000000000 --- a/charts/dev/atd/Chart.yaml +++ /dev/null @@ -1,33 +0,0 @@ -annotations: - truecharts.org/SCALE-support: 'false' - truecharts.org/catagories: | - - Downloaders - - MediaApp-Music - truecharts.org/grade: U -apiVersion: v2 -appVersion: "latest" -dependencies: -- name: common - repository: https://library-charts.truecharts.org - version: 9.3.3 -deprecated: false -description: '[b][u][span style=''color: #E80000;'']NOT FOR PUBLIC USE YET...[/span][/u][/b][br][br]Automated - Tidal Downloader :: This script will automatically archive music using a popular - online DL Client' -home: https://github.com/truecharts/apps/tree/master/charts/stable/atd -icon: https://truecharts.org/_static/img/appicons/atd.png -keywords: -- atd -- Downloaders -- MediaApp-Music -kubeVersion: '>=1.16.0-0' -maintainers: -- email: info@truecharts.org - name: TrueCharts - url: https://truecharts.org -name: atd -sources: -- https://github.com/RandomNinjaAtk/docker-atd -- https://hub.docker.com/r/randomninjaatk/atd -type: application -version: 0.0.5 diff --git a/charts/dev/atd/README.md b/charts/dev/atd/README.md deleted file mode 100644 index e7e0241a6a0..00000000000 --- a/charts/dev/atd/README.md +++ /dev/null @@ -1,108 +0,0 @@ -# atd - -![Version: 0.0.5](https://img.shields.io/badge/Version-0.0.5-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: latest](https://img.shields.io/badge/AppVersion-latest-informational?style=flat-square) - -[b][u][span style='color: #E80000;']NOT FOR PUBLIC USE YET...[/span][/u][/b][br][br]Automated Tidal Downloader :: This script will automatically archive music using a popular online DL Client - -TrueCharts can be installed as both *normal* Helm Charts or as Apps on TrueNAS SCALE. - -This readme is just an automatically generated general guide on installing our Helm Charts and Apps. -For more information, please click here: [atd](https://truecharts.org/charts/stable/atd) - -**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/truecharts/apps/issues/new/choose)** - -## Source Code - -* -* - -## Requirements - -Kubernetes: `>=1.16.0-0` - -## Dependencies - -| Repository | Name | Version | -|------------|------|---------| -| https://library-charts.truecharts.org | common | 9.3.3 | - -## Installing the Chart - -### TrueNAS SCALE - -To install this App on TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/manual/Quick-Start%20Guides/02-Installing-an-App/). - -### Helm - -To install the chart with the release name `atd` - -```console -helm repo add TrueCharts https://helm.truecharts.org -helm repo update -helm install atd TrueCharts/atd -``` - -## Uninstall - -### TrueNAS SCALE - -**Upgrading, Rolling Back and Uninstalling the Chart** - -To upgrade, rollback or delete this App from TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/manual/Quick-Start%20Guides/04-Upgrade-rollback-delete-an-App/). - -### Helm - -To uninstall the `atd` deployment - -```console -helm uninstall atd -``` - -## Configuration - -### Helm - -#### Available Settings - -Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values. -Other values may be used from the [values.yaml](https://github.com/truecharts/library-charts/tree/main/charts/stable/common/values.yaml) from the [common library](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common). - -#### Configure using the Commandline - -Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. - -```console -helm install atd \ - --set env.TZ="America/New York" \ - TrueCharts/atd -``` - -#### Configure using a yaml file - -Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. - -```console -helm install atd TrueCharts/atd -f values.yaml -``` - -#### Connecting to other apps - -If you need to connect this App to other Apps on TrueNAS SCALE, please refer to our [Linking Apps Internally](https://truecharts.org/manual/Quick-Start%20Guides/06-linking-apps/) quick-start guide. - -## Support - -- Please check our [quick-start guides for TrueNAS SCALE](https://truecharts.org/docs/manual/SCALE%20Apps/Quick-Start%20Guides/Important-MUST-READ). -- See the [Website](https://truecharts.org) -- Check our [Discord](https://discord.gg/tVsPTHWTtr) -- Open a [issue](https://github.com/truecharts/apps/issues/new/choose) - ---- - -## Sponsor TrueCharts - -TrueCharts can only exist due to the incredible effort of our staff. -Please consider making a [donation](https://truecharts.org/docs/about/sponsor) or contributing back to the project any way you can! - ---- - -All Rights Reserved - The TrueCharts Project diff --git a/charts/dev/atd/icon.png b/charts/dev/atd/icon.png deleted file mode 100644 index 0a3b8cd5b46..00000000000 Binary files a/charts/dev/atd/icon.png and /dev/null differ diff --git a/charts/dev/atd/templates/common.yaml b/charts/dev/atd/templates/common.yaml deleted file mode 100644 index f6d3b6d3a08..00000000000 --- a/charts/dev/atd/templates/common.yaml +++ /dev/null @@ -1,2 +0,0 @@ -{{/* Render the templates */}} -{{ include "common.all" . }} diff --git a/charts/dev/atd/values.yaml b/charts/dev/atd/values.yaml deleted file mode 100644 index 87017cd57d6..00000000000 --- a/charts/dev/atd/values.yaml +++ /dev/null @@ -1,38 +0,0 @@ -env: - AutoStart: '' - Compilations: '' - CountryCode: '' - EnableReplayGain: '' - FilePermisssions: '' - FolderPermissions: '' - LidarrApiKey: '' - LidarrUrl: '' - MusicbrainzMirror: '' - MusicbrainzRateLimit: '' - RequireQuality: '' - ScriptInterval: '' - ScriptMode: '' - WantedQuality: '' -image: - pullPolicy: IfNotPresent - repository: tccr.io/truecharts/atd - tag: latest -persistence: - config: - enabled: true - mountPath: /config - hostpathfordownloads-atd: - enabled: true - mountPath: /downloads-atd -podSecurityContext: - runAsGroup: 0 - runAsUser: 0 -securityContext: - readOnlyRootFilesystem: false - runAsNonRoot: false -service: - main: - enabled: false - ports: - main: - enabled: false diff --git a/charts/dev/aurora-files/Chart.yaml b/charts/dev/aurora-files/Chart.yaml index f83892de1aa..8dd8f75b7aa 100644 --- a/charts/dev/aurora-files/Chart.yaml +++ b/charts/dev/aurora-files/Chart.yaml @@ -1,20 +1,19 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Cloud - Tools-Utilities - Network-FTP - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "DESCRIPTION\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/aurora-files -icon: https://truecharts.org/_static/img/appicons/aurora-files.png +icon: https://truecharts.org/img/chart-icons/aurora-files.png keywords: - aurora-files - Cloud @@ -30,4 +29,4 @@ sources: - https://github.com/afterlogic/docker-aurora-files - https://hub.docker.com/r/afterlogic/docker-aurora-files type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/aurora-files/questions.yaml b/charts/dev/aurora-files/questions.yaml new file mode 100644 index 00000000000..1f3a55cb4c6 --- /dev/null +++ b/charts/dev/aurora-files/questions.yaml @@ -0,0 +1,169 @@ +# Include{groups} +portals: {} +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: false +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + +# Include{persistenceList} + + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/aurora-files/templates/common.yaml b/charts/dev/aurora-files/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/aurora-files/templates/common.yaml +++ b/charts/dev/aurora-files/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/aurora-files/values.yaml b/charts/dev/aurora-files/values.yaml index 5966996421e..9af0b13ce3f 100644 --- a/charts/dev/aurora-files/values.yaml +++ b/charts/dev/aurora-files/values.yaml @@ -7,6 +7,13 @@ persistence: {} podSecurityContext: runAsGroup: 0 runAsUser: 0 +probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false securityContext: readOnlyRootFilesystem: false runAsNonRoot: false diff --git a/charts/dev/auto-yt-dl/Chart.yaml b/charts/dev/auto-yt-dl/Chart.yaml index 7854254de7b..4fee60a3deb 100644 --- a/charts/dev/auto-yt-dl/Chart.yaml +++ b/charts/dev/auto-yt-dl/Chart.yaml @@ -1,19 +1,18 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Downloaders - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: auto-yt-dl is used to automatically download new Videos of specific YouTube Channels. It features a Web Gui to add and remove Channels from your watch list. home: https://github.com/truecharts/apps/tree/master/charts/stable/auto-yt-dl -icon: https://truecharts.org/_static/img/appicons/auto-yt-dl.png +icon: https://truecharts.org/img/chart-icons/auto-yt-dl.png keywords: - auto-yt-dl - Downloaders @@ -27,4 +26,4 @@ sources: - https://github.com/xXGuhuXx/auto-yt-dl - https://hub.docker.com/repository/docker/guhu007/auto-yt-dl type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/auto-yt-dl/questions.yaml b/charts/dev/auto-yt-dl/questions.yaml new file mode 100644 index 00000000000..e7b361aaaa7 --- /dev/null +++ b/charts/dev/auto-yt-dl/questions.yaml @@ -0,0 +1,291 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 5000 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 5000 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: hostpath1 + label: "hostpath1 Storage" + description: "This is the destination of the downloaded videos." + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: data + label: "data Storage" + description: "Used to store data (ex. monitored Channels)" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/auto-yt-dl/templates/common.yaml b/charts/dev/auto-yt-dl/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/auto-yt-dl/templates/common.yaml +++ b/charts/dev/auto-yt-dl/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/autoscan/Chart.yaml b/charts/dev/autoscan/Chart.yaml index 67662d586f8..1bfc87e0964 100644 --- a/charts/dev/autoscan/Chart.yaml +++ b/charts/dev/autoscan/Chart.yaml @@ -1,20 +1,19 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Other - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: Autoscan replaces the default Plex and Emby behaviour for picking up file changes on the file system. Autoscan integrates with Sonarr, Radarr and Lidarr to fetch changes in near real-time without relying on the file system. home: https://github.com/truecharts/apps/tree/master/charts/stable/autoscan -icon: https://truecharts.org/_static/img/appicons/autoscan.png +icon: https://truecharts.org/img/chart-icons/autoscan.png keywords: - autoscan - Other @@ -28,4 +27,4 @@ sources: - https://hotio.dev/containers/autoscan - https://hub.docker.com/r/hotio/autoscan type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/autoscan/questions.yaml b/charts/dev/autoscan/questions.yaml new file mode 100644 index 00000000000..be2e55e8ed9 --- /dev/null +++ b/charts/dev/autoscan/questions.yaml @@ -0,0 +1,214 @@ +# Include{groups} +portals: {} +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: false +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: PLEX_LOGIN + label: 'PLEX_LOGIN' + description: "Container Variable PLEXLOGIN" + schema: + type: string + default: "" + - variable: PLEX_PASSWORD + label: 'PLEX_PASSWORD' + description: "Container Variable PLEXPASSWORD" + schema: + type: string + default: "" + - variable: UMASK + label: 'UMASK' + description: "Container Variable UMASK" + schema: + type: string + default: "" + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: config + label: "config Storage" + description: "Container Path config" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/autoscan/templates/common.yaml b/charts/dev/autoscan/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/autoscan/templates/common.yaml +++ b/charts/dev/autoscan/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/autoscan/values.yaml b/charts/dev/autoscan/values.yaml index f50d7678eef..3486289281d 100644 --- a/charts/dev/autoscan/values.yaml +++ b/charts/dev/autoscan/values.yaml @@ -13,6 +13,13 @@ persistence: podSecurityContext: runAsGroup: 0 runAsUser: 0 +probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false securityContext: readOnlyRootFilesystem: false runAsNonRoot: false diff --git a/charts/dev/avorion/Chart.yaml b/charts/dev/avorion/Chart.yaml index 2ce48097913..04866feb6b1 100644 --- a/charts/dev/avorion/Chart.yaml +++ b/charts/dev/avorion/Chart.yaml @@ -1,19 +1,18 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - GameServers - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "This Docker will download and install SteamCMD. It will also install\ \ Avorion and run it.\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/avorion -icon: https://truecharts.org/_static/img/appicons/avorion.png +icon: https://truecharts.org/img/chart-icons/avorion.png keywords: - avorion - GameServers @@ -27,4 +26,4 @@ sources: - https://www.steampowered.com/ - https://hub.docker.com/r/ich777/steamcmd/ type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/avorion/questions.yaml b/charts/dev/avorion/questions.yaml new file mode 100644 index 00000000000..797e943fe78 --- /dev/null +++ b/charts/dev/avorion/questions.yaml @@ -0,0 +1,581 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_ID + label: 'GAME_ID' + description: "The GAMEID that the container download at startup.(httpsdeveloper.valvesoftware.comwikiDedicatedServersList)" + schema: + type: string + default: "565060" + - variable: GALAXY_NAME + label: 'GALAXY_NAME' + description: "Enter the Galaxy Name here (also the savepath will be the same as the Galaxy Name in the serverfiles folder, please use no spaces or special characters)." + schema: + type: string + default: "AvorionDocker" + - variable: GAME_PARAMS + label: 'GAME_PARAMS' + description: "Enter your start up commands for the server (for example the server admin --admin [YOURsteamID64] e.g --admin 123456789123456789 without quotes)." + schema: + type: string + default: "" + - variable: USERNAME + label: 'USERNAME' + description: "Your Steam username goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: VALIDATE + label: 'VALIDATE' + description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." + schema: + type: string + default: "" + - variable: PASSWRD + label: 'PASSWRD' + description: "Your Steam password goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: UMASK + label: 'UMASK' + description: "Container Variable UMASK" + schema: + type: string + default: "000" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27000 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27000 + + - variable: hostport2 + label: 'hostport2 service' + description: "Container Port 27000" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: hostport2 + label: "hostport2 Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27000 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27000 + - variable: hostport3 + label: 'hostport3 service' + description: "Container Port 27003" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: hostport3 + label: "hostport3 Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27003 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27003 + - variable: hostport4 + label: 'hostport4 service' + description: "Container Port 27020" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: hostport4 + label: "hostport4 Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27020 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27020 + - variable: hostport5 + label: 'hostport5 service' + description: "Container Port 27021" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: hostport5 + label: "hostport5 Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27021 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27021 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: steamcmd + label: "steamcmd Storage" + description: "Container Path serverdatasteamcmd" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: serverfiles + label: "serverfiles Storage" + description: "Container Path serverdataserverfiles" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/avorion/templates/common.yaml b/charts/dev/avorion/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/avorion/templates/common.yaml +++ b/charts/dev/avorion/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/avorion/values.yaml b/charts/dev/avorion/values.yaml index 83b844638a6..869a9bcdc46 100644 --- a/charts/dev/avorion/values.yaml +++ b/charts/dev/avorion/values.yaml @@ -6,6 +6,8 @@ env: UMASK: '000' USERNAME: '' VALIDATE: '' +stdin: true +tty: true image: pullPolicy: IfNotPresent repository: tccr.io/truecharts/avorion @@ -64,9 +66,6 @@ service: port: 27000 protocol: TCP targetPort: 27000 -command: ["/bin/sh"] -args: ["-c", "groupmod -g ${GID} ${USER} && bash /opt/scripts/start.sh"] -tty: true probes: liveness: enabled: false diff --git a/charts/dev/backuppc/Chart.yaml b/charts/dev/backuppc/Chart.yaml index 5e9569ff707..831ad1ee5f9 100644 --- a/charts/dev/backuppc/Chart.yaml +++ b/charts/dev/backuppc/Chart.yaml @@ -1,20 +1,19 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Backup - Network-Web - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: BackupPC is a high-performance, enterprise-grade system for backing up Linux, Windows and macOS PCs and laptops to a server's disk. home: https://github.com/truecharts/apps/tree/master/charts/stable/backuppc -icon: https://truecharts.org/_static/img/appicons/backuppc.png +icon: https://truecharts.org/img/chart-icons/backuppc.png keywords: - backuppc - Backup @@ -29,4 +28,4 @@ sources: - https://backuppc.github.io/backuppc/index.html - https://hub.docker.com/r/tiredofit/backuppc/ type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/backuppc/questions.yaml b/charts/dev/backuppc/questions.yaml new file mode 100644 index 00000000000..7b4b615b62e --- /dev/null +++ b/charts/dev/backuppc/questions.yaml @@ -0,0 +1,309 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8000 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 80 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: backuplocation + label: "backuplocation Storage" + description: "Backup Location" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: configurationfiles + label: "configurationfiles Storage" + description: "Configuration Files" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: homedirectory + label: "homedirectory Storage" + description: "Home Directory for Backuppc (SSH Keys)" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: logs + label: "logs Storage" + description: "Logs" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/backuppc/templates/common.yaml b/charts/dev/backuppc/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/backuppc/templates/common.yaml +++ b/charts/dev/backuppc/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/baikal/Chart.yaml b/charts/dev/baikal/Chart.yaml index 8a07a690b7e..118b8aea66c 100644 --- a/charts/dev/baikal/Chart.yaml +++ b/charts/dev/baikal/Chart.yaml @@ -1,18 +1,17 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Network-Web - truecharts.org/grade: U apiVersion: v2 -appVersion: "nginx" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "Ba\xEFkal is a lightweight CalDAV+CardDAV server" home: https://github.com/truecharts/apps/tree/master/charts/stable/baikal -icon: https://truecharts.org/_static/img/appicons/baikal.png +icon: https://truecharts.org/img/chart-icons/baikal.png keywords: - baikal - Network-Web @@ -26,4 +25,4 @@ sources: - https://github.com/ckulka/baikal-docker - https://hub.docker.com/r/ckulka/baikal/ type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/baikal/questions.yaml b/charts/dev/baikal/questions.yaml new file mode 100644 index 00000000000..de45def0b97 --- /dev/null +++ b/charts/dev/baikal/questions.yaml @@ -0,0 +1,291 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 80 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 80 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: config + label: "config Storage" + description: "Container Path varwwwbaikalconfig" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: specific + label: "specific Storage" + description: "Container Path varwwwbaikalSpecific" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/baikal/templates/common.yaml b/charts/dev/baikal/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/baikal/templates/common.yaml +++ b/charts/dev/baikal/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/barcodebuddy/Chart.yaml b/charts/dev/barcodebuddy/Chart.yaml index 236f42625a6..73db4679d13 100644 --- a/charts/dev/barcodebuddy/Chart.yaml +++ b/charts/dev/barcodebuddy/Chart.yaml @@ -1,21 +1,20 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Productivity - Tools-Utilities - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "<b>Barcode Buddy is a Grocy companion app/plugin, which allows\ \ you to install the Barcode Buddy app and scan products directly to your Grocy\ \ library.</b>\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/barcodebuddy -icon: https://truecharts.org/_static/img/appicons/barcodebuddy.png +icon: https://truecharts.org/img/chart-icons/barcodebuddy.png keywords: - barcodebuddy - Productivity @@ -30,4 +29,4 @@ sources: - https://github.com/Forceu/barcodebuddy - https://hub.docker.com/r/f0rc3/barcodebuddy-docker type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/barcodebuddy/questions.yaml b/charts/dev/barcodebuddy/questions.yaml new file mode 100644 index 00000000000..096756f5392 --- /dev/null +++ b/charts/dev/barcodebuddy/questions.yaml @@ -0,0 +1,282 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8450 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 80 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: config + label: "config Storage" + description: "Container Path config" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/barcodebuddy/templates/common.yaml b/charts/dev/barcodebuddy/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/barcodebuddy/templates/common.yaml +++ b/charts/dev/barcodebuddy/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/barotrauma/Chart.yaml b/charts/dev/barotrauma/Chart.yaml index 6ff3dd6fe6d..29fd852c3a7 100644 --- a/charts/dev/barotrauma/Chart.yaml +++ b/charts/dev/barotrauma/Chart.yaml @@ -1,19 +1,18 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - GameServers - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "This Docker will download and install SteamCMD. It will also install\ \ Barotrauma and run it.\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/barotrauma -icon: https://truecharts.org/_static/img/appicons/barotrauma.png +icon: https://truecharts.org/img/chart-icons/barotrauma.png keywords: - barotrauma - GameServers @@ -27,4 +26,4 @@ sources: - https://www.steampowered.com/ - https://hub.docker.com/r/ich777/steamcmd/ type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/barotrauma/questions.yaml b/charts/dev/barotrauma/questions.yaml new file mode 100644 index 00000000000..004aae5ccec --- /dev/null +++ b/charts/dev/barotrauma/questions.yaml @@ -0,0 +1,389 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_ID + label: 'GAME_ID' + description: "The GAMEID that the container download at startup.(httpsdeveloper.valvesoftware.comwikiDedicatedServersList)" + schema: + type: string + default: "1026340" + - variable: GAME_PARAMS + label: 'GAME_PARAMS' + description: "Enter your start up commands for the server otherwise leave blank." + schema: + type: string + default: "" + - variable: USERNAME + label: 'USERNAME' + description: "Your Steam username goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: VALIDATE + label: 'VALIDATE' + description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." + schema: + type: string + default: "" + - variable: PASSWRD + label: 'PASSWRD' + description: "Your Steam password goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27015 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27015 + + - variable: steamqueryport + label: 'steamqueryport service' + description: "UDP Steam Query Port (if you need another port, please delete this entry and create a new UDP Port with the required port number, also dont forget to change it in the serversettings.xml)" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: steamqueryport + label: "steamqueryport Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27016 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27016 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: steamcmd + label: "steamcmd Storage" + description: "Container Path serverdatasteamcmd" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: serverfiles + label: "serverfiles Storage" + description: "Container Path serverdataserverfiles" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/barotrauma/templates/common.yaml b/charts/dev/barotrauma/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/barotrauma/templates/common.yaml +++ b/charts/dev/barotrauma/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/barotrauma/values.yaml b/charts/dev/barotrauma/values.yaml index 297a21d8281..dead8c02792 100644 --- a/charts/dev/barotrauma/values.yaml +++ b/charts/dev/barotrauma/values.yaml @@ -18,6 +18,13 @@ persistence: podSecurityContext: runAsGroup: 0 runAsUser: 0 +probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false securityContext: readOnlyRootFilesystem: false runAsNonRoot: false @@ -38,10 +45,3 @@ service: port: 27016 protocol: UDP targetPort: 27016 -probes: - liveness: - enabled: false - readiness: - enabled: false - startup: - enabled: false diff --git a/charts/dev/bitcoin-node/Chart.yaml b/charts/dev/bitcoin-node/Chart.yaml index 540835debce..fbf98e52194 100644 --- a/charts/dev/bitcoin-node/Chart.yaml +++ b/charts/dev/bitcoin-node/Chart.yaml @@ -1,18 +1,17 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Crypto - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "DESCRIPTION\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/bitcoin-node -icon: https://truecharts.org/_static/img/appicons/bitcoin-node.png +icon: https://truecharts.org/img/chart-icons/bitcoin-node.png keywords: - bitcoin-node - Crypto @@ -26,4 +25,4 @@ sources: - https://github.com/kylemanna/docker-bitcoind - https://hub.docker.com/r/kylemanna/bitcoind type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/bitcoin-node/questions.yaml b/charts/dev/bitcoin-node/questions.yaml new file mode 100644 index 00000000000..e5f717e6458 --- /dev/null +++ b/charts/dev/bitcoin-node/questions.yaml @@ -0,0 +1,340 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8332 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8332 + + - variable: port2 + label: 'port2 service' + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: port2 + label: "port2 Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8333 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8333 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: blockhainstorage + label: "blockhainstorage Storage" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/bitcoin-node/templates/common.yaml b/charts/dev/bitcoin-node/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/bitcoin-node/templates/common.yaml +++ b/charts/dev/bitcoin-node/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/bitcoind/Chart.yaml b/charts/dev/bitcoind/Chart.yaml index c00adc0093f..d7dc7908fa7 100644 --- a/charts/dev/bitcoind/Chart.yaml +++ b/charts/dev/bitcoind/Chart.yaml @@ -1,23 +1,22 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Tools-Utilities - Network-Other - Crypto - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: 'Support the Bitcoin network by hosting your own node! This template provides a full Bitcoin Core node, built in a verifiably trustless way. ' home: https://github.com/truecharts/apps/tree/master/charts/stable/bitcoind -icon: https://truecharts.org/_static/img/appicons/bitcoind.png +icon: https://truecharts.org/img/chart-icons/bitcoind.png keywords: - bitcoind - Tools-Utilities @@ -33,4 +32,4 @@ sources: - https://bitcoin.org/ - https://hub.docker.com/r/ofawx/bitcoind/ type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/bitcoind/questions.yaml b/charts/dev/bitcoind/questions.yaml new file mode 100644 index 00000000000..8d660a54c7a --- /dev/null +++ b/charts/dev/bitcoind/questions.yaml @@ -0,0 +1,342 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8333 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8333 + + - variable: localrpc + label: 'localrpc service' + description: "Port to listen for RPC connections (Optional)" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: localrpc + label: "localrpc Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8332 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8332 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: data + label: "data Storage" + description: "Blockchain and database storage. Requires at least 500 GiB free disk." + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/bitcoind/templates/common.yaml b/charts/dev/bitcoind/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/bitcoind/templates/common.yaml +++ b/charts/dev/bitcoind/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/bitcoinunlimited/Chart.yaml b/charts/dev/bitcoinunlimited/Chart.yaml index ecb2c73825e..8ae03ee8659 100644 --- a/charts/dev/bitcoinunlimited/Chart.yaml +++ b/charts/dev/bitcoinunlimited/Chart.yaml @@ -1,19 +1,18 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Network-Other - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "The Bitcoin Unlimited project seeks to provide a voice to all stakeholders\ \ in the Bitcoin ecosystem.\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/bitcoinunlimited -icon: https://truecharts.org/_static/img/appicons/bitcoinunlimited.png +icon: https://truecharts.org/img/chart-icons/bitcoinunlimited.png keywords: - bitcoinunlimited - Network-Other @@ -26,4 +25,4 @@ name: bitcoinunlimited sources: - https://hub.docker.com/r/amacneil/bitcoinunlimited/~/dockerfile/ type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/bitcoinunlimited/questions.yaml b/charts/dev/bitcoinunlimited/questions.yaml new file mode 100644 index 00000000000..3780997ab6d --- /dev/null +++ b/charts/dev/bitcoinunlimited/questions.yaml @@ -0,0 +1,462 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8332 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8332 + + - variable: communicationp + label: 'communicationp service' + description: "Main Port Used" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: communicationp + label: "communicationp Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8333 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8333 + - variable: testnetrpcport + label: 'testnetrpcport service' + description: "Testnet RPC Port" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: testnetrpcport + label: "testnetrpcport Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 18332 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 18332 + - variable: testnetcommuni + label: 'testnetcommuni service' + description: "Testnet Communication Port" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: testnetcommuni + label: "testnetcommuni Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 18333 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 18333 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: data + label: "data Storage" + description: "Mount data for the blockchain" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/bitcoinunlimited/templates/common.yaml b/charts/dev/bitcoinunlimited/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/bitcoinunlimited/templates/common.yaml +++ b/charts/dev/bitcoinunlimited/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/bitcoinwalletgui/Chart.yaml b/charts/dev/bitcoinwalletgui/Chart.yaml index b10b1039716..f8c683492d6 100644 --- a/charts/dev/bitcoinwalletgui/Chart.yaml +++ b/charts/dev/bitcoinwalletgui/Chart.yaml @@ -1,20 +1,19 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Other - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: 'Bitcoin wallet with GUI over VNC and NoVNC. ' home: https://github.com/truecharts/apps/tree/master/charts/stable/bitcoinwalletgui -icon: https://truecharts.org/_static/img/appicons/bitcoinwalletgui.png +icon: https://truecharts.org/img/chart-icons/bitcoinwalletgui.png keywords: - bitcoinwalletgui - Other @@ -27,4 +26,4 @@ name: bitcoinwalletgui sources: - https://hub.docker.com/r/ulisses1478/bitcoinwallet-gui type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/bitcoinwalletgui/questions.yaml b/charts/dev/bitcoinwalletgui/questions.yaml new file mode 100644 index 00000000000..0c2159dad9c --- /dev/null +++ b/charts/dev/bitcoinwalletgui/questions.yaml @@ -0,0 +1,368 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: VNC_PW + label: 'VNC_PW' + description: "Container Variable VNCPW" + schema: + type: string + default: "vncpassword" + - variable: VNC_RESOLUTION + label: 'VNC_RESOLUTION' + description: "Container Variable VNCRESOLUTION" + schema: + type: string + default: "1280x1024" + - variable: VNC_VIEW_ONLY + label: 'VNC_VIEW_ONLY' + description: "Container Variable VNCVIEWONLY" + schema: + type: string + default: "false" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 6901 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: HTTP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 6901 + + - variable: vncport + label: 'vncport service' + description: "Container Port 5901" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: vncport + label: "vncport Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 5905 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 5901 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: bitcoinblockchainpath + label: "bitcoinblockchainpath Storage" + description: "Container Path headless.zcash" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/bitcoinwalletgui/templates/common.yaml b/charts/dev/bitcoinwalletgui/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/bitcoinwalletgui/templates/common.yaml +++ b/charts/dev/bitcoinwalletgui/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/blender-desktop-g3/Chart.yaml b/charts/dev/blender-desktop-g3/Chart.yaml index 91efcda855b..a4ab0e07d16 100644 --- a/charts/dev/blender-desktop-g3/Chart.yaml +++ b/charts/dev/blender-desktop-g3/Chart.yaml @@ -1,21 +1,20 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Productivity - Tools-Utilities - MediaApp-Photos - MediaApp-Other - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "DESCRIPTION\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/blender-desktop-g3 -icon: https://truecharts.org/_static/img/appicons/blender-desktop-g3.png +icon: https://truecharts.org/img/chart-icons/blender-desktop-g3.png keywords: - blender-desktop-g3 - Productivity @@ -32,4 +31,4 @@ sources: - https://github.com/accetto/headless-drawing-g3/ - https://hub.docker.com/r/accetto/ubuntu-vnc-xfce-blender-g3 type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/blender-desktop-g3/questions.yaml b/charts/dev/blender-desktop-g3/questions.yaml new file mode 100644 index 00000000000..bbd95b1f2e9 --- /dev/null +++ b/charts/dev/blender-desktop-g3/questions.yaml @@ -0,0 +1,370 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: VNC_PW + label: 'VNC_PW' + description: "The VNCnoVNC password." + schema: + type: string + default: "unraid" + - variable: VNC_RESOLUTION + label: 'VNC_RESOLUTION' + description: "The VNCnoVNC resolution." + schema: + type: string + default: "1360x768" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 6901 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: HTTP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 6901 + + - variable: webuivnc + label: 'webuivnc service' + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: webuivnc + label: "webuivnc Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 5901 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 5901 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: internalshare + label: "internalshare Storage" + description: "Path to a share from your host to be able to work within the container." + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: storageprojects + label: "storageprojects Storage" + description: "Used to share projects with the host." + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/blender-desktop-g3/templates/common.yaml b/charts/dev/blender-desktop-g3/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/blender-desktop-g3/templates/common.yaml +++ b/charts/dev/blender-desktop-g3/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/blender/Chart.yaml b/charts/dev/blender/Chart.yaml index fda300fb0da..718c311b63c 100644 --- a/charts/dev/blender/Chart.yaml +++ b/charts/dev/blender/Chart.yaml @@ -1,14 +1,13 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Other - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: Blender(https://www.blender.org/) is a free and open-source 3D computer graphics software toolset used for creating animated films, visual effects, art, @@ -16,7 +15,7 @@ description: Blender(https://www.blender.org/) is a free and open-source 3D comp and computer games. **This image does not support GPU rendering out of the box only accelerated workspace experience** home: https://github.com/truecharts/apps/tree/master/charts/stable/blender -icon: https://truecharts.org/_static/img/appicons/blender.png +icon: https://truecharts.org/img/chart-icons/blender.png keywords: - blender - Other @@ -31,4 +30,4 @@ sources: - https://github.com/orgs/linuxserver/packages/container/package/blender - https://github.com/linuxserver/docker-blender#readme type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/blender/questions.yaml b/charts/dev/blender/questions.yaml new file mode 100644 index 00000000000..b5bba1e1a95 --- /dev/null +++ b/charts/dev/blender/questions.yaml @@ -0,0 +1,308 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: SUBFOLDER + label: 'SUBFOLDER' + description: "Specify a subfolder to use with reverse proxies, IE `subfolder`" + schema: + type: string + default: "" + - variable: KEYBOARD + label: 'KEYBOARD' + description: "See the keyboard layouts section for more information and options." + schema: + type: string + default: "" + - variable: UMASK + label: 'UMASK' + description: "Container Variable UMASK" + schema: + type: string + default: "" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 3000 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 3000 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: config + label: "config Storage" + description: "Users home directory in the container, stores local files and settings" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/blender/templates/common.yaml b/charts/dev/blender/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/blender/templates/common.yaml +++ b/charts/dev/blender/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/breitbandmessung-de/Chart.yaml b/charts/dev/breitbandmessung-de/Chart.yaml index f44f940670a..2cad5c3e3b0 100644 --- a/charts/dev/breitbandmessung-de/Chart.yaml +++ b/charts/dev/breitbandmessung-de/Chart.yaml @@ -1,23 +1,22 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - HomeAutomation - Productivity - Tools-Utilities - Other - Network-Management - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "A script to enable customers of lazy ISPs to perform measurement campaigns\ \ of the connection speed as described here in an automated way.\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/breitbandmessung-de -icon: https://truecharts.org/_static/img/appicons/breitbandmessung-de.png +icon: https://truecharts.org/img/chart-icons/breitbandmessung-de.png keywords: - breitbandmessung-de - HomeAutomation @@ -35,4 +34,4 @@ sources: - https://github.com/shneezin/breitbandmessung-node - https://hub.docker.com/r/shneezin/breitbandmessung-node type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/breitbandmessung-de/questions.yaml b/charts/dev/breitbandmessung-de/questions.yaml new file mode 100644 index 00000000000..ea133e90952 --- /dev/null +++ b/charts/dev/breitbandmessung-de/questions.yaml @@ -0,0 +1,197 @@ +# Include{groups} +portals: {} +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: false +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: config + label: "config Storage" + description: "Container Path usrsrcappconfig" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: messurementlogs + label: "messurementlogs Storage" + description: "Container Path export" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/breitbandmessung-de/templates/common.yaml b/charts/dev/breitbandmessung-de/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/breitbandmessung-de/templates/common.yaml +++ b/charts/dev/breitbandmessung-de/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/breitbandmessung-de/values.yaml b/charts/dev/breitbandmessung-de/values.yaml index 37c64c3ec17..6453aa74a71 100644 --- a/charts/dev/breitbandmessung-de/values.yaml +++ b/charts/dev/breitbandmessung-de/values.yaml @@ -13,6 +13,13 @@ persistence: podSecurityContext: runAsGroup: 0 runAsUser: 0 +probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false securityContext: readOnlyRootFilesystem: false runAsNonRoot: false diff --git a/charts/dev/btdex/Chart.yaml b/charts/dev/btdex/Chart.yaml index b87ab079808..7cdc6bc754e 100644 --- a/charts/dev/btdex/Chart.yaml +++ b/charts/dev/btdex/Chart.yaml @@ -1,19 +1,18 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Crypto - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: This is a Docker container for BTDEX based on jlesage/docker-baseimage-gui Docker image. home: https://github.com/truecharts/apps/tree/master/charts/stable/btdex -icon: https://truecharts.org/_static/img/appicons/btdex.png +icon: https://truecharts.org/img/chart-icons/btdex.png keywords: - btdex - Crypto @@ -27,4 +26,4 @@ sources: - https://btdex.trade/ - https://hub.docker.com/r/furritos/docker-btdex:latest type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/btdex/questions.yaml b/charts/dev/btdex/questions.yaml new file mode 100644 index 00000000000..322faa7137c --- /dev/null +++ b/charts/dev/btdex/questions.yaml @@ -0,0 +1,299 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: DISPLAY_WIDTH + label: 'DISPLAY_WIDTH' + schema: + type: string + default: "1440|1680" + - variable: DISPLAY_HEIGHT + label: 'DISPLAY_HEIGHT' + schema: + type: string + default: "800|900|1050" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 5800 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8080 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: btdex + label: "btdex Storage" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/btdex/templates/common.yaml b/charts/dev/btdex/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/btdex/templates/common.yaml +++ b/charts/dev/btdex/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/bwapp/Chart.yaml b/charts/dev/bwapp/Chart.yaml index 048d208f445..59197da62b0 100644 --- a/charts/dev/bwapp/Chart.yaml +++ b/charts/dev/bwapp/Chart.yaml @@ -1,20 +1,19 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - Tools-Utilities - Other - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "bWAPP, or a buggy web application, is a free and open source deliberately\ \ insecure web application.\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/bwapp -icon: https://truecharts.org/_static/img/appicons/bwapp.png +icon: https://truecharts.org/img/chart-icons/bwapp.png keywords: - bwapp - Tools-Utilities @@ -29,4 +28,4 @@ sources: - https://sourceforge.net/projects/bwapp/ - https://hub.docker.com/r/raesene/bwapp/ type: application -version: 0.0.5 +version: 0.0.10 diff --git a/charts/dev/bwapp/questions.yaml b/charts/dev/bwapp/questions.yaml new file mode 100644 index 00000000000..1f3a55cb4c6 --- /dev/null +++ b/charts/dev/bwapp/questions.yaml @@ -0,0 +1,169 @@ +# Include{groups} +portals: {} +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: false +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + +# Include{persistenceList} + + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/bwapp/templates/common.yaml b/charts/dev/bwapp/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/bwapp/templates/common.yaml +++ b/charts/dev/bwapp/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/bwapp/values.yaml b/charts/dev/bwapp/values.yaml index 6c9c03e9c68..2ce65972c5a 100644 --- a/charts/dev/bwapp/values.yaml +++ b/charts/dev/bwapp/values.yaml @@ -7,6 +7,13 @@ persistence: {} podSecurityContext: runAsGroup: 0 runAsUser: 0 +probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false securityContext: readOnlyRootFilesystem: false runAsNonRoot: false diff --git a/charts/dev/atd/.helmignore b/charts/dev/cadquery-jupyter/.helmignore similarity index 100% rename from charts/dev/atd/.helmignore rename to charts/dev/cadquery-jupyter/.helmignore diff --git a/charts/dev/cadquery-jupyter/Chart.yaml b/charts/dev/cadquery-jupyter/Chart.yaml new file mode 100644 index 00000000000..e81bff1645d --- /dev/null +++ b/charts/dev/cadquery-jupyter/Chart.yaml @@ -0,0 +1,39 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - Productivity + - Tools-Utilities + - Other + - Network-Web + - Network-Other +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "CadQuery is an intuitive, easy-to-use Python module for building parametric\ + \ 3D CAD models. Using CadQuery, you can write short, simple scripts that produce\ + \ high quality CAD models. It is easy to make many different objects using a single\ + \ script that can be customized.\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/cadquery-jupyter +icon: https://truecharts.org/img/chart-icons/cadquery-jupyter.png +keywords: +- cadquery-jupyter +- Productivity +- Tools-Utilities +- Other +- Network-Web +- Network-Other +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: cadquery-jupyter +sources: +- https://github.com/bernhard-42/jupyter-cadquery +- https://hub.docker.com/r/cadquery/cadquery-server +type: application +version: 0.0.10 diff --git a/charts/dev/cadquery-jupyter/icon.png b/charts/dev/cadquery-jupyter/icon.png new file mode 100644 index 00000000000..38118edf1dc Binary files /dev/null and b/charts/dev/cadquery-jupyter/icon.png differ diff --git a/charts/dev/cadquery-jupyter/questions.yaml b/charts/dev/cadquery-jupyter/questions.yaml new file mode 100644 index 00000000000..b794d5bbd36 --- /dev/null +++ b/charts/dev/cadquery-jupyter/questions.yaml @@ -0,0 +1,282 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8888 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8888 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: workdir + label: "workdir Storage" + description: "Container Path homecp" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/cadquery-jupyter/readme.md b/charts/dev/cadquery-jupyter/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/cadquery-jupyter/templates/common.yaml b/charts/dev/cadquery-jupyter/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/cadquery-jupyter/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/cadquery-jupyter/values.yaml b/charts/dev/cadquery-jupyter/values.yaml new file mode 100644 index 00000000000..1087149f43e --- /dev/null +++ b/charts/dev/cadquery-jupyter/values.yaml @@ -0,0 +1,24 @@ +env: {} +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/cadquery-jupyter + tag: v3.1.0rc4 +persistence: + workdir: + enabled: true + mountPath: /home/cq +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 8888 + protocol: TCP + targetPort: 8888 diff --git a/charts/dev/cadquery-server/.helmignore b/charts/dev/cadquery-server/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/cadquery-server/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/cadquery-server/Chart.yaml b/charts/dev/cadquery-server/Chart.yaml new file mode 100644 index 00000000000..87c93000ec3 --- /dev/null +++ b/charts/dev/cadquery-server/Chart.yaml @@ -0,0 +1,37 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - Productivity + - Tools-Utilities + - Other + - Network-Other +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "CadQuery is an intuitive, easy-to-use Python module for building parametric\ + \ 3D CAD models. Using CadQuery, you can write short, simple scripts that produce\ + \ high quality CAD models. It is easy to make many different objects using a single\ + \ script that can be customized.\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/cadquery-server +icon: https://truecharts.org/img/chart-icons/cadquery-server.png +keywords: +- cadquery-server +- Productivity +- Tools-Utilities +- Other +- Network-Other +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: cadquery-server +sources: +- https://github.com/roipoussiere/cadquery +- https://hub.docker.com/r/cadquery/cadquery-server +type: application +version: 0.0.10 diff --git a/charts/dev/cadquery-server/icon.png b/charts/dev/cadquery-server/icon.png new file mode 100644 index 00000000000..38118edf1dc Binary files /dev/null and b/charts/dev/cadquery-server/icon.png differ diff --git a/charts/dev/cadquery-server/questions.yaml b/charts/dev/cadquery-server/questions.yaml new file mode 100644 index 00000000000..1f3a55cb4c6 --- /dev/null +++ b/charts/dev/cadquery-server/questions.yaml @@ -0,0 +1,169 @@ +# Include{groups} +portals: {} +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: false +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + +# Include{persistenceList} + + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/cadquery-server/readme.md b/charts/dev/cadquery-server/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/cadquery-server/templates/common.yaml b/charts/dev/cadquery-server/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/cadquery-server/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/cadquery-server/values.yaml b/charts/dev/cadquery-server/values.yaml new file mode 100644 index 00000000000..c3bbbaff8bf --- /dev/null +++ b/charts/dev/cadquery-server/values.yaml @@ -0,0 +1,25 @@ +env: {} +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/cadquery-server + tag: latest +persistence: {} +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: false + ports: + main: + enabled: false diff --git a/charts/dev/chivalry-medievalwarfare/.helmignore b/charts/dev/chivalry-medievalwarfare/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/chivalry-medievalwarfare/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/chivalry-medievalwarfare/Chart.yaml b/charts/dev/chivalry-medievalwarfare/Chart.yaml new file mode 100644 index 00000000000..f30aa7c05fb --- /dev/null +++ b/charts/dev/chivalry-medievalwarfare/Chart.yaml @@ -0,0 +1,29 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - GameServers +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "This Docker will download and install SteamCMD. It will also install\ + \ Chivalry: Medieval Warfare and run it.\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/chivalry-medievalwarfare +icon: https://truecharts.org/img/chart-icons/chivalry-medievalwarfare.png +keywords: +- chivalry-medievalwarfare +- GameServers +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: chivalry-medievalwarfare +sources: +- https://www.steampowered.com/ +- https://hub.docker.com/r/ich777/steamcmd/ +type: application +version: 0.0.10 diff --git a/charts/dev/chivalry-medievalwarfare/icon.png b/charts/dev/chivalry-medievalwarfare/icon.png new file mode 100644 index 00000000000..bad1c8adc52 Binary files /dev/null and b/charts/dev/chivalry-medievalwarfare/icon.png differ diff --git a/charts/dev/chivalry-medievalwarfare/questions.yaml b/charts/dev/chivalry-medievalwarfare/questions.yaml new file mode 100644 index 00000000000..bbb0cdce45d --- /dev/null +++ b/charts/dev/chivalry-medievalwarfare/questions.yaml @@ -0,0 +1,467 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_ID + label: 'GAME_ID' + description: "The GAMEID that the container download at startup.(httpsdeveloper.valvesoftware.comwikiDedicatedServersList)" + schema: + type: string + default: "220070" + - variable: MAP + label: 'MAP' + description: "Map name (eg aocffa-arena3p, aocffa-hillsidep, aocffa-battlegroundsv3p)" + schema: + type: string + default: "aocffa-moor_p" + - variable: ADMIN_PWD + label: 'ADMIN_PWD' + description: "Server Admin Password (cant be empty)" + schema: + type: string + default: "adminDocker" + - variable: GAME_PARAMS + label: 'GAME_PARAMS' + description: "Enter your game parameters seperated with ? and start with a ? (dont put spaces in between eg ?port=7000?queryport=7010)" + schema: + type: string + default: "?port=7000?queryport=7010" + - variable: GAME_PARAMS_EXTRA + label: 'GAME_PARAMS_EXTRA' + description: "Type in your Extra Game Parameters seperated with a space and - (eg -seekfreeloadingserver)" + schema: + type: string + default: "-seekfreeloadingserver" + - variable: USERNAME + label: 'USERNAME' + description: "Your Steam username goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: VALIDATE + label: 'VALIDATE' + description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." + schema: + type: string + default: "" + - variable: PASSWRD + label: 'PASSWRD' + description: "Your Steam password goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 7000 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 7000 + + - variable: gamequeryport + label: 'gamequeryport service' + description: "UDP Gamequeryport (if you need another port, please delete this entry and create a new UDP Port with the required port number, also dont forget to change the Ports in your Game Parameters Variable)" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: gamequeryport + label: "gamequeryport Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 7010 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 7010 + - variable: steamqueryport + label: 'steamqueryport service' + description: "UDP Steamqueryport (if you need another port, please delete this entry and create a new UDP Port with the required port number, also dont forget to change the Ports in your Game Parameters Variable)" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: steamqueryport + label: "steamqueryport Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27015 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27015 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: steamcmd + label: "steamcmd Storage" + description: "Container Path serverdatasteamcmd" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: serverfiles + label: "serverfiles Storage" + description: "Container Path serverdataserverfiles" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/chivalry-medievalwarfare/readme.md b/charts/dev/chivalry-medievalwarfare/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/chivalry-medievalwarfare/templates/common.yaml b/charts/dev/chivalry-medievalwarfare/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/chivalry-medievalwarfare/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/chivalry-medievalwarfare/values.yaml b/charts/dev/chivalry-medievalwarfare/values.yaml new file mode 100644 index 00000000000..8c5138c7dcf --- /dev/null +++ b/charts/dev/chivalry-medievalwarfare/values.yaml @@ -0,0 +1,58 @@ +env: + ADMIN_PWD: adminDocker + GAME_ID: '220070' + GAME_PARAMS: ?port=7000?queryport=7010 + GAME_PARAMS_EXTRA: -seekfreeloadingserver + MAP: aocffa-moor_p + PASSWRD: '' + USERNAME: '' + VALIDATE: '' +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/chivalry-medievalwarfare + tag: latest +persistence: + serverfiles: + enabled: true + mountPath: /serverdata/serverfiles + steamcmd: + enabled: true + mountPath: /serverdata/steamcmd +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + gamequeryport: + enabled: true + ports: + gamequeryport: + enabled: true + port: 7010 + protocol: UDP + targetPort: 7010 + main: + enabled: true + ports: + main: + enabled: true + port: 7000 + protocol: UDP + targetPort: 7000 + steamqueryport: + enabled: true + ports: + steamqueryport: + enabled: true + port: 27015 + protocol: UDP + targetPort: 27015 diff --git a/charts/dev/chowdown/.helmignore b/charts/dev/chowdown/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/chowdown/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/chowdown/Chart.yaml b/charts/dev/chowdown/Chart.yaml new file mode 100644 index 00000000000..a4eba85b9fd --- /dev/null +++ b/charts/dev/chowdown/Chart.yaml @@ -0,0 +1,27 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - Other +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: Simple recipes in Markdown format. +home: https://github.com/truecharts/apps/tree/master/charts/stable/chowdown +icon: https://truecharts.org/img/chart-icons/chowdown.png +keywords: +- chowdown +- Other +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: chowdown +sources: +- https://hub.docker.com/r/gregyankovoy/chowdown/Dockerfile/ +type: application +version: 0.0.10 diff --git a/charts/dev/chowdown/icon.png b/charts/dev/chowdown/icon.png new file mode 100644 index 00000000000..4e9191da3de Binary files /dev/null and b/charts/dev/chowdown/icon.png differ diff --git a/charts/dev/chowdown/questions.yaml b/charts/dev/chowdown/questions.yaml new file mode 100644 index 00000000000..3da54e5a0b5 --- /dev/null +++ b/charts/dev/chowdown/questions.yaml @@ -0,0 +1,281 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 4000 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 4000 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: config + label: "config Storage" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/chowdown/readme.md b/charts/dev/chowdown/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/chowdown/templates/common.yaml b/charts/dev/chowdown/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/chowdown/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/chowdown/values.yaml b/charts/dev/chowdown/values.yaml new file mode 100644 index 00000000000..2e194177047 --- /dev/null +++ b/charts/dev/chowdown/values.yaml @@ -0,0 +1,24 @@ +env: {} +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/chowdown + tag: latest +persistence: + config: + enabled: true + mountPath: /config +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 4000 + protocol: TCP + targetPort: 4000 diff --git a/charts/dev/chromium-desktop-g3/.helmignore b/charts/dev/chromium-desktop-g3/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/chromium-desktop-g3/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/chromium-desktop-g3/Chart.yaml b/charts/dev/chromium-desktop-g3/Chart.yaml new file mode 100644 index 00000000000..28ac43be546 --- /dev/null +++ b/charts/dev/chromium-desktop-g3/Chart.yaml @@ -0,0 +1,30 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - Tools-Utilities + - Network-Web +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "DESCRIPTION\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/chromium-desktop-g3 +icon: https://truecharts.org/img/chart-icons/chromium-desktop-g3.png +keywords: +- chromium-desktop-g3 +- Tools-Utilities +- Network-Web +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: chromium-desktop-g3 +sources: +- https://github.com/accetto/headless-drawing-g3/ +- https://hub.docker.com/r/accetto/ubuntu-vnc-xfce-chromium-g3 +type: application +version: 0.0.10 diff --git a/charts/dev/chromium-desktop-g3/icon.png b/charts/dev/chromium-desktop-g3/icon.png new file mode 100644 index 00000000000..a30e9f7d44d Binary files /dev/null and b/charts/dev/chromium-desktop-g3/icon.png differ diff --git a/charts/dev/chromium-desktop-g3/questions.yaml b/charts/dev/chromium-desktop-g3/questions.yaml new file mode 100644 index 00000000000..c9627844be4 --- /dev/null +++ b/charts/dev/chromium-desktop-g3/questions.yaml @@ -0,0 +1,361 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: VNC_PW + label: 'VNC_PW' + description: "The VNCnoVNC password." + schema: + type: string + default: "unraid" + - variable: VNC_RESOLUTION + label: 'VNC_RESOLUTION' + description: "The VNCnoVNC resolution." + schema: + type: string + default: "1360x768" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 6901 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: HTTP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 6901 + + - variable: webuivnc + label: 'webuivnc service' + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: webuivnc + label: "webuivnc Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 5901 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 5901 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: internalshare + label: "internalshare Storage" + description: "Path to a share from your host to be able to work within the container." + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/chromium-desktop-g3/readme.md b/charts/dev/chromium-desktop-g3/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/chromium-desktop-g3/templates/common.yaml b/charts/dev/chromium-desktop-g3/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/chromium-desktop-g3/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/chromium-desktop-g3/values.yaml b/charts/dev/chromium-desktop-g3/values.yaml new file mode 100644 index 00000000000..65e414959d8 --- /dev/null +++ b/charts/dev/chromium-desktop-g3/values.yaml @@ -0,0 +1,34 @@ +env: + VNC_PW: unraid + VNC_RESOLUTION: 1360x768 +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/chromium-desktop-g3 + tag: latest +persistence: + internalshare: + enabled: true + mountPath: /UNRAID_SHARE +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 6901 + protocol: HTTP + targetPort: 6901 + webuivnc: + enabled: true + ports: + webuivnc: + enabled: true + port: 5901 + protocol: TCP + targetPort: 5901 diff --git a/charts/dev/chromium/.helmignore b/charts/dev/chromium/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/chromium/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/chromium/Chart.yaml b/charts/dev/chromium/Chart.yaml new file mode 100644 index 00000000000..af83d675e35 --- /dev/null +++ b/charts/dev/chromium/Chart.yaml @@ -0,0 +1,31 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - Productivity + - Tools-Utilities +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: Chromium is a free and open-source software project developed by the + Google-sponsored Chromium project. +home: https://github.com/truecharts/apps/tree/master/charts/stable/chromium +icon: https://truecharts.org/img/chart-icons/chromium.png +keywords: +- chromium +- Productivity +- Tools-Utilities +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: chromium +sources: +- https://www.google.com/chrome/ +- https://hub.docker.com/r/ich777/chrome/ +type: application +version: 0.0.10 diff --git a/charts/dev/chromium/icon.png b/charts/dev/chromium/icon.png new file mode 100644 index 00000000000..45f0559bc3e Binary files /dev/null and b/charts/dev/chromium/icon.png differ diff --git a/charts/dev/chromium/questions.yaml b/charts/dev/chromium/questions.yaml new file mode 100644 index 00000000000..c14121518a8 --- /dev/null +++ b/charts/dev/chromium/questions.yaml @@ -0,0 +1,314 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: EXTRA_PARAMETERS + label: 'EXTRA_PARAMETERS' + description: "If needed enter extra startup parameters here otherwise leave empty." + schema: + type: string + default: "" + - variable: CUSTOM_RES_W + label: 'CUSTOM_RES_W' + description: "Minimum screen width 1024 pixels" + schema: + type: string + default: "1280" + - variable: CUSTOM_RES_H + label: 'CUSTOM_RES_H' + description: "Minimum screen hight 768 pixels" + schema: + type: string + default: "768" + - variable: UMASK + label: 'UMASK' + description: "Container Variable UMASK" + schema: + type: string + default: "000" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8080 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8080 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: datadir + label: "datadir Storage" + description: "Data Path" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/chromium/readme.md b/charts/dev/chromium/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/chromium/templates/common.yaml b/charts/dev/chromium/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/chromium/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/chromium/values.yaml b/charts/dev/chromium/values.yaml new file mode 100644 index 00000000000..434b53d0ba0 --- /dev/null +++ b/charts/dev/chromium/values.yaml @@ -0,0 +1,28 @@ +env: + CUSTOM_RES_H: '768' + CUSTOM_RES_W: '1280' + EXTRA_PARAMETERS: '' + UMASK: '000' +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/chromium + tag: latest +persistence: + datadir: + enabled: true + mountPath: /chrome +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 8080 + protocol: TCP + targetPort: 8080 diff --git a/charts/dev/chronograf/.helmignore b/charts/dev/chronograf/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/chronograf/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/chronograf/Chart.yaml b/charts/dev/chronograf/Chart.yaml new file mode 100644 index 00000000000..a753eaef067 --- /dev/null +++ b/charts/dev/chronograf/Chart.yaml @@ -0,0 +1,30 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - Tools-System +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "Chronograf is InfluxData\u2019s open source web application. Use Chronograf\ + \ with the other components of the TICK stack to visualize your monitoring data\ + \ and easily create alerting and automation rules." +home: https://github.com/truecharts/apps/tree/master/charts/stable/chronograf +icon: https://truecharts.org/img/chart-icons/chronograf.png +keywords: +- chronograf +- Tools-System +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: chronograf +sources: +- https://www.influxdata.com/time-series-platform/chronograf/ +- https://hub.docker.com/_/chronograf/ +type: application +version: 0.0.10 diff --git a/charts/dev/chronograf/icon.png b/charts/dev/chronograf/icon.png new file mode 100644 index 00000000000..ceb5398ca0d Binary files /dev/null and b/charts/dev/chronograf/icon.png differ diff --git a/charts/dev/chronograf/questions.yaml b/charts/dev/chronograf/questions.yaml new file mode 100644 index 00000000000..cc5716611d0 --- /dev/null +++ b/charts/dev/chronograf/questions.yaml @@ -0,0 +1,281 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8888 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8888 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: chronograf + label: "chronograf Storage" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/chronograf/readme.md b/charts/dev/chronograf/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/chronograf/templates/common.yaml b/charts/dev/chronograf/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/chronograf/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/chronograf/values.yaml b/charts/dev/chronograf/values.yaml new file mode 100644 index 00000000000..3f967b6028f --- /dev/null +++ b/charts/dev/chronograf/values.yaml @@ -0,0 +1,24 @@ +env: {} +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/chronograf + tag: latest +persistence: + chronograf: + enabled: true + mountPath: /var/lib/chronograf +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 8888 + protocol: TCP + targetPort: 8888 diff --git a/charts/dev/chronos/.helmignore b/charts/dev/chronos/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/chronos/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/chronos/Chart.yaml b/charts/dev/chronos/Chart.yaml new file mode 100644 index 00000000000..568164040c4 --- /dev/null +++ b/charts/dev/chronos/Chart.yaml @@ -0,0 +1,32 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - Tools-Utilities +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: 'Chronos is a small container to run and schedule Python 3.7 scripts. + You can create virtual enviroments, edit your scripts, install Pip dependencies, + view execution logs, and debug your scripts, all from the sleek web UI. + + ' +home: https://github.com/truecharts/apps/tree/master/charts/stable/chronos +icon: https://truecharts.org/img/chart-icons/chronos.png +keywords: +- chronos +- Tools-Utilities +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: chronos +sources: +- https://github.com/simse/chronos +- https://hub.docker.com/r/simsemand/chronos +type: application +version: 0.0.10 diff --git a/charts/dev/chronos/icon.png b/charts/dev/chronos/icon.png new file mode 100644 index 00000000000..7f933f97a05 Binary files /dev/null and b/charts/dev/chronos/icon.png differ diff --git a/charts/dev/chronos/questions.yaml b/charts/dev/chronos/questions.yaml new file mode 100644 index 00000000000..e3d42248076 --- /dev/null +++ b/charts/dev/chronos/questions.yaml @@ -0,0 +1,281 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 5000 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 5000 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: chronos + label: "chronos Storage" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/chronos/readme.md b/charts/dev/chronos/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/chronos/templates/common.yaml b/charts/dev/chronos/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/chronos/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/chronos/values.yaml b/charts/dev/chronos/values.yaml new file mode 100644 index 00000000000..3a9c5603daf --- /dev/null +++ b/charts/dev/chronos/values.yaml @@ -0,0 +1,24 @@ +env: {} +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/chronos + tag: latest +persistence: + chronos: + enabled: true + mountPath: /chronos +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 5000 + protocol: TCP + targetPort: 5000 diff --git a/charts/dev/ciao/.helmignore b/charts/dev/ciao/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/ciao/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/ciao/Chart.yaml b/charts/dev/ciao/Chart.yaml new file mode 100644 index 00000000000..af2d7949343 --- /dev/null +++ b/charts/dev/ciao/Chart.yaml @@ -0,0 +1,34 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - Network-Other + - Productivity + - Tools-System +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "ciao checks HTTP(S) URL endpoints for a HTTP status code (or errors\ + \ on the lower TCP stack) and sends a notification on status change via E-Mail or\ + \ Webhooks.\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/ciao +icon: https://truecharts.org/img/chart-icons/ciao.png +keywords: +- ciao +- Network-Other +- Productivity +- Tools-System +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: ciao +sources: +- https://brotandgames.com/ciao/ +- https://hub.docker.com/r/brotandgames/ciao +type: application +version: 0.0.10 diff --git a/charts/dev/ciao/icon.png b/charts/dev/ciao/icon.png new file mode 100644 index 00000000000..33ad74b64fb Binary files /dev/null and b/charts/dev/ciao/icon.png differ diff --git a/charts/dev/ciao/questions.yaml b/charts/dev/ciao/questions.yaml new file mode 100644 index 00000000000..bc67f48010d --- /dev/null +++ b/charts/dev/ciao/questions.yaml @@ -0,0 +1,350 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: SECRET_KEY_BASE + label: 'SECRET_KEY_BASE' + description: "Container Variable SECRETKEYBASE" + schema: + type: string + default: "sensitive_secret_key_base" + - variable: SMTP_ADDRESS + label: 'SMTP_ADDRESS' + description: "Container Variable SMTPADDRESS" + schema: + type: string + default: "smtp.yourhost.com" + - variable: SMTP_EMAIL_FROM + label: 'SMTP_EMAIL_FROM' + description: "Container Variable SMTPEMAILFROM" + schema: + type: string + default: "ciao@yourhost.com" + - variable: SMTP_EMAIL_TO + label: 'SMTP_EMAIL_TO' + description: "Container Variable SMTPEMAILTO" + schema: + type: string + default: "you@yourhost.com" + - variable: SMTP_PORT + label: 'SMTP_PORT' + description: "Container Variable SMTPPORT" + schema: + type: string + default: "587" + - variable: SMTP_DOMAIN + label: 'SMTP_DOMAIN' + description: "Container Variable SMTPDOMAIN" + schema: + type: string + default: "smtp.yourhost.com" + - variable: SMTP_AUTHENTICATION + label: 'SMTP_AUTHENTICATION' + description: "Container Variable SMTPAUTHENTICATION" + schema: + type: string + default: "plain" + - variable: SMTP_ENABLE_STARTTLS_AUTO + label: 'SMTP_ENABLE_STARTTLS_AUTO' + description: "Container Variable SMTPENABLESTARTTLSAUTO" + schema: + type: string + default: "true" + - variable: SMTP_USERNAME + label: 'SMTP_USERNAME' + description: "Container Variable SMTPUSERNAME" + schema: + type: string + default: "ciao" + - variable: SMTP_PASSWORD + label: 'SMTP_PASSWORD' + description: "Container Variable SMTPPASSWORD" + schema: + type: string + default: "sensitive_password" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8090 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 3000 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: databaselocation + label: "databaselocation Storage" + description: "Container Path appdbsqlite" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/ciao/readme.md b/charts/dev/ciao/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/ciao/templates/common.yaml b/charts/dev/ciao/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/ciao/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/ciao/values.yaml b/charts/dev/ciao/values.yaml new file mode 100644 index 00000000000..cd8eaa8562f --- /dev/null +++ b/charts/dev/ciao/values.yaml @@ -0,0 +1,34 @@ +env: + SECRET_KEY_BASE: sensitive_secret_key_base + SMTP_ADDRESS: smtp.yourhost.com + SMTP_AUTHENTICATION: plain + SMTP_DOMAIN: smtp.yourhost.com + SMTP_EMAIL_FROM: ciao@yourhost.com + SMTP_EMAIL_TO: you@yourhost.com + SMTP_ENABLE_STARTTLS_AUTO: 'true' + SMTP_PASSWORD: sensitive_password + SMTP_PORT: '587' + SMTP_USERNAME: ciao +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/ciao + tag: latest +persistence: + databaselocation: + enabled: true + mountPath: /app/db/sqlite +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 8090 + protocol: TCP + targetPort: 3000 diff --git a/charts/dev/citadel-forgedwithfire/.helmignore b/charts/dev/citadel-forgedwithfire/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/citadel-forgedwithfire/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/citadel-forgedwithfire/Chart.yaml b/charts/dev/citadel-forgedwithfire/Chart.yaml new file mode 100644 index 00000000000..b35bc4155ef --- /dev/null +++ b/charts/dev/citadel-forgedwithfire/Chart.yaml @@ -0,0 +1,29 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - GameServers +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "This Docker will download and install SteamCMD. It will also install\ + \ Citadel - Forged with Fire and run it.\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/citadel-forgedwithfire +icon: https://truecharts.org/img/chart-icons/citadel-forgedwithfire.png +keywords: +- citadel-forgedwithfire +- GameServers +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: citadel-forgedwithfire +sources: +- https://www.steampowered.com/ +- https://hub.docker.com/r/ich777/steamcmd/ +type: application +version: 0.0.10 diff --git a/charts/dev/citadel-forgedwithfire/icon.png b/charts/dev/citadel-forgedwithfire/icon.png new file mode 100644 index 00000000000..f7302a86a34 Binary files /dev/null and b/charts/dev/citadel-forgedwithfire/icon.png differ diff --git a/charts/dev/citadel-forgedwithfire/questions.yaml b/charts/dev/citadel-forgedwithfire/questions.yaml new file mode 100644 index 00000000000..aaf81b3ba73 --- /dev/null +++ b/charts/dev/citadel-forgedwithfire/questions.yaml @@ -0,0 +1,395 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_ID + label: 'GAME_ID' + description: "The GAMEID that the container download at startup.(httpsdeveloper.valvesoftware.comwikiDedicatedServersList)" + schema: + type: string + default: "489650 " + - variable: GAME_PARAMS + label: 'GAME_PARAMS' + description: "Enter your start up commands for the server (for example the server admin --admin [YOURsteamID64] e.g --admin 123456789123456789 without quotes)." + schema: + type: string + default: "" + - variable: USERNAME + label: 'USERNAME' + description: "Your Steam username goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: VALIDATE + label: 'VALIDATE' + description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." + schema: + type: string + default: "" + - variable: PASSWRD + label: 'PASSWRD' + description: "Your Steam password goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: UMASK + label: 'UMASK' + description: "Container Variable UMASK" + schema: + type: string + default: "000" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 7777 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 7777 + + - variable: queryport + label: 'queryport service' + description: "UDP Query Port (if you need another port, please delete this entry and create a new UDP Port with the corresponding port number, also dont forget to change the port in your game settings file)" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: queryport + label: "queryport Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27015 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27015 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: steamcmd + label: "steamcmd Storage" + description: "Container Path serverdatasteamcmd" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: serverfiles + label: "serverfiles Storage" + description: "Container Path serverdataserverfiles" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/citadel-forgedwithfire/readme.md b/charts/dev/citadel-forgedwithfire/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/citadel-forgedwithfire/templates/common.yaml b/charts/dev/citadel-forgedwithfire/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/citadel-forgedwithfire/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/citadel-forgedwithfire/values.yaml b/charts/dev/citadel-forgedwithfire/values.yaml new file mode 100644 index 00000000000..ce5a25ec3b2 --- /dev/null +++ b/charts/dev/citadel-forgedwithfire/values.yaml @@ -0,0 +1,48 @@ +env: + GAME_ID: '489650 ' + GAME_PARAMS: '' + PASSWRD: '' + UMASK: '000' + USERNAME: '' + VALIDATE: '' +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/citadel-forgedwithfire + tag: latest +persistence: + serverfiles: + enabled: true + mountPath: /serverdata/serverfiles + steamcmd: + enabled: true + mountPath: /serverdata/steamcmd +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 7777 + protocol: UDP + targetPort: 7777 + queryport: + enabled: true + ports: + queryport: + enabled: true + port: 27015 + protocol: UDP + targetPort: 27015 diff --git a/charts/dev/cleanarr/.helmignore b/charts/dev/cleanarr/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/cleanarr/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/cleanarr/Chart.yaml b/charts/dev/cleanarr/Chart.yaml new file mode 100644 index 00000000000..aa91e46f88f --- /dev/null +++ b/charts/dev/cleanarr/Chart.yaml @@ -0,0 +1,29 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - MediaApp-Other +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: A simple UI to help find and delete duplicate and sample files from your + Plex server. +home: https://github.com/truecharts/apps/tree/master/charts/stable/cleanarr +icon: https://truecharts.org/img/chart-icons/cleanarr.png +keywords: +- cleanarr +- MediaApp-Other +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: cleanarr +sources: +- https://github.com/se1exin/cleanarr +- https://hub.docker.com/r/selexin/cleanarr/ +type: application +version: 0.0.10 diff --git a/charts/dev/cleanarr/icon.png b/charts/dev/cleanarr/icon.png new file mode 100644 index 00000000000..0dd6407ac9a Binary files /dev/null and b/charts/dev/cleanarr/icon.png differ diff --git a/charts/dev/cleanarr/questions.yaml b/charts/dev/cleanarr/questions.yaml new file mode 100644 index 00000000000..836992962c6 --- /dev/null +++ b/charts/dev/cleanarr/questions.yaml @@ -0,0 +1,314 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: PLEX_BASE_URL + label: 'PLEX_BASE_URL' + description: "(required) Plex Server Address (e.g. http192.169.1.10032400)" + schema: + type: string + default: "" + - variable: PLEX_TOKEN + label: 'PLEX_TOKEN' + description: "(required) A valid Plex token for your Plex Server " + schema: + type: string + default: "" + - variable: LIBRARY_NAMES + label: 'LIBRARY_NAMES' + description: "(optional) Name(s) of your Plex Libraries to search. Separate multiple library names with " + schema: + type: string + default: "" + - variable: BYPASS_SSL_VERIFY + label: 'BYPASS_SSL_VERIFY' + description: "(optional) Disable SSL certificate verification. Use this if your Plex Server has " + schema: + type: string + default: "" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 5000 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 80 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: config + label: "config Storage" + description: "Container Path frontend" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/cleanarr/readme.md b/charts/dev/cleanarr/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/cleanarr/templates/common.yaml b/charts/dev/cleanarr/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/cleanarr/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/cleanarr/values.yaml b/charts/dev/cleanarr/values.yaml new file mode 100644 index 00000000000..1dda0754015 --- /dev/null +++ b/charts/dev/cleanarr/values.yaml @@ -0,0 +1,28 @@ +env: + BYPASS_SSL_VERIFY: '' + LIBRARY_NAMES: '' + PLEX_BASE_URL: '' + PLEX_TOKEN: '' +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/cleanarr + tag: latest +persistence: + config: + enabled: true + mountPath: /frontend +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 5000 + protocol: TCP + targetPort: 80 diff --git a/charts/dev/cloudbeaver/.helmignore b/charts/dev/cloudbeaver/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/cloudbeaver/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/cloudbeaver/Chart.yaml b/charts/dev/cloudbeaver/Chart.yaml new file mode 100644 index 00000000000..36ebef2aa5f --- /dev/null +++ b/charts/dev/cloudbeaver/Chart.yaml @@ -0,0 +1,30 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - Cloud + - Tools-Utilities +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "Cloud Database Manager (Official Docker Image)\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/cloudbeaver +icon: https://truecharts.org/img/chart-icons/cloudbeaver.png +keywords: +- cloudbeaver +- Cloud +- Tools-Utilities +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: cloudbeaver +sources: +- https://github.com/dbeaver/cloudbeaver +- https://hub.docker.com/r/dbeaver/cloudbeaver/ +type: application +version: 0.0.10 diff --git a/charts/dev/cloudbeaver/icon.png b/charts/dev/cloudbeaver/icon.png new file mode 100644 index 00000000000..d77f8638ef6 Binary files /dev/null and b/charts/dev/cloudbeaver/icon.png differ diff --git a/charts/dev/cloudbeaver/questions.yaml b/charts/dev/cloudbeaver/questions.yaml new file mode 100644 index 00000000000..7b5eee629a2 --- /dev/null +++ b/charts/dev/cloudbeaver/questions.yaml @@ -0,0 +1,282 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8978 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8978 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: appdata + label: "appdata Storage" + description: "Container Path optcloudbeaverworkspace" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/cloudbeaver/readme.md b/charts/dev/cloudbeaver/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/cloudbeaver/templates/common.yaml b/charts/dev/cloudbeaver/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/cloudbeaver/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/cloudbeaver/values.yaml b/charts/dev/cloudbeaver/values.yaml new file mode 100644 index 00000000000..1d09d7993da --- /dev/null +++ b/charts/dev/cloudbeaver/values.yaml @@ -0,0 +1,24 @@ +env: {} +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/cloudbeaver + tag: latest +persistence: + appdata: + enabled: true + mountPath: /opt/cloudbeaver/workspace +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 8978 + protocol: TCP + targetPort: 8978 diff --git a/charts/dev/cloudcommander/.helmignore b/charts/dev/cloudcommander/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/cloudcommander/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/cloudcommander/Chart.yaml b/charts/dev/cloudcommander/Chart.yaml new file mode 100644 index 00000000000..c5aed9b31b4 --- /dev/null +++ b/charts/dev/cloudcommander/Chart.yaml @@ -0,0 +1,30 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - Tools-Utilities +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: '[b]CloudCommander[/b] is a simple web file browser with a built in text + editor and archive compress/extract abilities.[br/] + + ' +home: https://github.com/truecharts/apps/tree/master/charts/stable/cloudcommander +icon: https://truecharts.org/img/chart-icons/cloudcommander.png +keywords: +- cloudcommander +- Tools-Utilities +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: cloudcommander +sources: +- https://hub.docker.com/r/coderaiser/cloudcmd/ +type: application +version: 0.0.10 diff --git a/charts/dev/cloudcommander/icon.png b/charts/dev/cloudcommander/icon.png new file mode 100644 index 00000000000..1ff901061e6 Binary files /dev/null and b/charts/dev/cloudcommander/icon.png differ diff --git a/charts/dev/cloudcommander/questions.yaml b/charts/dev/cloudcommander/questions.yaml new file mode 100644 index 00000000000..9a0c912278c --- /dev/null +++ b/charts/dev/cloudcommander/questions.yaml @@ -0,0 +1,305 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: HOME + label: 'HOME' + description: "Container Variable HOME" + schema: + type: string + default: "/root" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8765 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8000 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: mountpath + label: "mountpath Storage" + description: "Container Path UNRAID" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: appdata + label: "appdata Storage" + description: "Container Path root" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/cloudcommander/readme.md b/charts/dev/cloudcommander/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/cloudcommander/templates/common.yaml b/charts/dev/cloudcommander/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/cloudcommander/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/cloudcommander/values.yaml b/charts/dev/cloudcommander/values.yaml new file mode 100644 index 00000000000..5f81bc4aff1 --- /dev/null +++ b/charts/dev/cloudcommander/values.yaml @@ -0,0 +1,28 @@ +env: + HOME: /root +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/cloudcommander + tag: latest +persistence: + appdata: + enabled: true + mountPath: /root + mountpath: + enabled: true + mountPath: /UNRAID +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 8765 + protocol: TCP + targetPort: 8000 diff --git a/charts/dev/cloudreve/.helmignore b/charts/dev/cloudreve/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/cloudreve/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/cloudreve/Chart.yaml b/charts/dev/cloudreve/Chart.yaml new file mode 100644 index 00000000000..79cc5a54b83 --- /dev/null +++ b/charts/dev/cloudreve/Chart.yaml @@ -0,0 +1,31 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - Cloud + - Network-Web +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "Self-hosted file management and sharing system, supports multiple storage\ + \ providers\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/cloudreve +icon: https://truecharts.org/img/chart-icons/cloudreve.png +keywords: +- cloudreve +- Cloud +- Network-Web +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: cloudreve +sources: +- https://github.com/cloudreve/Cloudreve +- https://hub.docker.com/r/xavierniu/cloudreve +type: application +version: 0.0.10 diff --git a/charts/dev/cloudreve/icon.png b/charts/dev/cloudreve/icon.png new file mode 100644 index 00000000000..28020b06c9b Binary files /dev/null and b/charts/dev/cloudreve/icon.png differ diff --git a/charts/dev/cloudreve/questions.yaml b/charts/dev/cloudreve/questions.yaml new file mode 100644 index 00000000000..8241d141832 --- /dev/null +++ b/charts/dev/cloudreve/questions.yaml @@ -0,0 +1,309 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 5212 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 5212 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: uploadpath + label: "uploadpath Storage" + description: "Container Path cloudreveuploads" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: databasepath + label: "databasepath Storage" + description: "Container Path cloudrevedb" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: avatarpath + label: "avatarpath Storage" + description: "Container Path cloudreveavatar" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: config + label: "config Storage" + description: "Container Path cloudreveconfig" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/cloudreve/readme.md b/charts/dev/cloudreve/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/cloudreve/templates/common.yaml b/charts/dev/cloudreve/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/cloudreve/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/cloudreve/values.yaml b/charts/dev/cloudreve/values.yaml new file mode 100644 index 00000000000..7477331c3f8 --- /dev/null +++ b/charts/dev/cloudreve/values.yaml @@ -0,0 +1,33 @@ +env: {} +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/cloudreve + tag: latest +persistence: + avatarpath: + enabled: true + mountPath: /cloudreve/avatar + config: + enabled: true + mountPath: /cloudreve/config + databasepath: + enabled: true + mountPath: /cloudreve/db + uploadpath: + enabled: true + mountPath: /cloudreve/uploads +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 5212 + protocol: TCP + targetPort: 5212 diff --git a/charts/dev/colonysurvival/.helmignore b/charts/dev/colonysurvival/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/colonysurvival/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/colonysurvival/Chart.yaml b/charts/dev/colonysurvival/Chart.yaml new file mode 100644 index 00000000000..323b53ae97c --- /dev/null +++ b/charts/dev/colonysurvival/Chart.yaml @@ -0,0 +1,29 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - GameServers +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "This Docker will download and install SteamCMD. It will also install\ + \ Colony Survival and run it.\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/colonysurvival +icon: https://truecharts.org/img/chart-icons/colonysurvival.png +keywords: +- colonysurvival +- GameServers +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: colonysurvival +sources: +- https://www.steampowered.com/ +- https://hub.docker.com/r/ich777/steamcmd/ +type: application +version: 0.0.10 diff --git a/charts/dev/colonysurvival/icon.png b/charts/dev/colonysurvival/icon.png new file mode 100644 index 00000000000..44b4add84dd Binary files /dev/null and b/charts/dev/colonysurvival/icon.png differ diff --git a/charts/dev/colonysurvival/questions.yaml b/charts/dev/colonysurvival/questions.yaml new file mode 100644 index 00000000000..9d821623430 --- /dev/null +++ b/charts/dev/colonysurvival/questions.yaml @@ -0,0 +1,347 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_ID + label: 'GAME_ID' + description: "The GAMEID that the container download at startup.(httpsdeveloper.valvesoftware.comwikiDedicatedServersList)" + schema: + type: string + default: "748090" + - variable: GAME_PARAMS + label: 'GAME_PARAMS' + description: "Enter your start up commands for the server (If you want a password on your server please add for example server.password Docker without quotes. In this case Docker is the password. You can also enter multiple commands like server.maxplayers server.password Docker without quotes)" + schema: + type: string + default: "+server.gameport 27016" + - variable: USERNAME + label: 'USERNAME' + description: "Your Steam username goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: VALIDATE + label: 'VALIDATE' + description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." + schema: + type: string + default: "" + - variable: PASSWRD + label: 'PASSWRD' + description: "Your Steam password goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: SRV_NAME + label: 'SRV_NAME' + description: "Enter you preferred servername." + schema: + type: string + default: "Colony Survival Docker" + - variable: SRV_WORLDNAME + label: 'SRV_WORLDNAME' + description: "Enter your preferred world name." + schema: + type: string + default: "ColonySurvival" + - variable: SRV_NETTYPE + label: 'SRV_NETTYPE' + description: "Choose between LAN -allows connecting from localhost through the ingame button SteamLAN -steam networking, does not port forward or check authentication SteamOnline -steam networking, port forwards and checks authentication" + schema: + type: string + default: "SteamOnline" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27016 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27016 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: steamcmd + label: "steamcmd Storage" + description: "Container Path serverdatasteamcmd" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: serverfiles + label: "serverfiles Storage" + description: "Container Path serverdataserverfiles" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/colonysurvival/readme.md b/charts/dev/colonysurvival/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/colonysurvival/templates/common.yaml b/charts/dev/colonysurvival/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/colonysurvival/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/colonysurvival/values.yaml b/charts/dev/colonysurvival/values.yaml new file mode 100644 index 00000000000..2d81a910d64 --- /dev/null +++ b/charts/dev/colonysurvival/values.yaml @@ -0,0 +1,42 @@ +env: + GAME_ID: '748090' + GAME_PARAMS: +server.gameport 27016 + PASSWRD: '' + SRV_NAME: Colony Survival Docker + SRV_NETTYPE: SteamOnline + SRV_WORLDNAME: ColonySurvival + USERNAME: '' + VALIDATE: '' +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/colonysurvival + tag: latest +persistence: + serverfiles: + enabled: true + mountPath: /serverdata/serverfiles + steamcmd: + enabled: true + mountPath: /serverdata/steamcmd +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 27016 + protocol: UDP + targetPort: 27016 diff --git a/charts/dev/conanexiles/.helmignore b/charts/dev/conanexiles/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/conanexiles/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/conanexiles/Chart.yaml b/charts/dev/conanexiles/Chart.yaml new file mode 100644 index 00000000000..9fcab01de8e --- /dev/null +++ b/charts/dev/conanexiles/Chart.yaml @@ -0,0 +1,29 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - GameServers +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "This Docker will download and install SteamCMD. It will also install\ + \ Conan Exiles and run it.\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/conanexiles +icon: https://truecharts.org/img/chart-icons/conanexiles.png +keywords: +- conanexiles +- GameServers +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: conanexiles +sources: +- https://www.steampowered.com/ +- https://hub.docker.com/r/ich777/steamcmd/ +type: application +version: 0.0.10 diff --git a/charts/dev/conanexiles/icon.png b/charts/dev/conanexiles/icon.png new file mode 100644 index 00000000000..ad88712bb12 Binary files /dev/null and b/charts/dev/conanexiles/icon.png differ diff --git a/charts/dev/conanexiles/questions.yaml b/charts/dev/conanexiles/questions.yaml new file mode 100644 index 00000000000..b31860d988f --- /dev/null +++ b/charts/dev/conanexiles/questions.yaml @@ -0,0 +1,455 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_ID + label: 'GAME_ID' + description: "The GAMEID that the container download at startup.(httpsdeveloper.valvesoftware.comwikiDedicatedServersList)" + schema: + type: string + default: "443030" + - variable: GAME_PARAMS + label: 'GAME_PARAMS' + description: "Enter your start up commands for the server." + schema: + type: string + default: "" + - variable: USERNAME + label: 'USERNAME' + description: "Your Steam username goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: VALIDATE + label: 'VALIDATE' + description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." + schema: + type: string + default: "" + - variable: PASSWRD + label: 'PASSWRD' + description: "Your Steam password goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: WS_CONTENT + label: 'WS_CONTENT' + description: "Enter you Workshopcontent here, you can also enter multiple WS Content IDs sperated by SPACE" + schema: + type: string + default: "" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 7777 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 7777 + + - variable: gameport1 + label: 'gameport1 service' + description: "UDP Game Port 1 (if you need another port, please delete this entry and create a new UDP Port with the required port number, also dont forget to change your server settings)" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: gameport1 + label: "gameport1 Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 7778 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 7778 + - variable: steamport + label: 'steamport service' + description: "UDP Steam Port (if you need another port, please delete this entry and create a new UDP Port with the required port number, also dont forget to change your server settings)" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: steamport + label: "steamport Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27015 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27015 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: steamcmd + label: "steamcmd Storage" + description: "Container Path serverdatasteamcmd" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: serverfiles + label: "serverfiles Storage" + description: "Container Path serverdataserverfiles" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/conanexiles/readme.md b/charts/dev/conanexiles/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/conanexiles/templates/common.yaml b/charts/dev/conanexiles/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/conanexiles/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/conanexiles/values.yaml b/charts/dev/conanexiles/values.yaml new file mode 100644 index 00000000000..2e86c9b0923 --- /dev/null +++ b/charts/dev/conanexiles/values.yaml @@ -0,0 +1,56 @@ +env: + GAME_ID: '443030' + GAME_PARAMS: '' + PASSWRD: '' + USERNAME: '' + VALIDATE: '' + WS_CONTENT: '' +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/conanexiles + tag: latest +persistence: + serverfiles: + enabled: true + mountPath: /serverdata/serverfiles + steamcmd: + enabled: true + mountPath: /serverdata/steamcmd +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + gameport1: + enabled: true + ports: + gameport1: + enabled: true + port: 7778 + protocol: UDP + targetPort: 7778 + main: + enabled: true + ports: + main: + enabled: true + port: 7777 + protocol: UDP + targetPort: 7777 + steamport: + enabled: true + ports: + steamport: + enabled: true + port: 27015 + protocol: UDP + targetPort: 27015 diff --git a/charts/dev/conreq/.helmignore b/charts/dev/conreq/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/conreq/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/conreq/Chart.yaml b/charts/dev/conreq/Chart.yaml new file mode 100644 index 00000000000..ef66a5b12bb --- /dev/null +++ b/charts/dev/conreq/Chart.yaml @@ -0,0 +1,28 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - MediaApp-Other +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: Conreq, a Content Requesting platform. +home: https://github.com/truecharts/apps/tree/master/charts/stable/conreq +icon: https://truecharts.org/img/chart-icons/conreq.png +keywords: +- conreq +- MediaApp-Other +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: conreq +sources: +- https://hotio.dev/containers/conreq +- https://hub.docker.com/r/hotio/conreq +type: application +version: 0.0.10 diff --git a/charts/dev/conreq/icon.png b/charts/dev/conreq/icon.png new file mode 100644 index 00000000000..1b02803d82b Binary files /dev/null and b/charts/dev/conreq/icon.png differ diff --git a/charts/dev/conreq/questions.yaml b/charts/dev/conreq/questions.yaml new file mode 100644 index 00000000000..758b2a7608b --- /dev/null +++ b/charts/dev/conreq/questions.yaml @@ -0,0 +1,296 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: UMASK + label: 'UMASK' + description: "Container Variable UMASK" + schema: + type: string + default: "" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8000 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8000 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: config + label: "config Storage" + description: "Container Path config" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/conreq/readme.md b/charts/dev/conreq/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/conreq/templates/common.yaml b/charts/dev/conreq/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/conreq/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/conreq/values.yaml b/charts/dev/conreq/values.yaml new file mode 100644 index 00000000000..95c51f03f90 --- /dev/null +++ b/charts/dev/conreq/values.yaml @@ -0,0 +1,25 @@ +env: + UMASK: '' +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/conreq + tag: latest +persistence: + config: + enabled: true + mountPath: /config +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 8000 + protocol: TCP + targetPort: 8000 diff --git a/charts/dev/convos/.helmignore b/charts/dev/convos/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/convos/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/convos/Chart.yaml b/charts/dev/convos/Chart.yaml new file mode 100644 index 00000000000..b681477dfb4 --- /dev/null +++ b/charts/dev/convos/Chart.yaml @@ -0,0 +1,28 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - Network-Messenger +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: Convos is the simplest way to use IRC and it is always online +home: https://github.com/truecharts/apps/tree/master/charts/stable/convos +icon: https://truecharts.org/img/chart-icons/convos.png +keywords: +- convos +- Network-Messenger +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: convos +sources: +- https://convos.chat/ +- https://hub.docker.com/r/convos/convos/ +type: application +version: 0.0.10 diff --git a/charts/dev/convos/icon.png b/charts/dev/convos/icon.png new file mode 100644 index 00000000000..599f0186eb3 Binary files /dev/null and b/charts/dev/convos/icon.png differ diff --git a/charts/dev/convos/questions.yaml b/charts/dev/convos/questions.yaml new file mode 100644 index 00000000000..5d00d157533 --- /dev/null +++ b/charts/dev/convos/questions.yaml @@ -0,0 +1,282 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 3520 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 3000 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: data + label: "data Storage" + description: "Data Path" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/convos/readme.md b/charts/dev/convos/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/convos/templates/common.yaml b/charts/dev/convos/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/convos/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/convos/values.yaml b/charts/dev/convos/values.yaml new file mode 100644 index 00000000000..35ae5138919 --- /dev/null +++ b/charts/dev/convos/values.yaml @@ -0,0 +1,24 @@ +env: {} +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/convos + tag: vstable +persistence: + data: + enabled: true + mountPath: /data +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 3520 + protocol: TCP + targetPort: 3000 diff --git a/charts/dev/cops/.helmignore b/charts/dev/cops/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/cops/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/cops/Chart.yaml b/charts/dev/cops/Chart.yaml new file mode 100644 index 00000000000..900436bc980 --- /dev/null +++ b/charts/dev/cops/Chart.yaml @@ -0,0 +1,34 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - Cloud + - MediaApp-Books + - MediaServer-Books +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "Cops(http://blog.slucas.fr/en/oss/calibre-opds-php-server) by S\xE9\ + bastien Lucas, stands for Calibre OPDS (and HTML) Php Server.\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/cops +icon: https://truecharts.org/img/chart-icons/cops.png +keywords: +- cops +- Cloud +- MediaApp-Books +- MediaServer-Books +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: cops +sources: +- http://blog.slucas.fr/en/oss/calibre-opds-php-server +- https://github.com/orgs/linuxserver/packages/container/package/cops +- https://github.com/linuxserver/docker-cops#readme +type: application +version: 0.0.10 diff --git a/charts/dev/cops/icon.png b/charts/dev/cops/icon.png new file mode 100644 index 00000000000..c41a48b9398 Binary files /dev/null and b/charts/dev/cops/icon.png differ diff --git a/charts/dev/cops/questions.yaml b/charts/dev/cops/questions.yaml new file mode 100644 index 00000000000..512b36e86d3 --- /dev/null +++ b/charts/dev/cops/questions.yaml @@ -0,0 +1,305 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: UMASK + label: 'UMASK' + description: "Container Variable UMASK" + schema: + type: string + default: "" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 80 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 80 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: config + label: "config Storage" + description: "COPS Application Data." + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: pathbooks + label: "pathbooks Storage" + description: "Calibre metadata.db location." + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/cops/readme.md b/charts/dev/cops/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/cops/templates/common.yaml b/charts/dev/cops/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/cops/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/cops/values.yaml b/charts/dev/cops/values.yaml new file mode 100644 index 00000000000..84340ffe6a2 --- /dev/null +++ b/charts/dev/cops/values.yaml @@ -0,0 +1,28 @@ +env: + UMASK: '' +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/cops + tag: latest +persistence: + config: + enabled: true + mountPath: /config + pathbooks: + enabled: true + mountPath: /books +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 80 + protocol: TCP + targetPort: 80 diff --git a/charts/dev/core-keeper-dedicated-server/.helmignore b/charts/dev/core-keeper-dedicated-server/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/core-keeper-dedicated-server/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/core-keeper-dedicated-server/Chart.yaml b/charts/dev/core-keeper-dedicated-server/Chart.yaml new file mode 100644 index 00000000000..afbc7773205 --- /dev/null +++ b/charts/dev/core-keeper-dedicated-server/Chart.yaml @@ -0,0 +1,29 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - GameServers +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "Docker file for the new Core Keeper dedicated server running from SteamCMD.\ + \ (No account etc needed)\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/core-keeper-dedicated-server +icon: https://truecharts.org/img/chart-icons/core-keeper-dedicated-server.png +keywords: +- core-keeper-dedicated-server +- GameServers +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: core-keeper-dedicated-server +sources: +- https://github.com/escapingnetwork/core-keeper-dedicated/ +- https://hub.docker.com/r/escaping/core-keeper-dedicated +type: application +version: 0.0.10 diff --git a/charts/dev/core-keeper-dedicated-server/icon.png b/charts/dev/core-keeper-dedicated-server/icon.png new file mode 100644 index 00000000000..92318aad5c8 Binary files /dev/null and b/charts/dev/core-keeper-dedicated-server/icon.png differ diff --git a/charts/dev/core-keeper-dedicated-server/questions.yaml b/charts/dev/core-keeper-dedicated-server/questions.yaml new file mode 100644 index 00000000000..4dd9d785829 --- /dev/null +++ b/charts/dev/core-keeper-dedicated-server/questions.yaml @@ -0,0 +1,235 @@ +# Include{groups} +portals: {} +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: false +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: WORLD_NAME + label: 'WORLD_NAME' + description: "The name you wish to give to your server and its associated world" + schema: + type: string + default: "World name here" + - variable: MAX_PLAYERS + label: 'MAX_PLAYERS' + description: "Maximum number of players that will be allowed to connect to server." + schema: + type: string + default: "10" + - variable: GAME_ID + label: 'GAME_ID' + description: "Game ID to use for the server. Need to be at least 23 characters and alphanumeric, excluding Y,y,x,0,O. Empty or not valid means a new ID will be generated at start." + schema: + type: string + default: "examplegameidwillgohere" + - variable: DATA_PATH + label: 'DATA_PATH' + description: "Save file location. If not set it defaults to a sub-folder named " + schema: + type: string + default: "" + - variable: WORLD_INDEX + label: 'WORLD_INDEX' + description: " Which world index to use." + schema: + type: string + default: "0" + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: serverfiles + label: "serverfiles Storage" + description: "Path to server files, not required" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: datafiles + label: "datafiles Storage" + description: "Data of server" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/core-keeper-dedicated-server/readme.md b/charts/dev/core-keeper-dedicated-server/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/core-keeper-dedicated-server/templates/common.yaml b/charts/dev/core-keeper-dedicated-server/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/core-keeper-dedicated-server/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/core-keeper-dedicated-server/values.yaml b/charts/dev/core-keeper-dedicated-server/values.yaml new file mode 100644 index 00000000000..1ecba4f4473 --- /dev/null +++ b/charts/dev/core-keeper-dedicated-server/values.yaml @@ -0,0 +1,36 @@ +env: + DATA_PATH: '' + GAME_ID: examplegameidwillgohere + MAX_PLAYERS: '10' + WORLD_INDEX: '0' + WORLD_NAME: World name here +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/core-keeper-dedicated-server + tag: latest +persistence: + datafiles: + enabled: true + mountPath: /home/steam/core-keeper-data + serverfiles: + enabled: true + mountPath: /home/steam/core-keeper-dedicated +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: false + ports: + main: + enabled: false diff --git a/charts/dev/corekeeper/.helmignore b/charts/dev/corekeeper/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/corekeeper/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/corekeeper/Chart.yaml b/charts/dev/corekeeper/Chart.yaml new file mode 100644 index 00000000000..f10c2c41bbb --- /dev/null +++ b/charts/dev/corekeeper/Chart.yaml @@ -0,0 +1,29 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - GameServers +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "This Docker will download and install SteamCMD. It will also install\ + \ CoreKeeper and run it.\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/corekeeper +icon: https://truecharts.org/img/chart-icons/corekeeper.png +keywords: +- corekeeper +- GameServers +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: corekeeper +sources: +- https://steampowered.com/ +- https://hub.docker.com/r/ich777/steamcmd/ +type: application +version: 0.0.10 diff --git a/charts/dev/corekeeper/icon.png b/charts/dev/corekeeper/icon.png new file mode 100644 index 00000000000..261e6ca8dc9 Binary files /dev/null and b/charts/dev/corekeeper/icon.png differ diff --git a/charts/dev/corekeeper/questions.yaml b/charts/dev/corekeeper/questions.yaml new file mode 100644 index 00000000000..83ae55ce2b7 --- /dev/null +++ b/charts/dev/corekeeper/questions.yaml @@ -0,0 +1,245 @@ +# Include{groups} +portals: {} +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: false +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_ID + label: 'GAME_ID' + description: "The GAMEID that the container downloads at startup.If you want to install a static or beta version of the game change the value to 896660 -beta YOURBRANCH (without quotes, replace YOURBRANCH with the branch or version you want to install)." + schema: + type: string + default: "1963720" + - variable: WORLD_NAME + label: 'WORLD_NAME' + description: "Enter your prefered world name here." + schema: + type: string + default: "Core Keeper Docker" + - variable: WORLD_INDEX + label: 'WORLD_INDEX' + description: "Only change when you know what you are doing!" + schema: + type: string + default: "0" + - variable: GAME_PARAMS + label: 'GAME_PARAMS' + description: "Enter your extra start up commands for the server here otherwise leave empty." + schema: + type: string + default: "" + - variable: VALIDATE + label: 'VALIDATE' + description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." + schema: + type: string + default: "" + - variable: USERNAME + label: 'USERNAME' + description: "Your Steam username goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: PASSWRD + label: 'PASSWRD' + description: "Your Steam password goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: steamcmd + label: "steamcmd Storage" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: serverfiles + label: "serverfiles Storage" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/corekeeper/readme.md b/charts/dev/corekeeper/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/corekeeper/templates/common.yaml b/charts/dev/corekeeper/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/corekeeper/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/corekeeper/values.yaml b/charts/dev/corekeeper/values.yaml new file mode 100644 index 00000000000..b3cd735f271 --- /dev/null +++ b/charts/dev/corekeeper/values.yaml @@ -0,0 +1,38 @@ +env: + GAME_ID: '1963720' + GAME_PARAMS: '' + PASSWRD: '' + USERNAME: '' + VALIDATE: '' + WORLD_INDEX: '0' + WORLD_NAME: Core Keeper Docker +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/corekeeper + tag: latest +persistence: + serverfiles: + enabled: true + mountPath: /serverdata/serverfiles + steamcmd: + enabled: true + mountPath: /serverdata/steamcmd +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: false + ports: + main: + enabled: false diff --git a/charts/dev/counterstrike2d/.helmignore b/charts/dev/counterstrike2d/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/counterstrike2d/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/counterstrike2d/Chart.yaml b/charts/dev/counterstrike2d/Chart.yaml new file mode 100644 index 00000000000..40c5582c82d --- /dev/null +++ b/charts/dev/counterstrike2d/Chart.yaml @@ -0,0 +1,28 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - GameServers +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "This Docker will download and install CounterStrike 2D.\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/counterstrike2d +icon: https://truecharts.org/img/chart-icons/counterstrike2d.png +keywords: +- counterstrike2d +- GameServers +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: counterstrike2d +sources: +- https://www.steampowered.com/ +- https://hub.docker.com/r/ich777/cs2dserver/ +type: application +version: 0.0.10 diff --git a/charts/dev/counterstrike2d/icon.png b/charts/dev/counterstrike2d/icon.png new file mode 100644 index 00000000000..dd8ffd8fe3e Binary files /dev/null and b/charts/dev/counterstrike2d/icon.png differ diff --git a/charts/dev/counterstrike2d/questions.yaml b/charts/dev/counterstrike2d/questions.yaml new file mode 100644 index 00000000000..6324f8a7f65 --- /dev/null +++ b/charts/dev/counterstrike2d/questions.yaml @@ -0,0 +1,302 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_PARAMS + label: 'GAME_PARAMS' + description: "Enter your extra startup parameters otherwise leave blank!" + schema: + type: string + default: "" + - variable: FORCE_UPDATE + label: 'FORCE_UPDATE' + description: "Put in the value true (without quotes) to Force Update the game otherwise leave blank. Dont forget to delete the value after updating." + schema: + type: string + default: "" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 36963 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 36963 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: serverfiles + label: "serverfiles Storage" + description: "Container Path serverdataserverfiles" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/counterstrike2d/readme.md b/charts/dev/counterstrike2d/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/counterstrike2d/templates/common.yaml b/charts/dev/counterstrike2d/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/counterstrike2d/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/counterstrike2d/values.yaml b/charts/dev/counterstrike2d/values.yaml new file mode 100644 index 00000000000..6f33afd27a5 --- /dev/null +++ b/charts/dev/counterstrike2d/values.yaml @@ -0,0 +1,33 @@ +env: + FORCE_UPDATE: '' + GAME_PARAMS: '' +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/counterstrike2d + tag: latest +persistence: + serverfiles: + enabled: true + mountPath: /serverdata/serverfiles +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 36963 + protocol: UDP + targetPort: 36963 diff --git a/charts/dev/cowyo/.helmignore b/charts/dev/cowyo/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/cowyo/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/cowyo/Chart.yaml b/charts/dev/cowyo/Chart.yaml new file mode 100644 index 00000000000..989e7246341 --- /dev/null +++ b/charts/dev/cowyo/Chart.yaml @@ -0,0 +1,30 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - Cloud + - Productivity +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "DESCRIPTION\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/cowyo +icon: https://truecharts.org/img/chart-icons/cowyo.png +keywords: +- cowyo +- Cloud +- Productivity +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: cowyo +sources: +- https://github.com/schollz/cowyo +- https://hub.docker.com/r/schollz/cowyo +type: application +version: 0.0.10 diff --git a/charts/dev/cowyo/icon.png b/charts/dev/cowyo/icon.png new file mode 100644 index 00000000000..c8b0d966f0d Binary files /dev/null and b/charts/dev/cowyo/icon.png differ diff --git a/charts/dev/cowyo/questions.yaml b/charts/dev/cowyo/questions.yaml new file mode 100644 index 00000000000..87250462f0a --- /dev/null +++ b/charts/dev/cowyo/questions.yaml @@ -0,0 +1,281 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8050 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8050 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: data + label: "data Storage" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/cowyo/readme.md b/charts/dev/cowyo/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/cowyo/templates/common.yaml b/charts/dev/cowyo/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/cowyo/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/cowyo/values.yaml b/charts/dev/cowyo/values.yaml new file mode 100644 index 00000000000..3126064080d --- /dev/null +++ b/charts/dev/cowyo/values.yaml @@ -0,0 +1,24 @@ +env: {} +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/cowyo + tag: latest +persistence: + data: + enabled: true + mountPath: /data +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 8050 + protocol: TCP + targetPort: 8050 diff --git a/charts/dev/craftopia/.helmignore b/charts/dev/craftopia/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/craftopia/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/craftopia/Chart.yaml b/charts/dev/craftopia/Chart.yaml new file mode 100644 index 00000000000..93188aabee9 --- /dev/null +++ b/charts/dev/craftopia/Chart.yaml @@ -0,0 +1,29 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - GameServers +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "This Docker will download and install SteamCMD. It will also install\ + \ Craftopia and run it.\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/craftopia +icon: https://truecharts.org/img/chart-icons/craftopia.png +keywords: +- craftopia +- GameServers +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: craftopia +sources: +- https://www.steampowered.com/ +- https://hub.docker.com/r/ich777/steamcmd/ +type: application +version: 0.0.10 diff --git a/charts/dev/craftopia/icon.png b/charts/dev/craftopia/icon.png new file mode 100644 index 00000000000..329939ef092 Binary files /dev/null and b/charts/dev/craftopia/icon.png differ diff --git a/charts/dev/craftopia/questions.yaml b/charts/dev/craftopia/questions.yaml new file mode 100644 index 00000000000..68919c2c8fd --- /dev/null +++ b/charts/dev/craftopia/questions.yaml @@ -0,0 +1,387 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_ID + label: 'GAME_ID' + description: "The GAMEID that the container download at startup.(httpsdeveloper.valvesoftware.comwikiDedicatedServersList)" + schema: + type: string + default: "1670340" + - variable: GAME_PARAMS + label: 'GAME_PARAMS' + description: "Enter your start up commands for the server." + schema: + type: string + default: "" + - variable: VALIDATE + label: 'VALIDATE' + description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." + schema: + type: string + default: "" + - variable: USERNAME + label: 'USERNAME' + description: "Your Steam username goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: PASSWRD + label: 'PASSWRD' + description: "Your Steam password goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8787 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8787 + + - variable: udpgameport + label: 'udpgameport service' + description: "UDP Game Port (if you need another port, please delete this entry and create a new UDP Port with the required port number, also dont forget to change your server settings file)" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: udpgameport + label: "udpgameport Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8787 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8787 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: steamcmd + label: "steamcmd Storage" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: serverfiles + label: "serverfiles Storage" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/craftopia/readme.md b/charts/dev/craftopia/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/craftopia/templates/common.yaml b/charts/dev/craftopia/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/craftopia/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/craftopia/values.yaml b/charts/dev/craftopia/values.yaml new file mode 100644 index 00000000000..069ede0793d --- /dev/null +++ b/charts/dev/craftopia/values.yaml @@ -0,0 +1,40 @@ +env: + GAME_ID: '1670340' + GAME_PARAMS: '' + PASSWRD: '' + USERNAME: '' + VALIDATE: '' +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/craftopia + tag: latest +persistence: + serverfiles: + enabled: true + mountPath: /serverdata/serverfiles + steamcmd: + enabled: true + mountPath: /serverdata/steamcmd +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 8787 + protocol: TCP + targetPort: 8787 + udpgameport: + enabled: true + ports: + udpgameport: + enabled: true + port: 8787 + protocol: UDP + targetPort: 8787 diff --git a/charts/dev/crafty-3/.helmignore b/charts/dev/crafty-3/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/crafty-3/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/crafty-3/Chart.yaml b/charts/dev/crafty-3/Chart.yaml new file mode 100644 index 00000000000..6c0a18b64c6 --- /dev/null +++ b/charts/dev/crafty-3/Chart.yaml @@ -0,0 +1,31 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - GameServers + - Other +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "An Appication to run all your minecraft servers From without a hustle.\r\ + \n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/crafty-3 +icon: https://truecharts.org/img/chart-icons/crafty-3.png +keywords: +- crafty-3 +- GameServers +- Other +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: crafty-3 +sources: +- https://gitlab.com/crafty-controller/crafty-web +- https://hub.docker.com/r/freddy0/crafty-container +type: application +version: 0.0.10 diff --git a/charts/dev/crafty-3/icon.png b/charts/dev/crafty-3/icon.png new file mode 100644 index 00000000000..339b518fc60 Binary files /dev/null and b/charts/dev/crafty-3/icon.png differ diff --git a/charts/dev/crafty-3/questions.yaml b/charts/dev/crafty-3/questions.yaml new file mode 100644 index 00000000000..9f5e927a2bb --- /dev/null +++ b/charts/dev/crafty-3/questions.yaml @@ -0,0 +1,360 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 1800 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: HTTP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8000 + + - variable: minecraftports + label: 'minecraftports service' + description: "Container Port 25500-25600 yes, 100 ports for 100 possible Servers" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: minecraftports + label: "minecraftports Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 25500 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 25500 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: database + label: "database Storage" + description: "Crafty Database for Wrapper Data" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: server-files + label: "server-files Storage" + description: "Minecraft server FilesDo not use this path in the web UI only use minecraftservers" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: backups + label: "backups Storage" + description: "Backup Folder (all of your backups and Crafty Controller Stuff)" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/crafty-3/readme.md b/charts/dev/crafty-3/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/crafty-3/templates/common.yaml b/charts/dev/crafty-3/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/crafty-3/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/crafty-3/values.yaml b/charts/dev/crafty-3/values.yaml new file mode 100644 index 00000000000..a521c2c26f0 --- /dev/null +++ b/charts/dev/crafty-3/values.yaml @@ -0,0 +1,38 @@ +env: {} +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/crafty-3 + tag: latest +persistence: + backups: + enabled: true + mountPath: /crafty_web/backups + database: + enabled: true + mountPath: /crafty_db + server-files: + enabled: true + mountPath: /minecraft_servers +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 1800 + protocol: HTTP + targetPort: 8000 + minecraftports: + enabled: true + ports: + minecraftports: + enabled: true + port: 25500 + protocol: TCP + targetPort: 25500 diff --git a/charts/dev/crafty-4/.helmignore b/charts/dev/crafty-4/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/crafty-4/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/crafty-4/Chart.yaml b/charts/dev/crafty-4/Chart.yaml new file mode 100644 index 00000000000..bfd947fc4bb --- /dev/null +++ b/charts/dev/crafty-4/Chart.yaml @@ -0,0 +1,33 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - GameServers + - Other +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "Crafty 4 is the next iteration of our Minecraft Server Wrapper / Controller\ + \ / Launcher. Boasting a clean new look, rebuilt from the ground up. Crafty 4 brings\ + \ a whole host of new features such as Bedrock support. With SteamCMD support on\ + \ the way!\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/crafty-4 +icon: https://truecharts.org/img/chart-icons/crafty-4.png +keywords: +- crafty-4 +- GameServers +- Other +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: crafty-4 +sources: +- https://craftycontrol.com/ +- https://registry.hub.docker.com/r/registry.gitlab.com/crafty-controller/crafty-4 +type: application +version: 0.0.10 diff --git a/charts/dev/crafty-4/icon.png b/charts/dev/crafty-4/icon.png new file mode 100644 index 00000000000..68095bf6f79 Binary files /dev/null and b/charts/dev/crafty-4/icon.png differ diff --git a/charts/dev/crafty-4/questions.yaml b/charts/dev/crafty-4/questions.yaml new file mode 100644 index 00000000000..f6648946c97 --- /dev/null +++ b/charts/dev/crafty-4/questions.yaml @@ -0,0 +1,498 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8443 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: HTTP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8443 + + - variable: minecraftports + label: 'minecraftports service' + description: "Container Port 25500-25600 yes, 100 ports for 100 possible Servers" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: minecraftports + label: "minecraftports Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 25500 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 25500 + - variable: portfordynmap + label: 'portfordynmap service' + description: "Dynmap Port" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: portfordynmap + label: "portfordynmap Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8123 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8123 + - variable: portforbedrock + label: 'portforbedrock service' + description: "Bedrock server port" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: portforbedrock + label: "portforbedrock Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 19132 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 19132 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: serverfiles + label: "serverfiles Storage" + description: "Path to the minecraft server folders" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: backupfiles + label: "backupfiles Storage" + description: "Server Backups" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: serverlogs + label: "serverlogs Storage" + description: "Logs" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: config + label: "config Storage" + description: "Path to the persistent Crafty files" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: importfolder + label: "importfolder Storage" + description: "Import existing Mincecraft Servers" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/crafty-4/readme.md b/charts/dev/crafty-4/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/crafty-4/templates/common.yaml b/charts/dev/crafty-4/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/crafty-4/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/crafty-4/values.yaml b/charts/dev/crafty-4/values.yaml new file mode 100644 index 00000000000..c2ad2e6439c --- /dev/null +++ b/charts/dev/crafty-4/values.yaml @@ -0,0 +1,60 @@ +env: {} +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/crafty-4 + tag: latest +persistence: + backupfiles: + enabled: true + mountPath: /crafty/backups + config: + enabled: true + mountPath: /crafty/app/config + importfolder: + enabled: true + mountPath: /crafty/import + serverfiles: + enabled: true + mountPath: /crafty/servers + serverlogs: + enabled: true + mountPath: /crafty/logs +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 8443 + protocol: HTTP + targetPort: 8443 + minecraftports: + enabled: true + ports: + minecraftports: + enabled: true + port: 25500 + protocol: TCP + targetPort: 25500 + portforbedrock: + enabled: true + ports: + portforbedrock: + enabled: true + port: 19132 + protocol: UDP + targetPort: 19132 + portfordynmap: + enabled: true + ports: + portfordynmap: + enabled: true + port: 8123 + protocol: TCP + targetPort: 8123 diff --git a/charts/dev/crypto-exchanges-gateway/.helmignore b/charts/dev/crypto-exchanges-gateway/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/crypto-exchanges-gateway/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/crypto-exchanges-gateway/Chart.yaml b/charts/dev/crypto-exchanges-gateway/Chart.yaml new file mode 100644 index 00000000000..9b1d8be8d2d --- /dev/null +++ b/charts/dev/crypto-exchanges-gateway/Chart.yaml @@ -0,0 +1,30 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - Productivity + - Crypto +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "<p>Your gateway to the world of crypto !</p>\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/crypto-exchanges-gateway +icon: https://truecharts.org/img/chart-icons/crypto-exchanges-gateway.png +keywords: +- crypto-exchanges-gateway +- Productivity +- Crypto +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: crypto-exchanges-gateway +sources: +- https://github.com/aloysius-pgast/crypto-exchanges-gateway +- https://hub.docker.com/r/apendergast/crypto-exchanges-gateway/ +type: application +version: 0.0.10 diff --git a/charts/dev/crypto-exchanges-gateway/icon.png b/charts/dev/crypto-exchanges-gateway/icon.png new file mode 100644 index 00000000000..07e94ba7e2f Binary files /dev/null and b/charts/dev/crypto-exchanges-gateway/icon.png differ diff --git a/charts/dev/crypto-exchanges-gateway/questions.yaml b/charts/dev/crypto-exchanges-gateway/questions.yaml new file mode 100644 index 00000000000..1c33954e43f --- /dev/null +++ b/charts/dev/crypto-exchanges-gateway/questions.yaml @@ -0,0 +1,342 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8000 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: HTTP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8000 + + - variable: wsport + label: 'wsport service' + description: "WS Port" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: wsport + label: "wsport Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8001 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8001 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: configpath + label: "configpath Storage" + description: "httpsraw.githubusercontent.comaloysius-pgastcrypto-exchanges-gatewaymasterconfigconfig.sample.json" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/crypto-exchanges-gateway/readme.md b/charts/dev/crypto-exchanges-gateway/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/crypto-exchanges-gateway/templates/common.yaml b/charts/dev/crypto-exchanges-gateway/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/crypto-exchanges-gateway/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/crypto-exchanges-gateway/values.yaml b/charts/dev/crypto-exchanges-gateway/values.yaml new file mode 100644 index 00000000000..224dceb3a9a --- /dev/null +++ b/charts/dev/crypto-exchanges-gateway/values.yaml @@ -0,0 +1,32 @@ +env: {} +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/crypto-exchanges-gateway + tag: latest +persistence: + configpath: + enabled: true + mountPath: /root/crypto-exchanges-gateway/custom_config +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 8000 + protocol: HTTP + targetPort: 8000 + wsport: + enabled: true + ports: + wsport: + enabled: true + port: 8001 + protocol: TCP + targetPort: 8001 diff --git a/charts/dev/cryptpad/.helmignore b/charts/dev/cryptpad/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/cryptpad/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/cryptpad/Chart.yaml b/charts/dev/cryptpad/Chart.yaml new file mode 100644 index 00000000000..9b240e1ac09 --- /dev/null +++ b/charts/dev/cryptpad/Chart.yaml @@ -0,0 +1,32 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - Productivity + - Security +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: CryptPad is the Zero Knowledge realtime collaborative editor.[br]mkdir + -p /mnt/user/appdata/cryptpad/config [/br]wget -O /mnt/user/appdata/cryptpad/config/config.js + https://raw.githubusercontent.com/xwiki-labs/cryptpad/main/config/config.example.js +home: https://github.com/truecharts/apps/tree/master/charts/stable/cryptpad +icon: https://truecharts.org/img/chart-icons/cryptpad.png +keywords: +- cryptpad +- Productivity +- Security +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: cryptpad +sources: +- https://cryptpad.fr/ +- https://hub.docker.com/r/promasu/cryptpad/ +type: application +version: 0.0.10 diff --git a/charts/dev/cryptpad/icon.png b/charts/dev/cryptpad/icon.png new file mode 100644 index 00000000000..ae057a73992 Binary files /dev/null and b/charts/dev/cryptpad/icon.png differ diff --git a/charts/dev/cryptpad/questions.yaml b/charts/dev/cryptpad/questions.yaml new file mode 100644 index 00000000000..2e0a7b4c165 --- /dev/null +++ b/charts/dev/cryptpad/questions.yaml @@ -0,0 +1,387 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 3000 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: HTTP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 3000 + + - variable: port2 + label: 'port2 service' + description: "Port 2" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: port2 + label: "port2 Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 3001 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 3001 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: blobpath + label: "blobpath Storage" + description: "Blob Path" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: blockpath + label: "blockpath Storage" + description: "Block Path" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: customizepath + label: "customizepath Storage" + description: "Customize Path" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: data + label: "data Storage" + description: "Data Path" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: datastorepath + label: "datastorepath Storage" + description: "Datastore Path" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: configpath + label: "configpath Storage" + description: "Config Path" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/cryptpad/readme.md b/charts/dev/cryptpad/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/cryptpad/templates/common.yaml b/charts/dev/cryptpad/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/cryptpad/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/cryptpad/values.yaml b/charts/dev/cryptpad/values.yaml new file mode 100644 index 00000000000..f362c8a13d6 --- /dev/null +++ b/charts/dev/cryptpad/values.yaml @@ -0,0 +1,47 @@ +env: {} +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/cryptpad + tag: latest +persistence: + blobpath: + enabled: true + mountPath: /cryptpad/blob + blockpath: + enabled: true + mountPath: /cryptpad/block + configpath: + enabled: true + mountPath: /cryptpad/config/config.js + customizepath: + enabled: true + mountPath: /cryptpad/customize + data: + enabled: true + mountPath: /cryptpad/data + datastorepath: + enabled: true + mountPath: /cryptpad/datastore +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 3000 + protocol: HTTP + targetPort: 3000 + port2: + enabled: true + ports: + port2: + enabled: true + port: 3001 + protocol: TCP + targetPort: 3001 diff --git a/charts/dev/csgo/.helmignore b/charts/dev/csgo/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/csgo/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/csgo/Chart.yaml b/charts/dev/csgo/Chart.yaml new file mode 100644 index 00000000000..d49e5b36306 --- /dev/null +++ b/charts/dev/csgo/Chart.yaml @@ -0,0 +1,29 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - GameServers +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "This Docker will download and install SteamCMD. It will also install\ + \ Counter-Strike: GO and run it.\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/csgo +icon: https://truecharts.org/img/chart-icons/csgo.png +keywords: +- csgo +- GameServers +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: csgo +sources: +- https://www.steampowered.com/ +- https://hub.docker.com/r/ich777/steamcmd/ +type: application +version: 0.0.10 diff --git a/charts/dev/csgo/icon.png b/charts/dev/csgo/icon.png new file mode 100644 index 00000000000..ea742ffeb53 Binary files /dev/null and b/charts/dev/csgo/icon.png differ diff --git a/charts/dev/csgo/questions.yaml b/charts/dev/csgo/questions.yaml new file mode 100644 index 00000000000..05363c1dd5b --- /dev/null +++ b/charts/dev/csgo/questions.yaml @@ -0,0 +1,401 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_ID + label: 'GAME_ID' + description: "The GAMEID that the container download at startup.If you want to install a static or beta version of the game change the value to 740 -beta YOURBRANCH (without quotes, replace YOURBRANCH with the branch or version you want to install)." + schema: + type: string + default: "740" + - variable: GAME_NAME + label: 'GAME_NAME' + description: "Game name to start (is connected to the GAMEPARAMS)." + schema: + type: string + default: "csgo" + - variable: GAME_PARAMS + label: 'GAME_PARAMS' + description: "Enter your start up commands for the server." + schema: + type: string + default: "+game_type 0 -usercon +game_mode 0 +mapgroup mg_active +map de_dust2" + - variable: USERNAME + label: 'USERNAME' + description: "Your Steam username goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: VALIDATE + label: 'VALIDATE' + description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." + schema: + type: string + default: "" + - variable: PASSWRD + label: 'PASSWRD' + description: "Your Steam password goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: GAME_PORT + label: 'GAME_PORT' + description: "Container Variable GAMEPORT" + schema: + type: string + default: "27015" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27015 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27015 + + - variable: tcprcon + label: 'tcprcon service' + description: "TCP RCON Port (not required)" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: tcprcon + label: "tcprcon Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27015 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27015 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: steamcmd + label: "steamcmd Storage" + description: "Container Path serverdatasteamcmd" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: serverfiles + label: "serverfiles Storage" + description: "Container Path serverdataserverfiles" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/csgo/readme.md b/charts/dev/csgo/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/csgo/templates/common.yaml b/charts/dev/csgo/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/csgo/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/csgo/values.yaml b/charts/dev/csgo/values.yaml new file mode 100644 index 00000000000..9feaecf69ea --- /dev/null +++ b/charts/dev/csgo/values.yaml @@ -0,0 +1,49 @@ +env: + GAME_ID: '740' + GAME_NAME: csgo + GAME_PARAMS: +game_type 0 -usercon +game_mode 0 +mapgroup mg_active +map de_dust2 + GAME_PORT: '27015' + PASSWRD: '' + USERNAME: '' + VALIDATE: '' +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/csgo + tag: latest +persistence: + serverfiles: + enabled: true + mountPath: /serverdata/serverfiles + steamcmd: + enabled: true + mountPath: /serverdata/steamcmd +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +probes: + liveness: + port: '{{ .Values.service.tcprcon.ports.tcprcon.targetPort }}' + readiness: + port: '{{ .Values.service.tcprcon.ports.tcprcon.targetPort }}' + startup: + port: '{{ .Values.service.tcprcon.ports.tcprcon.targetPort }}' +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 27015 + protocol: UDP + targetPort: 27015 + tcprcon: + enabled: true + ports: + tcprcon: + enabled: true + port: 27015 + protocol: TCP + targetPort: 27015 diff --git a/charts/dev/cssource/.helmignore b/charts/dev/cssource/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/cssource/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/cssource/Chart.yaml b/charts/dev/cssource/Chart.yaml new file mode 100644 index 00000000000..9f00a946f45 --- /dev/null +++ b/charts/dev/cssource/Chart.yaml @@ -0,0 +1,29 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - GameServers +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "This Docker will download and install SteamCMD. It will also install\ + \ Counter-Strike: Source and run it.\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/cssource +icon: https://truecharts.org/img/chart-icons/cssource.png +keywords: +- cssource +- GameServers +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: cssource +sources: +- https://www.steampowered.com/ +- https://hub.docker.com/r/ich777/steamcmd/ +type: application +version: 0.0.10 diff --git a/charts/dev/cssource/icon.png b/charts/dev/cssource/icon.png new file mode 100644 index 00000000000..aaa62252b68 Binary files /dev/null and b/charts/dev/cssource/icon.png differ diff --git a/charts/dev/cssource/questions.yaml b/charts/dev/cssource/questions.yaml new file mode 100644 index 00000000000..bb6f79123de --- /dev/null +++ b/charts/dev/cssource/questions.yaml @@ -0,0 +1,401 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_ID + label: 'GAME_ID' + description: "The GAMEID that the container download at startup.If you want to install a static or beta version of the game change the value to 232330 -beta YOURBRANCH (without quotes, replace YOURBRANCH with the branch or version you want to install)." + schema: + type: string + default: "232330" + - variable: GAME_NAME + label: 'GAME_NAME' + description: "Game name to start (is connected to the GAMEPARAMS)." + schema: + type: string + default: "cstrike" + - variable: GAME_PARAMS + label: 'GAME_PARAMS' + description: "Enter your start up commands for the server." + schema: + type: string + default: "-secure +maxplayers 32 +map de_dust2" + - variable: USERNAME + label: 'USERNAME' + description: "Your Steam username goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: VALIDATE + label: 'VALIDATE' + description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." + schema: + type: string + default: "" + - variable: PASSWRD + label: 'PASSWRD' + description: "Your Steam password goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: GAME_PORT + label: 'GAME_PORT' + description: "Container Variable GAMEPORT" + schema: + type: string + default: "27015" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27015 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27015 + + - variable: tcprcon + label: 'tcprcon service' + description: "TCP RCON Port (not required)" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: tcprcon + label: "tcprcon Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27015 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27015 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: steamcmd + label: "steamcmd Storage" + description: "Container Path serverdatasteamcmd" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: serverfiles + label: "serverfiles Storage" + description: "Container Path serverdataserverfiles" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/cssource/readme.md b/charts/dev/cssource/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/cssource/templates/common.yaml b/charts/dev/cssource/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/cssource/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/cssource/values.yaml b/charts/dev/cssource/values.yaml new file mode 100644 index 00000000000..029b79c9330 --- /dev/null +++ b/charts/dev/cssource/values.yaml @@ -0,0 +1,49 @@ +env: + GAME_ID: '232330' + GAME_NAME: cstrike + GAME_PARAMS: -secure +maxplayers 32 +map de_dust2 + GAME_PORT: '27015' + PASSWRD: '' + USERNAME: '' + VALIDATE: '' +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/cssource + tag: latest +persistence: + serverfiles: + enabled: true + mountPath: /serverdata/serverfiles + steamcmd: + enabled: true + mountPath: /serverdata/steamcmd +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +probes: + liveness: + port: '{{ .Values.service.tcprcon.ports.tcprcon.targetPort }}' + readiness: + port: '{{ .Values.service.tcprcon.ports.tcprcon.targetPort }}' + startup: + port: '{{ .Values.service.tcprcon.ports.tcprcon.targetPort }}' +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 27015 + protocol: UDP + targetPort: 27015 + tcprcon: + enabled: true + ports: + tcprcon: + enabled: true + port: 27015 + protocol: TCP + targetPort: 27015 diff --git a/charts/dev/cstrike1-6/.helmignore b/charts/dev/cstrike1-6/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/cstrike1-6/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/cstrike1-6/Chart.yaml b/charts/dev/cstrike1-6/Chart.yaml new file mode 100644 index 00000000000..18952e151c4 --- /dev/null +++ b/charts/dev/cstrike1-6/Chart.yaml @@ -0,0 +1,29 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - GameServers +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "This Docker will download and install SteamCMD. It will also install\ + \ Counter-Strike 1.6 and run it.\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/cstrike1-6 +icon: https://truecharts.org/img/chart-icons/cstrike1-6.png +keywords: +- cstrike1-6 +- GameServers +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: cstrike1-6 +sources: +- https://www.steampowered.com/ +- https://hub.docker.com/r/ich777/steamcmd/ +type: application +version: 0.0.10 diff --git a/charts/dev/cstrike1-6/icon.png b/charts/dev/cstrike1-6/icon.png new file mode 100644 index 00000000000..55b14737021 Binary files /dev/null and b/charts/dev/cstrike1-6/icon.png differ diff --git a/charts/dev/cstrike1-6/questions.yaml b/charts/dev/cstrike1-6/questions.yaml new file mode 100644 index 00000000000..7df7a6e1143 --- /dev/null +++ b/charts/dev/cstrike1-6/questions.yaml @@ -0,0 +1,407 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_ID + label: 'GAME_ID' + description: "The GAMEID that the container download at startup.(httpsdeveloper.valvesoftware.comwikiDedicatedServersList)" + schema: + type: string + default: "90" + - variable: GAME_NAME + label: 'GAME_NAME' + description: "Game name to start (is connected to the GAMEPARAMS)." + schema: + type: string + default: "cstrike" + - variable: GAME_PARAMS + label: 'GAME_PARAMS' + description: "Enter your start up commands for the server." + schema: + type: string + default: "+maxplayers 32 +map de_dust" + - variable: USERNAME + label: 'USERNAME' + description: "Your Steam username goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: VALIDATE + label: 'VALIDATE' + description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." + schema: + type: string + default: "" + - variable: PASSWRD + label: 'PASSWRD' + description: "Your Steam password goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: GAME_MOD + label: 'GAME_MOD' + description: "Only required for Goldsource Games" + schema: + type: string + default: "" + - variable: GAME_PORT + label: 'GAME_PORT' + description: "Container Variable GAMEPORT" + schema: + type: string + default: "27015" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27015 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27015 + + - variable: tcprcon + label: 'tcprcon service' + description: "TCP RCON Port (not required)" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: tcprcon + label: "tcprcon Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27015 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27015 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: steamcmd + label: "steamcmd Storage" + description: "Container Path serverdatasteamcmd" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: serverfiles + label: "serverfiles Storage" + description: "Container Path serverdataserverfiles" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/cstrike1-6/readme.md b/charts/dev/cstrike1-6/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/cstrike1-6/templates/common.yaml b/charts/dev/cstrike1-6/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/cstrike1-6/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/cstrike1-6/values.yaml b/charts/dev/cstrike1-6/values.yaml new file mode 100644 index 00000000000..3ff9149f659 --- /dev/null +++ b/charts/dev/cstrike1-6/values.yaml @@ -0,0 +1,50 @@ +env: + GAME_ID: '90' + GAME_MOD: '' + GAME_NAME: cstrike + GAME_PARAMS: +maxplayers 32 +map de_dust + GAME_PORT: '27015' + PASSWRD: '' + USERNAME: '' + VALIDATE: '' +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/cstrike1-6 + tag: latest +persistence: + serverfiles: + enabled: true + mountPath: /serverdata/serverfiles + steamcmd: + enabled: true + mountPath: /serverdata/steamcmd +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +probes: + liveness: + port: '{{ .Values.service.tcprcon.ports.tcprcon.targetPort }}' + readiness: + port: '{{ .Values.service.tcprcon.ports.tcprcon.targetPort }}' + startup: + port: '{{ .Values.service.tcprcon.ports.tcprcon.targetPort }}' +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 27015 + protocol: UDP + targetPort: 27015 + tcprcon: + enabled: true + ports: + tcprcon: + enabled: true + port: 27015 + protocol: TCP + targetPort: 27015 diff --git a/charts/dev/cstrikeconditionzero/.helmignore b/charts/dev/cstrikeconditionzero/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/cstrikeconditionzero/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/cstrikeconditionzero/Chart.yaml b/charts/dev/cstrikeconditionzero/Chart.yaml new file mode 100644 index 00000000000..70df080cd2a --- /dev/null +++ b/charts/dev/cstrikeconditionzero/Chart.yaml @@ -0,0 +1,29 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - GameServers +apiVersion: v2 +appVersion: latest +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "This Docker will download and install SteamCMD. It will also install\ + \ Counter-Strike Condition Zero and run it.\r\n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/cstrikeconditionzero +icon: https://truecharts.org/img/chart-icons/cstrikeconditionzero.png +keywords: +- cstrikeconditionzero +- GameServers +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: cstrikeconditionzero +sources: +- https://www.steampowered.com/ +- https://hub.docker.com/r/ich777/steamcmd/ +type: application +version: 0.0.10 diff --git a/charts/dev/cstrikeconditionzero/icon.png b/charts/dev/cstrikeconditionzero/icon.png new file mode 100644 index 00000000000..abdc32094fd Binary files /dev/null and b/charts/dev/cstrikeconditionzero/icon.png differ diff --git a/charts/dev/cstrikeconditionzero/questions.yaml b/charts/dev/cstrikeconditionzero/questions.yaml new file mode 100644 index 00000000000..4d9b36f03c8 --- /dev/null +++ b/charts/dev/cstrikeconditionzero/questions.yaml @@ -0,0 +1,407 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_ID + label: 'GAME_ID' + description: "The GAMEID that the container download at startup.(httpsdeveloper.valvesoftware.comwikiDedicatedServersList)" + schema: + type: string + default: "90 +app_set_config '90 mod dmc'" + - variable: GAME_NAME + label: 'GAME_NAME' + description: "Game name to start (is connected to the GAMEPARAMS)." + schema: + type: string + default: "czero" + - variable: GAME_PARAMS + label: 'GAME_PARAMS' + description: "Enter your start up commands for the server." + schema: + type: string + default: "-secure +maxplayers 32 +map as_oilrig" + - variable: USERNAME + label: 'USERNAME' + description: "Your Steam username goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: VALIDATE + label: 'VALIDATE' + description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." + schema: + type: string + default: "" + - variable: PASSWRD + label: 'PASSWRD' + description: "Your Steam password goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: GAME_MOD + label: 'GAME_MOD' + description: "Only required for Goldsource Games" + schema: + type: string + default: "90 mod czero" + - variable: GAME_PORT + label: 'GAME_PORT' + description: "Container Variable GAMEPORT" + schema: + type: string + default: "27015" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27015 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27015 + + - variable: tcprcon + label: 'tcprcon service' + description: "TCP RCON Port (not required)" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: tcprcon + label: "tcprcon Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27015 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27015 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: steamcmd + label: "steamcmd Storage" + description: "Container Path serverdatasteamcmd" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: serverfiles + label: "serverfiles Storage" + description: "Container Path serverdataserverfiles" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/cstrikeconditionzero/readme.md b/charts/dev/cstrikeconditionzero/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/cstrikeconditionzero/templates/common.yaml b/charts/dev/cstrikeconditionzero/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/cstrikeconditionzero/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/cstrikeconditionzero/values.yaml b/charts/dev/cstrikeconditionzero/values.yaml new file mode 100644 index 00000000000..3e0ae88361a --- /dev/null +++ b/charts/dev/cstrikeconditionzero/values.yaml @@ -0,0 +1,50 @@ +env: + GAME_ID: 90 +app_set_config '90 mod dmc' + GAME_MOD: 90 mod czero + GAME_NAME: czero + GAME_PARAMS: -secure +maxplayers 32 +map as_oilrig + GAME_PORT: '27015' + PASSWRD: '' + USERNAME: '' + VALIDATE: '' +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/cstrikeconditionzero + tag: latest +persistence: + serverfiles: + enabled: true + mountPath: /serverdata/serverfiles + steamcmd: + enabled: true + mountPath: /serverdata/steamcmd +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +probes: + liveness: + port: '{{ .Values.service.tcprcon.ports.tcprcon.targetPort }}' + readiness: + port: '{{ .Values.service.tcprcon.ports.tcprcon.targetPort }}' + startup: + port: '{{ .Values.service.tcprcon.ports.tcprcon.targetPort }}' +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 27015 + protocol: UDP + targetPort: 27015 + tcprcon: + enabled: true + ports: + tcprcon: + enabled: true + port: 27015 + protocol: TCP + targetPort: 27015 diff --git a/charts/dev/cura-novnc/.helmignore b/charts/dev/cura-novnc/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/dev/cura-novnc/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/dev/cura-novnc/Chart.yaml b/charts/dev/cura-novnc/Chart.yaml new file mode 100644 index 00000000000..2278857a650 --- /dev/null +++ b/charts/dev/cura-novnc/Chart.yaml @@ -0,0 +1,31 @@ +annotations: + truecharts.org/SCALE-support: 'true' + truecharts.org/catagories: | + - HomeAutomation + - Productivity +apiVersion: v2 +appVersion: "latest" +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.6 +deprecated: false +description: "Enjoy Cura directly in your browser with this easy to use Docker container.\r\ + \n" +home: https://github.com/truecharts/apps/tree/master/charts/stable/cura-novnc +icon: https://truecharts.org/img/chart-icons/cura-novnc.png +keywords: +- cura-novnc +- HomeAutomation +- Productivity +kubeVersion: '>=1.16.0-0' +maintainers: +- email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: cura-novnc +sources: +- https://ultimaker.com/software/ultimaker-cura +- https://hub.docker.com/r/mikeah/cura-novnc +type: application +version: 0.0.10 diff --git a/charts/dev/cura-novnc/icon.png b/charts/dev/cura-novnc/icon.png new file mode 100644 index 00000000000..e965d10776a Binary files /dev/null and b/charts/dev/cura-novnc/icon.png differ diff --git a/charts/dev/cura-novnc/questions.yaml b/charts/dev/cura-novnc/questions.yaml new file mode 100644 index 00000000000..c39b2bf5b4b --- /dev/null +++ b/charts/dev/cura-novnc/questions.yaml @@ -0,0 +1,291 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 6080 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8080 + + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: homefolder + label: "homefolder Storage" + description: "Container Path homecura" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: prints + label: "prints Storage" + description: "3D Printing Folder" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/cura-novnc/readme.md b/charts/dev/cura-novnc/readme.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/charts/dev/cura-novnc/templates/common.yaml b/charts/dev/cura-novnc/templates/common.yaml new file mode 100644 index 00000000000..cbf66c20818 --- /dev/null +++ b/charts/dev/cura-novnc/templates/common.yaml @@ -0,0 +1,2 @@ +{{/* Render the templates */}} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/cura-novnc/values.yaml b/charts/dev/cura-novnc/values.yaml new file mode 100644 index 00000000000..5565ee40066 --- /dev/null +++ b/charts/dev/cura-novnc/values.yaml @@ -0,0 +1,27 @@ +env: {} +image: + pullPolicy: IfNotPresent + repository: tccr.io/truecharts/cura-novnc + tag: latest +persistence: + homefolder: + enabled: true + mountPath: /home/cura/ + prints: + enabled: true + mountPath: /prints/ +podSecurityContext: + runAsGroup: 0 + runAsUser: 0 +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false +service: + main: + enabled: true + ports: + main: + enabled: true + port: 6080 + protocol: TCP + targetPort: 8080 diff --git a/charts/dev/server-7daystodie/Chart.yaml b/charts/dev/server-7daystodie/Chart.yaml index d882dd10fb9..48e44b07093 100644 --- a/charts/dev/server-7daystodie/Chart.yaml +++ b/charts/dev/server-7daystodie/Chart.yaml @@ -1,19 +1,18 @@ annotations: - truecharts.org/SCALE-support: 'false' + truecharts.org/SCALE-support: 'true' truecharts.org/catagories: | - GameServers - truecharts.org/grade: U apiVersion: v2 -appVersion: "latest" +appVersion: latest dependencies: - name: common repository: https://library-charts.truecharts.org - version: 9.3.3 + version: 10.4.6 deprecated: false description: "This Docker will download and install SteamCMD. It will also install\ \ 7 Days to Die and run it.\r\n" home: https://github.com/truecharts/apps/tree/master/charts/stable/7daystodie -icon: https://truecharts.org/_static/img/appicons/7daystodie.png +icon: https://truecharts.org/img/chart-icons/7daystodie.png keywords: - 7daystodie - GameServers @@ -27,4 +26,4 @@ sources: - https://www.steampowered.com/ - https://hub.docker.com/r/ich777/steamcmd/ type: application -version: 0.0.6 +version: 0.0.10 diff --git a/charts/dev/server-7daystodie/questions.yaml b/charts/dev/server-7daystodie/questions.yaml new file mode 100644 index 00000000000..37de12f2633 --- /dev/null +++ b/charts/dev/server-7daystodie/questions.yaml @@ -0,0 +1,761 @@ +# Include{groups} +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: portal + group: "Container Image" + label: "Configure Portal Button" + schema: + type: dict + hidden: true + attrs: + - variable: enabled + label: "Enable" + description: "enable the portal button" + schema: + hidden: true + editable: false + type: boolean + default: true +# Include{global} + + - variable: controller + group: "Controller" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: advanced + label: "Show Advanced Controller Settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: type + description: "Please specify type of workload to deploy" + label: "(Advanced) Controller Type" + schema: + type: string + default: "deployment" + required: true + enum: + - value: "deployment" + description: "Deployment" + - value: "statefulset" + description: "Statefulset" + - value: "daemonset" + description: "Daemonset" + - variable: replicas + description: "Number of desired pod replicas" + label: "Desired Replicas" + schema: + type: int + default: 1 + required: true + - variable: strategy + description: "Please specify type of workload to deploy" + label: "(Advanced) Update Strategy" + schema: + type: string + default: "Recreate" + required: true + enum: + - value: "Recreate" + description: "Recreate: Kill existing pods before creating new ones" + - value: "RollingUpdate" + description: "RollingUpdate: Create new pods and then kill old ones" + - value: "OnDelete" + description: "(Legacy) OnDelete: ignore .spec.template changes" +# Include{controllerExpert} + + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: GAME_ID + label: 'GAME_ID' + description: "The GAMEID that the container download at startup.(httpsdeveloper.valvesoftware.comwikiDedicatedServersList)If you want to use a static version of the game and not always the latest one then enter this 294420 -beta stablealpha19.4 or 294420 -beta latestexperimental (without quotes) if you want to stay for example on alpha19.4." + schema: + type: string + default: "294420" + - variable: SERVERCONFIG + label: 'SERVERCONFIG' + description: "Please change if your serverconfigfile has another name." + schema: + type: string + default: "serverconfig.xml" + - variable: GAME_PARAMS + label: 'GAME_PARAMS' + description: "Enter your start up commands for the server." + schema: + type: string + default: "-logfile 7DaysToDie_Data/output_log.txt $@" + - variable: USERNAME + label: 'USERNAME' + description: "Your Steam username goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: VALIDATE + label: 'VALIDATE' + description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." + schema: + type: string + default: "" + - variable: PASSWRD + label: 'PASSWRD' + description: "Your Steam password goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." + schema: + type: string + default: "" + - variable: ENABLE_BEPINEX + label: 'ENABLE_BEPINEX' + description: "If you want to enable BepInEx set this variable to true (without quotes)." + schema: + type: string + default: "false" + +# Include{containerConfig} + + - variable: service + group: "Networking and Services" + label: "Configure Service(s)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 26900 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 26900 + + - variable: steammasterser + label: 'steammasterser service' + description: "Container Port 26900" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: steammasterser + label: "steammasterser Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 26900 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 26900 + - variable: steamcommunica + label: 'steamcommunica service' + description: "Container Port 26901" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: steamcommunica + label: "steamcommunica Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 26901 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 26901 + - variable: raknet + label: 'raknet service' + description: "Container Port 26902" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: raknet + label: "raknet Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 26902 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 26902 + - variable: unet + label: 'unet service' + description: "Container Port " + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: unet + label: "unet Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 26903 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 26903 + - variable: webbasecontrol + label: 'webbasecontrol service' + description: "Container Port 8080" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: webbasecontrol + label: "webbasecontrol Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8080 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8080 + - variable: webpanel + label: 'webpanel service' + description: "Container Port 8082" + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: webpanel + label: "webpanel Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 8082 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: TCP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 8082 + - variable: registeringats + label: 'registeringats service' + description: "Should be in the range 27015 - 27030, dont forget to set also a different Container Port if you change this value." + schema: + additional_attrs: true + type: dict + attrs: +# Include{serviceSelector} + - variable: registeringats + label: "registeringats Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 27015 + required: true + - variable: advanced + label: "Show Advanced settings" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + - variable: protocol + label: "Port Type" + schema: + type: string + default: UDP + enum: + - value: HTTP + description: "HTTP" + - value: "HTTPS" + description: "HTTPS" + - value: TCP + description: "TCP" + - value: "UDP" + description: "UDP" + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort, Simple or LoadBalancer" + schema: + type: int + min: 9000 + max: 65535 + - variable: targetPort + label: "Target Port" + description: "The internal(!) port on the container the Application runs on" + schema: + type: int + default: 27015 + + + - variable: serviceexpert + group: "Networking and Services" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: "Networking and Services" + label: "Host-Networking (Complicated)" + schema: + type: boolean + default: false + +# Include{serviceExpert} + +# Include{serviceList} + + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: steamcmd + label: "steamcmd Storage" + description: "Container Path serverdatasteamcmd" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + - variable: serverfiles + label: "serverfiles Storage" + description: "Container Path serverdataserverfiles" + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceAdvanced} + + +# Include{persistenceList} + + + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} + +# Include{ingressTLS} + +# Include{ingressTraefik} + +# Include{ingressExpert} + +# Include{ingressList} + +# Include{security} + + - variable: advancedSecurity + label: "Show Advanced Security Settings" + group: "Security and Permissions" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: "Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: false +# Include{securityContextAdvanced} + + - variable: podSecurityContext + group: "Security and Permissions" + label: "Pod Security Context" + schema: + additional_attrs: true + type: dict + attrs: + - 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: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{podSecurityContextAdvanced} + + +# Include{resources} + +# Include{advanced} + +# Include{addons} diff --git a/charts/dev/server-7daystodie/templates/common.yaml b/charts/dev/server-7daystodie/templates/common.yaml index f6d3b6d3a08..cbf66c20818 100644 --- a/charts/dev/server-7daystodie/templates/common.yaml +++ b/charts/dev/server-7daystodie/templates/common.yaml @@ -1,2 +1,2 @@ {{/* Render the templates */}} -{{ include "common.all" . }} +{{ include "tc.common.loader.all" . }} diff --git a/charts/dev/server-7daystodie/values.yaml b/charts/dev/server-7daystodie/values.yaml index 8c42a62a09d..63805ecdf01 100644 --- a/charts/dev/server-7daystodie/values.yaml +++ b/charts/dev/server-7daystodie/values.yaml @@ -88,5 +88,3 @@ service: port: 8082 protocol: TCP targetPort: 8082 -command: ["/bin/sh"] -args: ["-c", "groupmod -g ${GID} ${USER} && bash /opt/scripts/start.sh"]