From 037b4f2b260dfcaaa2a3e60e54a15157a2c5897f Mon Sep 17 00:00:00 2001 From: TrueCharts-Bot Date: Fri, 29 Jul 2022 09:00:25 +0000 Subject: [PATCH] Commit new Chart releases for TrueCharts Signed-off-by: TrueCharts-Bot --- incubator/sheetable/0.0.1/CHANGELOG.md | 6 + incubator/sheetable/0.0.1/Chart.lock | 9 + incubator/sheetable/0.0.1/Chart.yaml | 30 + incubator/sheetable/0.0.1/README.md | 109 + incubator/sheetable/0.0.1/app-readme.md | 8 + .../sheetable/0.0.1/charts/common-10.4.8.tgz | Bin 0 -> 47357 bytes .../0.0.1/charts/postgresql-8.0.48.tgz | Bin 0 -> 60773 bytes incubator/sheetable/0.0.1/ix_values.yaml | 54 + incubator/sheetable/0.0.1/questions.yaml | 2437 +++++++++++++++ .../sheetable/0.0.1/templates/_secrets.tpl | 20 + .../sheetable/0.0.1/templates/common.yaml | 7 + incubator/sheetable/0.0.1/values.yaml | 0 incubator/sheetable/item.yaml | 4 + incubator/zusam/0.0.1/CHANGELOG.md | 6 + incubator/zusam/0.0.1/Chart.lock | 6 + incubator/zusam/0.0.1/Chart.yaml | 27 + incubator/zusam/0.0.1/README.md | 108 + incubator/zusam/0.0.1/app-readme.md | 8 + .../zusam/0.0.1/charts/common-10.4.8.tgz | Bin 0 -> 47357 bytes incubator/zusam/0.0.1/ix_values.yaml | 63 + incubator/zusam/0.0.1/questions.yaml | 2638 +++++++++++++++++ incubator/zusam/0.0.1/templates/common.yaml | 1 + incubator/zusam/0.0.1/values.yaml | 0 incubator/zusam/item.yaml | 4 + 24 files changed, 5545 insertions(+) create mode 100644 incubator/sheetable/0.0.1/CHANGELOG.md create mode 100644 incubator/sheetable/0.0.1/Chart.lock create mode 100644 incubator/sheetable/0.0.1/Chart.yaml create mode 100644 incubator/sheetable/0.0.1/README.md create mode 100644 incubator/sheetable/0.0.1/app-readme.md create mode 100644 incubator/sheetable/0.0.1/charts/common-10.4.8.tgz create mode 100644 incubator/sheetable/0.0.1/charts/postgresql-8.0.48.tgz create mode 100644 incubator/sheetable/0.0.1/ix_values.yaml create mode 100644 incubator/sheetable/0.0.1/questions.yaml create mode 100644 incubator/sheetable/0.0.1/templates/_secrets.tpl create mode 100644 incubator/sheetable/0.0.1/templates/common.yaml create mode 100644 incubator/sheetable/0.0.1/values.yaml create mode 100644 incubator/sheetable/item.yaml create mode 100644 incubator/zusam/0.0.1/CHANGELOG.md create mode 100644 incubator/zusam/0.0.1/Chart.lock create mode 100644 incubator/zusam/0.0.1/Chart.yaml create mode 100644 incubator/zusam/0.0.1/README.md create mode 100644 incubator/zusam/0.0.1/app-readme.md create mode 100644 incubator/zusam/0.0.1/charts/common-10.4.8.tgz create mode 100644 incubator/zusam/0.0.1/ix_values.yaml create mode 100644 incubator/zusam/0.0.1/questions.yaml create mode 100644 incubator/zusam/0.0.1/templates/common.yaml create mode 100644 incubator/zusam/0.0.1/values.yaml create mode 100644 incubator/zusam/item.yaml diff --git a/incubator/sheetable/0.0.1/CHANGELOG.md b/incubator/sheetable/0.0.1/CHANGELOG.md new file mode 100644 index 00000000000..c3ffde07724 --- /dev/null +++ b/incubator/sheetable/0.0.1/CHANGELOG.md @@ -0,0 +1,6 @@ +# Changelog + + + +## [sheetable-0.0.1]sheetable-0.0.1 (2022-07-29) + diff --git a/incubator/sheetable/0.0.1/Chart.lock b/incubator/sheetable/0.0.1/Chart.lock new file mode 100644 index 00000000000..1e29d58cbb0 --- /dev/null +++ b/incubator/sheetable/0.0.1/Chart.lock @@ -0,0 +1,9 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.4.8 +- name: postgresql + repository: https://charts.truecharts.org/ + version: 8.0.48 +digest: sha256:06eed2d910d06ee059a0eed8277d806937d457340e3f510c63a55c1b8e5ce14f +generated: "2022-07-29T08:54:02.768592818Z" diff --git a/incubator/sheetable/0.0.1/Chart.yaml b/incubator/sheetable/0.0.1/Chart.yaml new file mode 100644 index 00000000000..9666dcca9c6 --- /dev/null +++ b/incubator/sheetable/0.0.1/Chart.yaml @@ -0,0 +1,30 @@ +apiVersion: v2 +appVersion: "0.8" +dependencies: + - name: common + repository: https://library-charts.truecharts.org + version: 10.4.8 + - condition: postgresql.enabled + name: postgresql + repository: https://charts.truecharts.org/ + version: 8.0.48 +description: SheetAble is an easy to use music sheet organiser for all the music enthusiasts out there. +home: https://truecharts.org/docs/charts/incubator/sheetable +icon: https://truecharts.org/img/chart-icons/sheetable.png +keywords: + - sheetable +kubeVersion: ">=1.16.0-0" +maintainers: + - email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: sheetable +sources: + - https://sheetable.net/docs + - https://github.com/SheetAble +version: 0.0.1 +annotations: + truecharts.org/catagories: | + - music + truecharts.org/SCALE-support: "true" + truecharts.org/grade: U diff --git a/incubator/sheetable/0.0.1/README.md b/incubator/sheetable/0.0.1/README.md new file mode 100644 index 00000000000..0240f931a94 --- /dev/null +++ b/incubator/sheetable/0.0.1/README.md @@ -0,0 +1,109 @@ +# sheetable + +![Version: 0.0.1](https://img.shields.io/badge/Version-0.0.1-informational?style=flat-square) ![AppVersion: 0.8](https://img.shields.io/badge/AppVersion-0.8-informational?style=flat-square) + +SheetAble is an easy to use music sheet organiser for all the music enthusiasts out there. + +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: [sheetable](https://truecharts.org/docs/charts/stable/sheetable) + +**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/truecharts/charts/issues/new/choose)** + +## Source Code + +* +* + +## Requirements + +Kubernetes: `>=1.16.0-0` + +## Dependencies + +| Repository | Name | Version | +|------------|------|---------| +| https://charts.truecharts.org/ | postgresql | 8.0.48 | +| https://library-charts.truecharts.org | common | 10.4.8 | + +## Installing the Chart + +### TrueNAS SCALE + +To install this App on TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/docs/manual/Quick-Start%20Guides/02-Installing-an-App/). + +### Helm + +To install the chart with the release name `sheetable` + +```console +helm repo add TrueCharts https://helm.truecharts.org +helm repo update +helm install sheetable TrueCharts/sheetable +``` + +## 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/docs/manual/Quick-Start%20Guides/04-Upgrade-rollback-delete-an-App/). + +### Helm + +To uninstall the `sheetable` deployment + +```console +helm uninstall sheetable +``` + +## 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 sheetable \ + --set env.TZ="America/New York" \ + TrueCharts/sheetable +``` + +#### 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 sheetable TrueCharts/sheetable -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/docs/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/incubator/sheetable/0.0.1/app-readme.md b/incubator/sheetable/0.0.1/app-readme.md new file mode 100644 index 00000000000..27e43bb1eb9 --- /dev/null +++ b/incubator/sheetable/0.0.1/app-readme.md @@ -0,0 +1,8 @@ +SheetAble is an easy to use music sheet organiser for all the music enthusiasts out there. + +This App is supplied by TrueCharts, for more information visit the manual: https://truecharts.org/charts/incubator/sheetable + +--- + +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! diff --git a/incubator/sheetable/0.0.1/charts/common-10.4.8.tgz b/incubator/sheetable/0.0.1/charts/common-10.4.8.tgz new file mode 100644 index 0000000000000000000000000000000000000000..e7ddaf2da570bef08d695e2efa887fc5c127337c GIT binary patch literal 47357 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 F1OU@}Y}Eh& literal 0 HcmV?d00001 diff --git a/incubator/sheetable/0.0.1/charts/postgresql-8.0.48.tgz b/incubator/sheetable/0.0.1/charts/postgresql-8.0.48.tgz new file mode 100644 index 0000000000000000000000000000000000000000..1678482a86163a40fb4b47b0f0566e65943a3d84 GIT binary patch literal 60773 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.16.0-0" +maintainers: + - email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: zusam +sources: + - https://github.com/zusam/zusam + - https://hub.docker.com/r/zusam/zusam +version: 0.0.1 +annotations: + truecharts.org/catagories: | + - chat + truecharts.org/SCALE-support: "true" + truecharts.org/grade: U diff --git a/incubator/zusam/0.0.1/README.md b/incubator/zusam/0.0.1/README.md new file mode 100644 index 00000000000..062653e0004 --- /dev/null +++ b/incubator/zusam/0.0.1/README.md @@ -0,0 +1,108 @@ +# zusam + +![Version: 0.0.1](https://img.shields.io/badge/Version-0.0.1-informational?style=flat-square) ![AppVersion: 0.5.1](https://img.shields.io/badge/AppVersion-0.5.1-informational?style=flat-square) + +Zusam is a free and open-source way to self-host private forums for groups of friends. + +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: [zusam](https://truecharts.org/docs/charts/stable/zusam) + +**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/truecharts/charts/issues/new/choose)** + +## Source Code + +* +* + +## Requirements + +Kubernetes: `>=1.16.0-0` + +## Dependencies + +| Repository | Name | Version | +|------------|------|---------| +| https://library-charts.truecharts.org | common | 10.4.8 | + +## Installing the Chart + +### TrueNAS SCALE + +To install this App on TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/docs/manual/Quick-Start%20Guides/02-Installing-an-App/). + +### Helm + +To install the chart with the release name `zusam` + +```console +helm repo add TrueCharts https://helm.truecharts.org +helm repo update +helm install zusam TrueCharts/zusam +``` + +## 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/docs/manual/Quick-Start%20Guides/04-Upgrade-rollback-delete-an-App/). + +### Helm + +To uninstall the `zusam` deployment + +```console +helm uninstall zusam +``` + +## 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 zusam \ + --set env.TZ="America/New York" \ + TrueCharts/zusam +``` + +#### 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 zusam TrueCharts/zusam -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/docs/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/incubator/zusam/0.0.1/app-readme.md b/incubator/zusam/0.0.1/app-readme.md new file mode 100644 index 00000000000..a6bd921b22b --- /dev/null +++ b/incubator/zusam/0.0.1/app-readme.md @@ -0,0 +1,8 @@ +Zusam is a free and open-source way to self-host private forums for groups of friends. + +This App is supplied by TrueCharts, for more information visit the manual: https://truecharts.org/charts/incubator/zusam + +--- + +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! diff --git a/incubator/zusam/0.0.1/charts/common-10.4.8.tgz b/incubator/zusam/0.0.1/charts/common-10.4.8.tgz new file mode 100644 index 0000000000000000000000000000000000000000..e7ddaf2da570bef08d695e2efa887fc5c127337c GIT binary patch literal 47357 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 F1OU@}Y}Eh& literal 0 HcmV?d00001 diff --git a/incubator/zusam/0.0.1/ix_values.yaml b/incubator/zusam/0.0.1/ix_values.yaml new file mode 100644 index 00000000000..e3a8e0ab686 --- /dev/null +++ b/incubator/zusam/0.0.1/ix_values.yaml @@ -0,0 +1,63 @@ +image: + repository: tccr.io/truecharts/zusam + tag: v0.5.1@sha256:dbd6ee3107565d6f788027e39539e22d0b76b17eeb7356cb5401d9bad9a495cc + pullPolicy: IfNotPresent + +securityContext: + readOnlyRootFilesystem: false + runAsNonRoot: false + +podSecurityContext: + runAsUser: 0 + runAsGroup: 0 + +secretEnv: + INIT_USER: "email@domain.com" + INIT_GROUP: "zusam" + INIT_PASSWORD: "changeme" + +env: + DOMAIN: "localhost" + LANG: "en" + ALLOW_BOTS: false + ALLOW_VIDEO_UPLOAD: true + ALLOW_IMAGE_UPLOAD: true + ALLOW_PDF_UPLOAD: true + ALLOW_AUDIO_UPLOAD: false + IDLE_HOURS: "01-07" + VIDEO_CONVERSION_THREADS: 1 + VIDEO_FORMAT_NOT_CONVERTED: "video/mp4" + VIDEO_SIZE_NOT_CONVERTED: "10" + MAX_TASK_LOCK_DURATION: 14400 + ALLOW_EMAIL: false + MAILER_DSN: null://localhost + mailer_auth_mode: "cram-md5" + mailer_username: "" + mailer_password: "" + mailer_port: 587 + mailer_host: "" + mailer_transport: "smtp" + mailer_encryption: "tls" + CRON_CONVERT_IMAGES: 60 + CRON_CONVERT_VIDEO: 3600 + CRON_NOTIFICATION_EMAILS: 3600 + CRON_COMPRESS_GIFS: 3600 + CRON_BOT_ACTIVATE: 3600 + CRON_CLEAN_CACHE: 86400 + CRON_CLEAN_NOTIFICATIONS: 604800 + CRON_CLEAN_FILES: 604800 + CRON_CLEAN_MESSAGES: 604800 + CRON_CLEAN_GROUPS: 2592000 + +service: + main: + ports: + main: + port: 10283 + targetPort: 8080 + protocol: HTTP + +persistence: + data: + enabled: true + mountPath: "/zusam/data" diff --git a/incubator/zusam/0.0.1/questions.yaml b/incubator/zusam/0.0.1/questions.yaml new file mode 100644 index 00000000000..fd9a5850875 --- /dev/null +++ b/incubator/zusam/0.0.1/questions.yaml @@ -0,0 +1,2638 @@ +groups: + - name: "Container Image" + description: "Image to be used for container" + - name: "Controller" + description: "Configure workload deployment" + - name: "Container Configuration" + description: "additional container configuration" + - name: "App Configuration" + description: "App specific config options" + - name: "Networking and Services" + description: "Configure Network and Services for container" + - name: "Storage and Persistence" + description: "Persist and share data that is separate from the container" + - name: "Ingress" + description: "Ingress Configuration" + - name: "Security and Permissions" + description: "Configure security context and permissions" + - name: "Resources and Devices" + description: "Specify resources/devices to be allocated to workload" + - name: "Middlewares" + description: "Traefik Middlewares" + - name: "Metrics" + description: "Metrics" + - name: "Addons" + description: "Addon Configuration" + - name: "Advanced" + description: "Advanced Configuration" +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 + - variable: global + label: "global settings" + group: "Controller" + schema: + type: dict + hidden: true + attrs: + - variable: isSCALE + label: "flag this is SCALE" + schema: + type: boolean + default: true + hidden: true + - 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" + - variable: expert + label: "Show Expert Configuration Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: extraArgs + label: "Extra Args" + schema: + type: list + default: [] + items: + - variable: arg + label: "arg" + schema: + type: string + - variable: labelsList + label: "Controller Labels" + schema: + type: list + default: [] + items: + - variable: labelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: annotationsList + label: " Controller Annotations" + schema: + type: list + default: [] + items: + - variable: annotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: secretEnv + group: "Container Configuration" + label: "Image Secrets" + schema: + additional_attrs: true + type: dict + attrs: + - variable: INIT_USER + label: "INIT_USER" + description: "" + schema: + type: string + required: true + default: "" + - variable: INIT_GROUP + label: "INIT_GROUP" + description: "" + schema: + type: string + required: true + default: "" + - variable: INIT_PASSWORD + label: "INIT_PASSWORD" + description: "" + schema: + type: string + required: true + private: true + default: "" + - variable: env + group: "Container Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + - variable: DOMAIN + label: "DOMAIN" + description: "DOMAIN is used to generate urls" + schema: + type: string + default: "" + - variable: LANG + label: "LANG" + schema: + type: string + required: true + default: "en" + - variable: ALLOW_BOTS + label: "ALLOW_BOTS" + schema: + type: boolean + default: false + - variable: ALLOW_VIDEO_UPLOAD + label: "ALLOW_VIDEO_UPLOAD" + schema: + type: boolean + default: true + - variable: ALLOW_IMAGE_UPLOAD + label: "ALLOW_IMAGE_UPLOAD" + schema: + type: boolean + default: true + - variable: ALLOW_PDF_UPLOAD + label: "ALLOW_PDF_UPLOAD" + schema: + type: boolean + default: true + - variable: ALLOW_AUDIO_UPLOAD + label: "ALLOW_AUDIO_UPLOAD" + schema: + type: boolean + default: true + - variable: IDLE_HOURS + label: "IDLE_HOURS" + description: "IDLE_HOURS indicate hours during which heavy operations can occur" + schema: + type: string + required: true + default: "01-07" + - variable: VIDEO_CONVERSION_THREADS + label: "VIDEO_CONVERSION_THREADS" + description: "Number of threads to use for video conversion" + schema: + type: int + required: true + default: 1 + - variable: VIDEO_FORMAT_NOT_CONVERTED + label: "VIDEO_FORMAT_NOT_CONVERTED" + description: "VIDEO_FORMAT_NOT_CONVERTED is a comma (',') separated list" + schema: + type: string + required: true + default: "video/mp4" + - variable: VIDEO_SIZE_NOT_CONVERTED + label: "VIDEO_SIZE_NOT_CONVERTED" + description: "VIDEO_SIZE_NOT_CONVERTED is in Mo" + schema: + type: int + required: true + default: 10 + - variable: MAX_TASK_LOCK_DURATION + label: "MAX_TASK_LOCK_DURATION" + description: "This is the time in seconds before it considers the task as stalled and clears the lock" + schema: + type: int + required: true + default: 14400 + - variable: ALLOW_EMAIL + label: "ALLOW_EMAIL" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: MAILER_DSN + label: "MAILER_DSN" + schema: + type: string + default: "null://localhost" + - variable: mailer_auth_mode + label: "mailer_auth_mode" + schema: + type: string + default: "cram-md5" + - variable: mailer_username + label: "mailer_username" + schema: + type: string + default: "" + - variable: mailer_password + label: "mailer_password" + schema: + type: string + private: true + default: "" + - variable: mailer_port + label: "mailer_port" + schema: + type: int + default: 587 + - variable: mailer_host + label: "mailer_host" + schema: + type: string + default: "" + - variable: mailer_transport + label: "mailer_transport" + schema: + type: string + default: "smtp" + - variable: mailer_encryption + label: "mailer_encryption" + schema: + type: string + default: "tls" + - variable: enable_cron_config + label: "Configure Cron" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: CRON_CONVERT_IMAGES + label: "CRON_CONVERT_IMAGES" + description: "Task execution intervals in seconds" + schema: + type: int + default: 60 + - variable: CRON_CONVERT_VIDEO + label: "CRON_CONVERT_VIDEO" + description: "Task execution intervals in seconds" + schema: + type: int + default: 3600 + - variable: CRON_NOTIFICATION_EMAILS + label: "CRON_NOTIFICATION_EMAILS" + description: "Task execution intervals in seconds" + schema: + type: int + default: 3600 + - variable: CRON_COMPRESS_GIFS + label: "CRON_COMPRESS_GIFS" + description: "Task execution intervals in seconds" + schema: + type: int + default: 3600 + - variable: CRON_BOT_ACTIVATE + label: "CRON_BOT_ACTIVATE" + description: "Task execution intervals in seconds" + schema: + type: int + default: 3600 + - variable: CRON_CLEAN_CACHE + label: "CRON_CLEAN_CACHE" + description: "Task execution intervals in seconds" + schema: + type: int + default: 86400 + - variable: CRON_CLEAN_NOTIFICATIONS + label: "CRON_CLEAN_NOTIFICATIONS" + description: "Task execution intervals in seconds" + schema: + type: int + default: 604800 + - variable: CRON_CLEAN_FILES + label: "CRON_CLEAN_FILES" + description: "Task execution intervals in seconds" + schema: + type: int + default: 604800 + - variable: CRON_CLEAN_MESSAGES + label: "CRON_CLEAN_MESSAGES" + description: "Task execution intervals in seconds" + schema: + type: int + default: 604800 + - variable: CRON_CLEAN_GROUPS + label: "CRON_CLEAN_GROUPS" + description: "Task execution intervals in seconds" + schema: + type: int + default: 2592000 + - variable: TZ + label: "Timezone" + group: "Container Configuration" + schema: + type: string + default: "Etc/UTC" + $ref: + - "definitions/timezone" + + - variable: envList + label: "Image environment" + group: "Container Configuration" + schema: + type: list + default: [] + items: + - variable: envItem + label: "Environment Variable" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + + - variable: expertpodconf + group: "Container Configuration" + label: "Show Expert Config" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: tty + label: "Enable TTY" + description: "Determines whether containers in a pod runs with TTY enabled. By default pod has it disabled." + group: "Workload Details" + schema: + type: boolean + default: false + - variable: stdin + label: "Enable STDIN" + description: "Determines whether containers in a pod runs with stdin enabled. By default pod has it disabled." + group: "Workload Details" + schema: + type: boolean + default: false + - variable: termination + group: "Container Configuration" + label: "Termination settings" + schema: + additional_attrs: true + type: dict + attrs: + - variable: gracePeriodSeconds + label: "Grace Period Seconds" + schema: + type: int + default: 10 + - variable: podLabelsList + group: "Container Configuration" + label: "Pod Labels" + schema: + type: list + default: [] + items: + - variable: podLabelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + + - variable: podAnnotationsList + group: "Container Configuration" + label: "Pod Annotations" + schema: + type: list + default: [] + items: + - variable: podAnnotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - 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: + - variable: enabled + label: "Enable the service" + schema: + type: boolean + default: true + hidden: true + - variable: type + label: "Service Type" + description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: "Simple" + enum: + - value: "Simple" + description: "Simple" + - value: "ClusterIP" + description: "ClusterIP" + - value: "NodePort" + description: "NodePort (Advanced)" + - value: "LoadBalancer" + description: "LoadBalancer (Advanced)" + - variable: loadBalancerIP + label: "LoadBalancer IP" + description: "LoadBalancerIP" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: list + default: [] + items: + - variable: externalIP + label: "External IP" + schema: + type: string + - variable: ipFamilyPolicy + label: "IP Family Policy" + description: "(Advanced) Specify the ip policy" + schema: + show_if: [["type", "!=", "Simple"]] + type: string + default: "SingleStack" + enum: + - value: "SingleStack" + description: "SingleStack" + - value: "PreferDualStack" + description: "PreferDualStack" + - value: "RequireDualStack" + description: "RequireDualStack" + - variable: ipFamilies + label: "(advanced) IP families" + description: "(advanced) The ip families that should be used" + schema: + show_if: [["type", "!=", "Simple"]] + type: list + default: [] + items: + - variable: ipFamily + label: "IP family" + schema: + type: string + - variable: ports + label: "Service's Port(s) Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 10283 + 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: 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 + - variable: externalInterfaces + description: "Add External Interfaces" + label: "Add external Interfaces" + group: "Networking" + schema: + type: list + items: + - variable: interfaceConfiguration + description: "Interface Configuration" + label: "Interface Configuration" + schema: + type: dict + $ref: + - "normalize/interfaceConfiguration" + attrs: + - variable: hostInterface + description: "Please specify host interface" + label: "Host Interface" + schema: + type: string + required: true + $ref: + - "definitions/interface" + - variable: ipam + description: "Define how IP Address will be managed" + label: "IP Address Management" + schema: + type: dict + required: true + attrs: + - variable: type + description: "Specify type for IPAM" + label: "IPAM Type" + schema: + type: string + required: true + enum: + - value: "dhcp" + description: "Use DHCP" + - value: "static" + description: "Use static IP" + show_subquestions_if: "static" + subquestions: + - variable: staticIPConfigurations + label: "Static IP Addresses" + schema: + type: list + items: + - variable: staticIP + label: "Static IP" + schema: + type: ipaddr + cidr: true + - variable: staticRoutes + label: "Static Routes" + schema: + type: list + items: + - variable: staticRouteConfiguration + label: "Static Route Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: destination + label: "Destination" + schema: + type: ipaddr + cidr: true + required: true + - variable: gateway + label: "Gateway" + schema: + type: ipaddr + cidr: false + required: true + + - variable: dnsPolicy + group: "Networking and Services" + label: "dnsPolicy" + schema: + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "ClusterFirst" + description: "ClusterFirst" + - value: "ClusterFirstWithHostNet" + description: "ClusterFirstWithHostNet" + - value: "None" + description: "None" + + - variable: dnsConfig + label: "DNS Configuration" + group: "Networking and Services" + description: "Specify custom DNS configuration which will be applied to the pod" + schema: + additional_attrs: true + type: dict + attrs: + - variable: nameservers + label: "Nameservers" + schema: + default: [] + type: list + items: + - variable: nameserver + label: "Nameserver" + schema: + type: string + - variable: options + label: "options" + schema: + default: [] + type: list + items: + - variable: option + label: "Option Entry" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: searches + label: "Searches" + schema: + default: [] + type: list + items: + - variable: search + label: "Search Entry" + schema: + type: string + - variable: serviceList + label: "Add Manual Custom Services" + group: "Networking and Services" + schema: + type: list + default: [] + items: + - variable: serviceListEntry + label: "Custom Service" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable the service" + schema: + type: boolean + default: true + hidden: true + - variable: name + label: "Name" + schema: + type: string + default: "" + - variable: type + label: "Service Type" + description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: "Simple" + enum: + - value: "Simple" + description: "Simple" + - value: "NodePort" + description: "NodePort" + - value: "ClusterIP" + description: "ClusterIP" + - value: "LoadBalancer" + description: "LoadBalancer" + - variable: loadBalancerIP + label: "LoadBalancer IP" + description: "LoadBalancerIP" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: list + default: [] + items: + - variable: externalIP + label: "External IP" + schema: + type: string + - variable: portsList + label: "Additional Service Ports" + schema: + type: list + default: [] + items: + - variable: portsListEntry + label: "Custom ports" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable the port" + schema: + type: boolean + default: true + hidden: true + - variable: name + label: "Port Name" + schema: + type: string + default: "" + - 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: targetPort + label: "Target Port" + description: "This port exposes the container port on the service" + schema: + type: int + required: true + - variable: port + label: "Container Port" + schema: + type: int + required: true + - variable: nodePort + label: "Node Port (Optional)" + description: "This port gets exposed to the node. Only considered when service type is NodePort" + schema: + type: int + min: 9000 + max: 65535 + - variable: persistence + label: "Integrated Persistent Storage" + description: "Integrated Persistent Storage" + group: "Storage and Persistence" + schema: + additional_attrs: true + type: dict + attrs: + - variable: data + label: "App Data Storage" + description: "Stores the Application Data." + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: "Type of Storage" + description: "Sets the persistence type, Anything other than PVC could break rollback!" + schema: + type: string + default: "simplePVC" + enum: + - value: "simplePVC" + description: "PVC (simple)" + - value: "simpleHP" + description: "HostPath (simple)" + - value: "emptyDir" + description: "emptyDir" + - value: "pvc" + description: "pvc" + - value: "hostPath" + description: "hostPath" + - value: "nfs" + description: "NFS Share" + - variable: server + label: "NFS server" + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: path + label: "Path on NFS server" + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: setPermissionsSimple + label: "Automatic Permissions" + description: "Automatically set permissions on install" + schema: + show_if: [["type", "=", "simpleHP"]] + type: boolean + default: true + - variable: setPermissions + label: "Automatic Permissions" + description: "Automatically set permissions on install" + schema: + show_if: [["type", "=", "hostPath"]] + type: boolean + default: true + - variable: readOnly + label: "readOnly" + schema: + type: boolean + default: false + - variable: hostPathSimple + label: "hostPath" + description: "Path inside the container the storage is mounted" + schema: + show_if: [["type", "=", "simpleHP"]] + type: hostpath + - variable: hostPath + label: "hostPath" + description: "Path inside the container the storage is mounted" + schema: + show_if: [["type", "=", "hostPath"]] + type: hostpath + - variable: medium + label: "EmptyDir Medium" + schema: + show_if: [["type", "=", "emptyDir"]] + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "Memory" + description: "Memory" + - variable: size + label: "Size quotum of storage" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "999Gi" + - variable: hostPathType + label: "(Advanced) hostPath Type" + schema: + show_if: [["type", "=", "hostPath"]] + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "DirectoryOrCreate" + description: "DirectoryOrCreate" + - value: "Directory" + description: "Directory" + - value: "FileOrCreate" + description: "FileOrCreate" + - value: "File" + description: "File" + - value: "Socket" + description: "Socket" + - value: "CharDevice" + description: "CharDevice" + - value: "BlockDevice" + description: "BlockDevice" + - variable: storageClass + label: "(Advanced) storageClass" + description: "Warning: Anything other than SCALE-ZFS or empty will break rollback!" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "SCALE-ZFS" + - variable: accessMode + label: "(Advanced) Access Mode" + description: "Allow or disallow multiple PVC's writhing to the same PV" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "ReadWriteOnce" + enum: + - value: "ReadWriteOnce" + description: "ReadWriteOnce" + - value: "ReadOnlyMany" + description: "ReadOnlyMany" + - value: "ReadWriteMany" + description: "ReadWriteMany" + - variable: advanced + label: "Show Advanced Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: labelsList + label: "Labels" + schema: + type: list + default: [] + items: + - variable: labelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: annotationsList + label: "Annotations" + schema: + type: list + default: [] + items: + - variable: annotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: persistenceList + label: "Additional app storage" + group: "Storage and Persistence" + schema: + type: list + default: [] + items: + - variable: persistenceListEntry + label: "Custom Storage" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable the storage" + schema: + type: boolean + default: true + hidden: true + - variable: name + label: "Name (optional)" + description: "Not required, please set to config when mounting /config or temp when mounting /tmp" + schema: + type: string + - variable: type + label: "Type of Storage" + description: "Sets the persistence type, Anything other than PVC could break rollback!" + schema: + type: string + default: "simpleHP" + enum: + - value: "simplePVC" + description: "PVC (simple)" + - value: "simpleHP" + description: "HostPath (simple)" + - value: "emptyDir" + description: "emptyDir" + - value: "pvc" + description: "pvc" + - value: "hostPath" + description: "hostPath" + - value: "nfs" + description: "NFS Share" + - variable: server + label: "NFS server" + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: path + label: "Path on NFS server" + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: setPermissionsSimple + label: "Automatic Permissions" + description: "Automatically set permissions on install" + schema: + show_if: [["type", "=", "simpleHP"]] + type: boolean + default: true + - variable: setPermissions + label: "Automatic Permissions" + description: "Automatically set permissions on install" + schema: + show_if: [["type", "=", "hostPath"]] + type: boolean + default: true + - variable: readOnly + label: "readOnly" + schema: + type: boolean + default: false + - variable: hostPathSimple + label: "hostPath" + description: "Path inside the container the storage is mounted" + schema: + show_if: [["type", "=", "simpleHP"]] + type: hostpath + - variable: hostPath + label: "hostPath" + description: "Path inside the container the storage is mounted" + schema: + show_if: [["type", "=", "hostPath"]] + type: hostpath + - variable: mountPath + label: "mountPath" + description: "Path inside the container the storage is mounted" + schema: + type: string + default: "" + required: true + valid_chars: '^\/([a-zA-Z0-9._-]+(\s?[a-zA-Z0-9._-]+|\/?))+$' + - variable: medium + label: "EmptyDir Medium" + schema: + show_if: [["type", "=", "emptyDir"]] + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "Memory" + description: "Memory" + - variable: size + label: "Size quotum of storage" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "999Gi" + - variable: hostPathType + label: "(Advanced) hostPath Type" + schema: + show_if: [["type", "=", "hostPath"]] + type: string + default: "" + enum: + - value: "" + description: "Default" + - value: "DirectoryOrCreate" + description: "DirectoryOrCreate" + - value: "Directory" + description: "Directory" + - value: "FileOrCreate" + description: "FileOrCreate" + - value: "File" + description: "File" + - value: "Socket" + description: "Socket" + - value: "CharDevice" + description: "CharDevice" + - value: "BlockDevice" + description: "BlockDevice" + - variable: storageClass + label: "(Advanced) storageClass" + description: "Warning: Anything other than SCALE-ZFS or empty will break rollback!" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "SCALE-ZFS" + - variable: accessMode + label: "(Advanced) Access Mode" + description: "Allow or disallow multiple PVC's writhing to the same PV" + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "ReadWriteOnce" + enum: + - value: "ReadWriteOnce" + description: "ReadWriteOnce" + - value: "ReadOnlyMany" + description: "ReadOnlyMany" + - value: "ReadWriteMany" + description: "ReadWriteMany" + - variable: advanced + label: "Show Advanced Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: labelsList + label: "Labels" + schema: + type: list + default: [] + items: + - variable: labelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: annotationsList + label: "Annotations" + schema: + type: list + default: [] + items: + - variable: annotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: ingress + label: "" + group: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable Ingress" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hosts + label: "Hosts" + schema: + type: list + default: [] + items: + - variable: hostEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: host + label: "HostName" + schema: + type: string + default: "" + required: true + - variable: paths + label: "Paths" + schema: + type: list + default: [] + items: + - variable: pathEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: path + label: "path" + schema: + type: string + required: true + default: "/" + - variable: pathType + label: "pathType" + schema: + type: string + required: true + default: "Prefix" + - variable: tls + label: "TLS-Settings" + schema: + type: list + default: [] + items: + - variable: tlsEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: hosts + label: "Certificate Hosts" + schema: + type: list + default: [] + items: + - variable: host + label: "Host" + schema: + type: string + default: "" + required: true + - variable: scaleCert + label: "Select TrueNAS SCALE Certificate" + schema: + type: int + $ref: + - "definitions/certificate" + - variable: entrypoint + label: "(Advanced) Traefik Entrypoint" + description: "Entrypoint used by Traefik when using Traefik as Ingress Provider" + schema: + type: string + default: "websecure" + required: true + - variable: middlewares + label: "Traefik Middlewares" + description: "Add previously created Traefik Middlewares to this Ingress" + schema: + type: list + default: [] + items: + - variable: name + label: "Name" + schema: + type: string + default: "" + required: true + - variable: expert + label: "Show Expert Configuration Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: enableFixedMiddlewares + description: "These middlewares enforce a number of best practices." + label: "Enable Default Middlewares" + schema: + type: boolean + default: true + - variable: ingressClassName + label: "IngressClass Name" + schema: + type: string + default: "" + - variable: labelsList + label: "Labels" + schema: + type: list + default: [] + items: + - variable: labelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: annotationsList + label: "Annotations" + schema: + type: list + default: [] + items: + - variable: annotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: ingressList + label: "Add Manual Custom Ingresses" + group: "Ingress" + schema: + type: list + default: [] + items: + - variable: ingressListEntry + label: "Custom Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable Ingress" + schema: + type: boolean + default: true + hidden: true + - variable: name + label: "Name" + schema: + type: string + default: "" + - variable: ingressClassName + label: "IngressClass Name" + schema: + type: string + default: "" + - variable: labelsList + label: "Labels" + schema: + type: list + default: [] + items: + - variable: labelItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: annotationsList + label: "Annotations" + schema: + type: list + default: [] + items: + - variable: annotationItem + label: "Label" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: hosts + label: "Hosts" + schema: + type: list + default: [] + items: + - variable: hostEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: host + label: "HostName" + schema: + type: string + default: "" + required: true + - variable: paths + label: "Paths" + schema: + type: list + default: [] + items: + - variable: pathEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: path + label: "path" + schema: + type: string + required: true + default: "/" + - variable: pathType + label: "pathType" + schema: + type: string + required: true + default: "Prefix" + - variable: service + label: "Linked Service" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Service Name" + schema: + type: string + default: "" + - variable: port + label: "Service Port" + schema: + type: int + - variable: tls + label: "TLS-Settings" + schema: + type: list + default: [] + items: + - variable: tlsEntry + label: "Host" + schema: + additional_attrs: true + type: dict + attrs: + - variable: hosts + label: "Certificate Hosts" + schema: + type: list + default: [] + items: + - variable: host + label: "Host" + schema: + type: string + default: "" + required: true + - variable: scaleCert + label: "Select TrueNAS SCALE Certificate" + schema: + type: int + $ref: + - "definitions/certificate" + - variable: entrypoint + label: "Traefik Entrypoint" + description: "Entrypoint used by Traefik when using Traefik as Ingress Provider" + schema: + type: string + default: "websecure" + required: true + - variable: middlewares + label: "Traefik Middlewares" + description: "Add previously created Traefik Middlewares to this Ingress" + schema: + type: list + default: [] + items: + - variable: name + label: "Name" + schema: + type: string + default: "" + required: true + - variable: security + label: "Container Security Settings" + group: "Security and Permissions" + schema: + type: dict + additional_attrs: true + attrs: + - variable: editsecurity + label: "Change PUID / UMASK values" + description: "By enabling this you override default set values." + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: PUID + label: "Process User ID - PUID" + description: "When supported by the container, this sets the User ID running the Application Process. Not supported by all Apps" + schema: + type: int + default: 568 + - variable: UMASK + label: "UMASK" + description: "When supported by the container, this sets the UMASK for tha App. Not supported by all Apps" + schema: + type: string + default: "002" + - 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 + - variable: capabilities + label: "Capabilities" + schema: + additional_attrs: true + type: dict + attrs: + - variable: drop + label: "Drop Capability" + schema: + type: list + default: [] + items: + - variable: dropEntry + label: "" + schema: + type: string + - variable: add + label: "Add Capability" + schema: + type: list + default: [] + items: + - variable: addEntry + label: "" + schema: + type: string + - 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 + - variable: fsGroupChangePolicy + label: "When should we take ownership?" + schema: + type: string + default: "OnRootMismatch" + enum: + - value: "OnRootMismatch" + description: "OnRootMismatch" + - value: "Always" + description: "Always" + - variable: supplementalGroups + label: "supplemental Groups" + schema: + type: list + default: [] + items: + - variable: supplementalGroupsEntry + label: "supplemental Group" + schema: + type: int + + - variable: advancedresources + label: "Set Custom Resource Limits/Requests (Advanced)" + group: "Resources and Devices" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: resources + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: limits + label: "Advanced Limit Resource Consumption" + schema: + additional_attrs: true + type: dict + attrs: + - variable: cpu + label: "CPU" + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/indepth/validation/" + schema: + type: string + default: "4000m" + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: "RAM" + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/indepth/validation/" + schema: + type: string + default: "8Gi" + valid_chars: '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$' + - variable: requests + label: "Minimum Resources Required (request)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: cpu + label: "CPU" + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/indepth/validation/" + schema: + type: string + default: "10m" + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: "RAM" + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/manual/indepth/validation/" + schema: + type: string + default: "50Mi" + valid_chars: '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$' + + - variable: deviceList + label: "Mount USB devices" + group: "Resources and Devices" + schema: + type: list + default: [] + items: + - variable: deviceListEntry + label: "Device" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "Enable the storage" + schema: + type: boolean + default: true + - variable: type + label: "(Advanced) Type of Storage" + description: "Sets the persistence type" + schema: + type: string + default: "hostPath" + hidden: true + - variable: readOnly + label: "readOnly" + schema: + type: boolean + default: false + - variable: hostPath + label: "Host Device Path" + description: "Path to the device on the host system" + schema: + type: path + - variable: mountPath + label: "Container Device Path" + description: "Path inside the container the device is mounted" + schema: + type: string + default: "/dev/ttyACM0" + + # Specify GPU configuration + - variable: scaleGPU + label: "GPU Configuration" + group: "Resources and Devices" + schema: + type: dict + $ref: + - "definitions/gpuConfiguration" + attrs: [] +# - variable: autoscaling +# group: "Advanced" +# label: "(Advanced) Horizontal Pod Autoscaler" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: enabled +# label: "enabled" +# schema: +# type: boolean +# default: false +# show_subquestions_if: true +# subquestions: +# - variable: target +# label: "Target" +# description: "deployment name, defaults to main deployment" +# schema: +# type: string +# default: "" +# - variable: minReplicas +# label: "Minimum Replicas" +# schema: +# type: int +# default: 1 +# - variable: maxReplicas +# label: "Maximum Replicas" +# schema: +# type: int +# default: 5 +# - variable: targetCPUUtilizationPercentage +# label: "Target CPU Utilization Percentage" +# schema: +# type: int +# default: 80 +# - variable: targetMemoryUtilizationPercentage +# label: "Target Memory Utilization Percentage" +# schema: +# type: int +# default: 80 +# - variable: networkPolicy +# group: "Advanced" +# label: "(Advanced) Network Policy" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: enabled +# label: "enabled" +# schema: +# type: boolean +# default: false +# show_subquestions_if: true +# subquestions: +# - variable: policyType +# label: "Policy Type" +# schema: +# type: string +# default: "" +# enum: +# - value: "" +# description: "Default" +# - value: "ingress" +# description: "Ingress" +# - value: "egress" +# description: "Egress" +# - value: "ingress-egress" +# description: "Ingress and Egress" +# - variable: egress +# label: "Egress" +# schema: +# type: list +# default: [] +# items: +# - variable: egressEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: to +# label: "To" +# schema: +# type: list +# default: [] +# items: +# - variable: toEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: ipBlock +# label: "ipBlock" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: cidr +# label: "cidr" +# schema: +# type: string +# default: "" +# - variable: except +# label: "except" +# schema: +# type: list +# default: [] +# items: +# - variable: exceptint +# label: "" +# schema: +# type: string +# - variable: namespaceSelector +# label: "namespaceSelector" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: "matchExpressions" +# schema: +# type: list +# default: [] +# items: +# - variable: expressionEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: key +# label: "Key" +# schema: +# type: string +# - variable: operator +# label: "operator" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "In" +# description: "In" +# - value: "NotIn" +# description: "NotIn" +# - value: "Exists " +# description: "Exists " +# - value: "DoesNotExist " +# description: "DoesNotExist " +# - variable: values +# label: "values" +# schema: +# type: list +# default: [] +# items: +# - variable: value +# label: "" +# schema: +# type: string +# - variable: podSelector +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: "matchExpressions" +# schema: +# type: list +# default: [] +# items: +# - variable: expressionEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: key +# label: "Key" +# schema: +# type: string +# - variable: operator +# label: "operator" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "In" +# description: "In" +# - value: "NotIn" +# description: "NotIn" +# - value: "Exists " +# description: "Exists " +# - value: "DoesNotExist " +# description: "DoesNotExist " +# - variable: values +# label: "values" +# schema: +# type: list +# default: [] +# items: +# - variable: value +# label: "" +# schema: +# type: string +# - variable: ports +# label: "Ports" +# schema: +# type: list +# default: [] +# items: +# - variable: portsEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: port +# label: "port" +# schema: +# type: int +# - variable: endPort +# label: "port" +# schema: +# type: int +# - variable: protocol +# label: "Protocol" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "TCP" +# description: "TCP" +# - value: "UDP" +# description: "UDP" +# - value: "SCTP" +# description: "SCTP" +# - variable: ingress +# label: "Ingress" +# schema: +# type: list +# default: [] +# items: +# - variable: ingressEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: from +# label: "From" +# schema: +# type: list +# default: [] +# items: +# - variable: fromEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: ipBlock +# label: "ipBlock" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: cidr +# label: "cidr" +# schema: +# type: string +# default: "" +# - variable: except +# label: "except" +# schema: +# type: list +# default: [] +# items: +# - variable: exceptint +# label: "" +# schema: +# type: string +# - variable: namespaceSelector +# label: "namespaceSelector" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: "matchExpressions" +# schema: +# type: list +# default: [] +# items: +# - variable: expressionEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: key +# label: "Key" +# schema: +# type: string +# - variable: operator +# label: "operator" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "In" +# description: "In" +# - value: "NotIn" +# description: "NotIn" +# - value: "Exists " +# description: "Exists " +# - value: "DoesNotExist " +# description: "DoesNotExist " +# - variable: values +# label: "values" +# schema: +# type: list +# default: [] +# items: +# - variable: value +# label: "" +# schema: +# type: string +# - variable: podSelector +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: matchExpressions +# label: "matchExpressions" +# schema: +# type: list +# default: [] +# items: +# - variable: expressionEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: key +# label: "Key" +# schema: +# type: string +# - variable: operator +# label: "operator" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "In" +# description: "In" +# - value: "NotIn" +# description: "NotIn" +# - value: "Exists " +# description: "Exists " +# - value: "DoesNotExist " +# description: "DoesNotExist " +# - variable: values +# label: "values" +# schema: +# type: list +# default: [] +# items: +# - variable: value +# label: "" +# schema: +# type: string +# - variable: ports +# label: "Ports" +# schema: +# type: list +# default: [] +# items: +# - variable: portsEntry +# label: "" +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: port +# label: "port" +# schema: +# type: int +# - variable: endPort +# label: "port" +# schema: +# type: int +# - variable: protocol +# label: "Protocol" +# schema: +# type: string +# default: "TCP" +# enum: +# - value: "TCP" +# description: "TCP" +# - value: "UDP" +# description: "UDP" +# - value: "SCTP" +# description: "SCTP" + + - variable: addons + group: "Addons" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: vpn + label: "VPN" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: "Type" + schema: + type: string + default: "disabled" + enum: + - value: "disabled" + description: "disabled" + - value: "openvpn" + description: "OpenVPN" + - value: "wireguard" + description: "Wireguard" + - variable: openvpn + label: "OpenVPN Settings" + schema: + type: dict + show_if: [["type", "=", "openvpn"]] + attrs: + - variable: username + label: "authentication username" + description: "authentication username, optional" + schema: + type: string + default: "" + - variable: password + label: "authentication password" + description: "authentication credentials" + schema: + type: string + default: "" + required: true + - variable: killSwitch + label: "Enable killswitch" + schema: + type: boolean + show_if: [["type", "!=", "disabled"]] + default: true + - variable: excludedNetworks_IPv4 + label: "Killswitch Excluded IPv4 networks" + description: "list of killswitch excluded ipv4 addresses" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: networkv4 + label: "IPv4 Network" + schema: + type: string + required: true + - variable: excludedNetworks_IPv6 + label: "Killswitch Excluded IPv6 networks" + description: "list of killswitch excluded ipv4 addresses" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: networkv6 + label: "IPv6 Network" + schema: + type: string + required: true + + - variable: configFile + label: "VPN Config File Location" + schema: + type: dict + show_if: [["type", "!=", "disabled"]] + attrs: + - variable: enabled + label: "enabled" + schema: + type: boolean + default: true + hidden: true + - variable: type + label: "type" + schema: + type: string + default: "hostPath" + hidden: true + - variable: hostPathType + label: "hostPathType" + schema: + type: string + default: "File" + hidden: true + - variable: noMount + label: "noMount" + schema: + type: boolean + default: true + hidden: true + - variable: hostPath + label: "Full path to file" + description: "path to your local VPN config file for example: /mnt/tank/vpn.conf or /mnt/tank/vpn.ovpn" + schema: + type: string + default: "" + required: true + - variable: envList + label: "VPN environment Variables" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: "Environment Variable" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + required: true + + - variable: codeserver + label: "Codeserver" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "enabled" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: git + label: "Git Settings" + schema: + additional_attrs: true + type: dict + attrs: + - variable: deployKey + description: "Raw SSH private key" + label: "deployKey" + schema: + type: string + - variable: deployKeyBase64 + description: "Base64-encoded SSH private key. When both variables are set, the raw SSH key takes precedence" + label: "deployKeyBase64" + schema: + type: string + - variable: service + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: "Service Type" + description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: "NodePort" + enum: + - value: "NodePort" + description: "NodePort" + - value: "ClusterIP" + description: "ClusterIP" + - value: "LoadBalancer" + description: "LoadBalancer" + - variable: loadBalancerIP + label: "LoadBalancer IP" + description: "LoadBalancerIP" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: list + default: [] + items: + - variable: externalIP + label: "External IP" + schema: + type: string + - variable: ports + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: codeserver + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: nodePort + description: "leave empty to disable" + label: "nodePort" + schema: + type: int + default: 36107 + - variable: envList + label: "Codeserver environment Variables" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: "Environment Variable" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + required: true + + + - variable: promtail + label: "Promtail" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "enabled" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: loki + label: "Loki URL" + schema: + type: string + required: true + - variable: logs + label: "Log Paths" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: path + label: "Path" + schema: + type: string + required: true + - variable: args + label: "Promtail ecommand line arguments" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: arg + label: "Arg" + schema: + type: string + required: true + - variable: envList + label: "Promtail environment Variables" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: "Environment Variable" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + required: true + + + + + - variable: netshoot + label: "Netshoot" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: "enabled" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: envList + label: "Netshoot environment Variables" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: "Environment Variable" + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + required: true diff --git a/incubator/zusam/0.0.1/templates/common.yaml b/incubator/zusam/0.0.1/templates/common.yaml new file mode 100644 index 00000000000..c1a366e1cf0 --- /dev/null +++ b/incubator/zusam/0.0.1/templates/common.yaml @@ -0,0 +1 @@ +{{ include "tc.common.loader.all" . }} diff --git a/incubator/zusam/0.0.1/values.yaml b/incubator/zusam/0.0.1/values.yaml new file mode 100644 index 00000000000..e69de29bb2d diff --git a/incubator/zusam/item.yaml b/incubator/zusam/item.yaml new file mode 100644 index 00000000000..1053fa09095 --- /dev/null +++ b/incubator/zusam/item.yaml @@ -0,0 +1,4 @@ +icon_url: https://truecharts.org/img/chart-icons/zusam.png +categories: +- chat +