From afa8a5afc3cd1b3e920766ab8a26f70f1dde3468 Mon Sep 17 00:00:00 2001 From: TrueCharts-Bot Date: Sun, 28 Apr 2024 07:13:30 +0000 Subject: [PATCH] Commit new Chart releases for TrueCharts Signed-off-by: TrueCharts-Bot --- stable/archivebox/2.0.0/.helmignore | 30 + stable/archivebox/2.0.0/CHANGELOG.md | 3 + stable/archivebox/2.0.0/Chart.yaml | 39 + stable/archivebox/2.0.0/README.md | 56 + stable/archivebox/2.0.0/app-changelog.md | 9 + stable/archivebox/2.0.0/app-readme.md | 8 + .../2.0.0/charts/common-20.3.12.tgz | Bin 0 -> 99407 bytes stable/archivebox/2.0.0/icon-small.webp | Bin 0 -> 346 bytes stable/archivebox/2.0.0/icon.webp | Bin 0 -> 1268 bytes stable/archivebox/2.0.0/ix_values.yaml | 45 + stable/archivebox/2.0.0/questions.yaml | 2980 +++++++++++++++++ stable/archivebox/2.0.0/templates/NOTES.txt | 1 + stable/archivebox/2.0.0/templates/common.yaml | 5 + stable/archivebox/2.0.0/values.yaml | 0 stable/archivebox/item.yaml | 4 + 15 files changed, 3180 insertions(+) create mode 100644 stable/archivebox/2.0.0/.helmignore create mode 100644 stable/archivebox/2.0.0/CHANGELOG.md create mode 100644 stable/archivebox/2.0.0/Chart.yaml create mode 100644 stable/archivebox/2.0.0/README.md create mode 100644 stable/archivebox/2.0.0/app-changelog.md create mode 100644 stable/archivebox/2.0.0/app-readme.md create mode 100644 stable/archivebox/2.0.0/charts/common-20.3.12.tgz create mode 100644 stable/archivebox/2.0.0/icon-small.webp create mode 100644 stable/archivebox/2.0.0/icon.webp create mode 100644 stable/archivebox/2.0.0/ix_values.yaml create mode 100755 stable/archivebox/2.0.0/questions.yaml create mode 100644 stable/archivebox/2.0.0/templates/NOTES.txt create mode 100644 stable/archivebox/2.0.0/templates/common.yaml create mode 100644 stable/archivebox/2.0.0/values.yaml create mode 100644 stable/archivebox/item.yaml diff --git a/stable/archivebox/2.0.0/.helmignore b/stable/archivebox/2.0.0/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/stable/archivebox/2.0.0/.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/stable/archivebox/2.0.0/CHANGELOG.md b/stable/archivebox/2.0.0/CHANGELOG.md new file mode 100644 index 00000000000..941abb8a218 --- /dev/null +++ b/stable/archivebox/2.0.0/CHANGELOG.md @@ -0,0 +1,3 @@ +*for the complete changelog, please refer to the website* + +**Important:** \ No newline at end of file diff --git a/stable/archivebox/2.0.0/Chart.yaml b/stable/archivebox/2.0.0/Chart.yaml new file mode 100644 index 00000000000..9e3c04ff930 --- /dev/null +++ b/stable/archivebox/2.0.0/Chart.yaml @@ -0,0 +1,39 @@ +annotations: + max_scale_version: 24.04.0 + min_scale_version: 23.10.0 + truecharts.org/SCALE-support: "true" + truecharts.org/category: bookmarks + truecharts.org/max_helm_version: "3.14" + truecharts.org/min_helm_version: "3.11" + truecharts.org/train: stable +apiVersion: v2 +appVersion: latest +dependencies: + - name: common + version: 20.3.12 + repository: oci://tccr.io/truecharts + condition: "" + alias: "" + tags: [] + import-values: [] +deprecated: false +description: ArchiveBox is an open-source, self-hosted internet archiving solution. +home: https://truecharts.org/charts/stable/archivebox +icon: https://truecharts.org/img/hotlink-ok/chart-icons/archivebox.webp +keywords: + - archivebox + - archiving + - digipres + - backup +kubeVersion: ">=1.24.0-0" +maintainers: + - name: TrueCharts + email: info@truecharts.org + url: https://truecharts.org +name: archivebox +sources: + - https://github.com/ArchiveBox/ArchiveBox + - https://github.com/truecharts/charts/tree/master/charts/stable/archivebox + - https://hub.docker.com/r/archivebox/archivebox +type: application +version: 2.0.0 diff --git a/stable/archivebox/2.0.0/README.md b/stable/archivebox/2.0.0/README.md new file mode 100644 index 00000000000..f04f9497ff7 --- /dev/null +++ b/stable/archivebox/2.0.0/README.md @@ -0,0 +1,56 @@ +--- +title: README +--- + +## General Info + +TrueCharts can be installed as both _normal_ Helm Charts or as TrueNAS SCALE Apps. +Both solutions are fully supported, but we heavily advice the use of normal Helm Charts where possible + +For more information about this Chart, please check the docs on the TrueCharts [website](https://truecharts.org/charts/incubator/archivebox) + +**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)** + +## Installation + +### Helm-Chart installation + +To install TrueCharts Helm charts using Helm, you can use our OCI Repository. + +`helm install mychart oci://tccr.io/truecharts/CHARTNAME` + +For more information on how to install TrueCharts Helm charts, checkout the instructions on the website: https://truecharts.org/helm/ + + +### TrueNAS SCALE Apps + +For more information on how to use TrueCharts as TrueNAS SCALE Apps, please checkout the [quick-start guides for TrueNAS SCALE](https://truecharts.org/scale/guides/scale-intro). + +## Configuration Options + +To view the chart specific options, please view Values.yaml included in the chart. + +All our Charts use a shared "common" library chart that contains most of the templating and options. +For the complete overview of all available options, please checkout the documentation for them on the website: https://truecharts.org/common/ + +## Chart Specific Guides and information + +All our charts have dedicated documentation pages. +The documentation for this chart can be found here: +https://truecharts.org/charts/incubator/archivebox + +## Support + + +- See the [Website](https://truecharts.org) +- Check our [Discord](https://discord.gg/tVsPTHWTtr) +- Open a [issue](https://github.com/truecharts/charts/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/general/sponsor) or contributing back to the project any way you can! + +_All Rights Reserved - The TrueCharts Project_ diff --git a/stable/archivebox/2.0.0/app-changelog.md b/stable/archivebox/2.0.0/app-changelog.md new file mode 100644 index 00000000000..f4bb19885bc --- /dev/null +++ b/stable/archivebox/2.0.0/app-changelog.md @@ -0,0 +1,9 @@ + + +## [archivebox-2.0.0](https://github.com/truecharts/charts/compare/archivebox-1.1.2...archivebox-2.0.0) (2024-04-28) + +### Feat + + + +- move from incubator to stable ([#21437](https://github.com/truecharts/charts/issues/21437)) \ No newline at end of file diff --git a/stable/archivebox/2.0.0/app-readme.md b/stable/archivebox/2.0.0/app-readme.md new file mode 100644 index 00000000000..3bfe2b43a2f --- /dev/null +++ b/stable/archivebox/2.0.0/app-readme.md @@ -0,0 +1,8 @@ +ArchiveBox is an open-source, self-hosted internet archiving solution. + +This App is supplied by TrueCharts, for more information visit the manual: [https://truecharts.org/charts/stable/archivebox](https://truecharts.org/charts/stable/archivebox) + +--- + +TrueCharts can only exist due to the incredible effort of our staff. +Please consider making a [donation](https://truecharts.org/sponsor) or contributing back to the project any way you can! diff --git a/stable/archivebox/2.0.0/charts/common-20.3.12.tgz b/stable/archivebox/2.0.0/charts/common-20.3.12.tgz new file mode 100644 index 0000000000000000000000000000000000000000..621bd9e5a5277eda78f0f106b46b6afdc6f56acd GIT binary patch literal 99407 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
    iZ#x$K}*@0J4scA@_XsWr>MiG1UB+r_n|MJ)K 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 S{{H{~0RR7!&lutWS_}Y48_RhB literal 0 HcmV?d00001 diff --git a/stable/archivebox/2.0.0/icon-small.webp b/stable/archivebox/2.0.0/icon-small.webp new file mode 100644 index 0000000000000000000000000000000000000000..def6b3c19d69911283fe1bae862af5a72bc0c167 GIT binary patch literal 346 zcmV-g0j2&@Nk&Fe0RRA3MM6+kP&il$0000G0000V0018V06|PpNLBy<00Ced+qS7@ zUK6j}&)l|c|6+c8-$xt~6M(zxJoar{mwB4TVd%TAZJVa9tEw!E1WPxtWm;>g4 z`Hu^JkNM>)R1tI_dBJei_ffztY5*#s6iX~kW0B8Y3 zAW5VIHV9Av5VxnWD1xN-UTTDQ0qu6gDK`Kl0!c@jW}!H!CC3Ypmc9cb(j|gUS&SP& zCDBgUBWQuzW_wL&NNfbLhwMvw90N&EgAie5F0fLUBs_s^vDLH+0QLH52mn!xwzN(t zrCXW>C`GUWU2FltQW(qg9x|ZP2k5akh`@;x(Fae^fZJ*9=%Wq)O^5^^LlRv}lFtV()_DPgga5OhBY z64a|%eY z+Al~>NhGTz(lFJ~%BwYSv6@qWa%xVIVs-Latj>Z2I^gbDO8T5)Oqo$@U}s4O+#OR+ z%_-vQ8l7-XDN`q(&J_QOo&}Yv-Lbfml=eAAI-mryYQG?!s!}mzt%`hd*gj&%_Bjk{ zBX*kL<}zuQ5g;TJfNB+p{;d>XiIGS)9*~Tapu6$hQ{R2J?0*_1*;qg%@YHh+APD@S zla3)9H}p{I-TSNiP6HeM6#xJL09H^qAff^Q08kbHodGJA0G0qgaVn2Tq@tlAJHU_* z2~FFp{1tP#XXd}!m3-`)Wgo^mFuk1e8=MgQuIM5bJlQPvk@#~c>Pn->I@OP)vJZI<9s~QjfPCIE ziy=F=st_F(;s33Cq^GqkN=2}7%lKGlug3-aLtmyP$~l5?j4y2dg#+wXk$e(0s0W*HZCV>z@%8@gw3FR<*DV@H|(|yjpg=FAbPj{fJeT6=F6x*_~SL` zc03nD${ e4uTT2#M;}(QJbW(AyVqzhpG2w&Ty7Zq`(0C%T&Gq literal 0 HcmV?d00001 diff --git a/stable/archivebox/2.0.0/ix_values.yaml b/stable/archivebox/2.0.0/ix_values.yaml new file mode 100644 index 00000000000..3b02861da65 --- /dev/null +++ b/stable/archivebox/2.0.0/ix_values.yaml @@ -0,0 +1,45 @@ +image: + repository: archivebox/archivebox + pullPolicy: IfNotPresent + tag: latest@sha256:7b00a9db94cff768f4f17d18742724136435501e359a1c5127b5fb062000f6e3 + +config: + admin_username: "admin" + admin_password: "changeme" + +securityContext: + container: + readOnlyRootFilesystem: false + runAsNonRoot: false + runAsGroup: 0 + runAsUser: 0 + +service: + main: + ports: + main: + port: 9598 + protocol: http + targetPort: 8000 + +workload: + main: + podSpec: + containers: + main: + probes: + liveness: + type: http + path: /health/ + env: + ADMIN_USERNAME: "{{ .Values.config.admin_username }}" + ADMIN_PASSWORD: "{{ .Values.config.admin_password }}" + +persistence: + data: + enabled: true + mountPath: "/data" + +portal: + open: + enabled: true diff --git a/stable/archivebox/2.0.0/questions.yaml b/stable/archivebox/2.0.0/questions.yaml new file mode 100755 index 00000000000..7dc8232afea --- /dev/null +++ b/stable/archivebox/2.0.0/questions.yaml @@ -0,0 +1,2980 @@ +groups: + - name: Image + description: | + Configured the images to be used for the Chart. + It's wise to use "digest pinned" tags and to avoid using "latest". + + Checkout the following documentation for more information: + - https://truecharts.org/common/#images + + + - name: General + description: | + For TrueNAS SCALE We've grouped a number of settings here, that all effact how apps run in general. + + Checkout the following documentation for more information: + - https://truecharts.org/common/global/ + - https://truecharts.org/common/#tz + - https://truecharts.org/common/podoptions/ + - Image Pull Secrets + + + - name: Workload + description: | + These settings configure how the actual Pods and containers are running. + Generally, on SCALE, we only expose a limited subset of these settings for the primary workload and container. + + Checkout the following documentation for more information: + - https://truecharts.org/common/workload/ + - https://truecharts.org/common/container/ + + + - name: App Configuration + description: | + Every application has different values that may be required to run or have multiple options that the user may choose to enable or disable to change the behavior of the application. + Most options should have a Tooltip (Circled Question Mark) to further describe said option. + + To find more information, lookup your chart-specific documentation in the Charts List: https://truecharts.org/charts/description-list/ + + - name: Services + description: | + Service and Networking options for any applications are contained here. + Some applications may have complicated networking setups with multiple options or some may have no options here at all. + + Options here include the service and port configurations for the application, and more may be enabled or changed under the Advanced Settings and Show Expert Config boxes. + + Checkout the following documentation for more information: + - https://truecharts.org/common/service/ + + - name: Networking + description: | + Contains advanced networking options that are not actively supported by the TrueCharts team. + Currently only contains scaleExternalInterfaces. + + Checkout the following documentation for more information: + - https://truecharts.org/common/scaleexternalinterface/ + + - name: Persistence + description: | + Many applications will have certain options for storage to be configurable by the user, the main two being PVC and hostpath but may include other types. + This storage is called Persistence since it is not deleted upon restart or upgrade of an application. + + Checkout the following documentation for more information: + - https://truecharts.org/common/persistence/ + - https://truecharts.org/scale/guides/nfs-share/ + - https://truecharts.org/general/faq/#why-pvc-is-recommended-over-hostpath + + + - name: Ingress + description: | + Ingress (more commonly known as Reverse Proxy) settings can be configured here. This is how Kubernetes connects your Applications in containers to FQDNs (fully qualified domain names). + If you choose to enable this you must have a "Ingress Provider" aka "Reverse Proxy" installed (We highly advice Traefik: https://truecharts.org/charts/premium/traefik/) + It also requiresa DNS service to actually resolve the DNS name of the FQDN specified. + + Checkout the following documentation for more information: + - https://truecharts.org/common/ingress/ + + + - name: SecurityContext + description: | + The security settings for each application and/or permissions that each application may have for the files/directories created. + Each application will come with predefined permissions but users may want to change certain setting depending on their usage or capabilities. + + Unless necessary users are advised to keep this section mostly to defaults. + + Checkout the following documentation for more information: + - https://truecharts.org/common/securitycontext/ + + + - name: Resources + description: | + Resources limits that have been defined by each application are in this section. + Most will have a specific default that some users may want to change based on their specific hardware or needs. + + This also contains the options to mount GPUs or, more precisely, "request" GPU's to be mounted. + + Checkout the following documentation for more information: + - https://truecharts.org/common/resources/ + + - name: Devices + description: | + These are special "mountpoints" that can be used to mount miscelanious USB and PCI devices using special hostPath mounts. + For clearity we've decided to seperate this from persistence on SCALE. + + Checkout the following documentation for more information: + - https://truecharts.org/common/persistence/device/ + - https://truecharts.org/scale/guides/pci-passthrough/ + + - name: Middlewares + description: Traefik Middlewares + + - name: StorageClass + description: | + StorageClasses define where to storage Storage. + + Checkout the following documentation for more information: + + - name: Metrics + description: | + Contains options to configure Prometheus metrics for the application. + + Checkout the following documentation for more information: + - https://truecharts.org/common/metrics/ + + + - name: Addons + description: | + Addons that are supplied by the TrueCharts team to add additional capabilities for users to use on top of the application’s defaults. + Things included here are VPN addons, Codeserver for editing files inside the application’s container, Netshoot for network troubelshooting, etc. + + Generally not required for use but may be necessary or usefull at times for specific applications. + + Checkout the following documentation for more information: + - https://truecharts.org/common/addons/ + - https://truecharts.org/scale/guides/vpn-setup/ + + + - name: Experimental + description: | + Experimental Configuration Options + Often these are not fully flushed-out, could randomly break or might not work at-all. + + - name: Postgresql + description: | + For Postgresql we use "CloudNative-PG" as a backend, which has to be installed first. + + Checkout the following documentation for more information: + - https://truecharts.org/common/cnpg/ + - https://truecharts.org/scale/guides/sql-export/ + - https://truecharts.org/scale/guides/recover-cnpg/ + + - name: Dependencies + description: | + contains dependency setting for which we, currently, do not have seperate catagories (yet) + + + - name: Documentation + description: | + We added this section to make everyone aware that OpenSource isn't always easy. + It doesn't keep existing without signficant ongoing support, so please consider supporting TrueCharts and other OpenSource projects. + + Before installing, be sure you've followed the https://truecharts.org/scale/guides/getting-started/ + We would also advice going over our https://truecharts.org/scale/guides/scale-intro/ + and many of the other documentation pages... + +portals: + open: + protocols: + - "$kubernetes-resource_configmap_tcportal-open_protocol" + host: + - "$kubernetes-resource_configmap_tcportal-open_host" + ports: + - "$kubernetes-resource_configmap_tcportal-open_port" + +questions: + - variable: global + group: General + label: "Global Settings" + schema: + additional_attrs: true + type: dict + attrs: + - variable: stopAll + label: Stop All + description: "Stops All Running pods and hibernates cnpg" + schema: + type: boolean + default: false + + - variable: workload + group: "Workload" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "" + schema: + additional_attrs: true + type: dict + attrs: + + - variable: type + label: Type (Advanced) + schema: + type: string + default: Deployment + enum: + - value: Deployment + description: Deployment + - value: DaemonSet + description: DaemonSet + + - variable: replicas + label: Replicas (Advanced) + description: Set the number of Replicas + schema: + type: int + show_if: [["type", "!=", "DaemonSet"]] + default: 1 + + - variable: podSpec + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: containers + label: Containers + schema: + additional_attrs: true + type: dict + attrs: + + - variable: main + label: Main Container + schema: + additional_attrs: true + type: dict + attrs: + + - variable: envList + label: Extra Environment Variables + description: "Please be aware that some variables are set in the background, adding duplicates here might cause issues or prevent the app from starting..." + 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: extraArgs + label: Extra Args + schema: + type: list + default: [] + items: + - variable: arg + label: Arg + schema: + type: string + + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: command + label: Command + schema: + type: list + default: [] + items: + - variable: param + label: Param + schema: + type: string + + - variable: TZ + label: Timezone + group: "General" + schema: + type: string + default: "Etc/UTC" + $ref: + - "definitions/timezone" + + - variable: podOptions + group: "General" + label: "Global Pod Options (Advanced)" + schema: + additional_attrs: true + type: dict + attrs: + - variable: expertPodOpts + label: "Expert - Pod Options" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + label: "Host Networking" + schema: + type: boolean + default: false + - variable: dnsConfig + label: "DNS Configuration" + schema: + type: dict + additional_attrs: true + attrs: + - variable: options + label: "Options" + schema: + type: list + default: [{"name": "ndots", "value": "1"}] + items: + - variable: optionsEntry + label: "Option Entry" + schema: + type: dict + additional_attrs: true + attrs: + - variable: name + label: "Name" + schema: + type: string + required: true + - variable: value + label: "Value" + schema: + type: string + - variable: nameservers + label: "Nameservers" + schema: + type: list + default: [] + items: + - variable: nsEntry + label: "Nameserver Entry" + schema: + type: string + required: true + - variable: searches + label: "Searches" + schema: + type: list + default: [] + items: + - variable: searchEntry + label: "Search Entry" + schema: + type: string + required: true + + - variable: imagePullSecretList + group: "General" + label: "Image Pull Secrets" + schema: + type: list + default: [] + items: + - variable: pullsecretentry + label: "Pull Secret" + schema: + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: Enabled + schema: + type: boolean + default: true + - variable: data + label: Data + schema: + type: dict + additional_attrs: true + attrs: + - variable: registry + label: "Registry" + schema: + type: string + required: true + default: "https://index.docker.io/v1/" + - variable: username + label: "Username" + schema: + type: string + required: true + default: "" + - variable: password + label: "Password" + schema: + type: string + required: true + private: true + default: "" + - variable: email + label: "Email" + schema: + type: string + required: true + default: "" + + - variable: config + label: "" + group: "App Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: admin_username + label: "Admin Username" + description: "This is the initial admin user's username to create." + schema: + type: string + default: "admin" + - variable: admin_password + label: "Admin Password" + description: "This is the initial admin user's password to create." + schema: + type: string + default: "changeme" + - variable: service + group: 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 and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: LoadBalancer + description: LoadBalancer (Expose Ports) + - value: ClusterIP + description: ClusterIP (Do Not Expose Ports) + + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: ports + label: "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: 9598 + required: true + - variable: scaleExternalInterface + description: 'Add External Interfaces (Experimental, might change or be removed without further notice)' + label: Add external Interfaces (Experimental) + group: Networking + schema: + type: list + items: + - variable: interfaceConfiguration + description: Interface Configuration + label: Interface Configuration + schema: + additional_attrs: true + 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: + additional_attrs: true + 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 + - variable: staticIPConfigurations + label: Static IP Addresses + schema: + type: list + show_if: [["type", "=", "static"]] + items: + - variable: staticIP + label: Static IP + schema: + type: ipaddr + cidr: true + - variable: staticRoutes + label: Static Routes + schema: + type: list + show_if: [["type", "=", "static"]] + 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: serviceList + label: Add Manual Custom Services + group: 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 and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: LoadBalancer + description: LoadBalancer (Expose Ports) + - value: ClusterIP + description: ClusterIP (Do Not Expose Ports) + - value: Simple + description: Deprecated CHANGE THIS + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: advancedsvcset + label: Show Advanced Service Settings + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + type: list + default: [] + items: + - variable: externalIP + label: External IP + schema: + type: string + - variable: ipFamilyPolicy + label: IP Family Policy + description: Specify the IP Policy + schema: + type: string + default: SingleStack + enum: + - value: SingleStack + description: SingleStack + - value: PreferDualStack + description: PreferDualStack + - value: RequireDualStack + description: RequireDualStack + - variable: ipFamilies + label: IP Families + description: (Advanced) The IP Families that should be used + schema: + type: list + default: [] + items: + - variable: ipFamily + label: IP Family + 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: persistence + label: Integrated Persistent Storage + description: Integrated Persistent Storage + group: 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: pvc + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - value: nfs + description: NFS Share + - value: iscsi + description: iSCSI 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: iscsi + label: iSCSI Options + schema: + show_if: [["type", "=", "iscsi"]] + type: dict + additional_attrs: true + attrs: + - variable: targetPortal + label: targetPortal + schema: + type: string + required: true + default: "" + - variable: iqn + label: iqn + schema: + type: string + required: true + default: "" + - variable: lun + label: lun + schema: + type: int + default: 0 + - variable: authSession + label: authSession + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: authDiscovery + label: authDiscovery + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + + - variable: autoPermissions + label: Automatic Permissions Configuration + description: Automatically set permissions + schema: + show_if: [["type", "!=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: chown + label: Run CHOWN + description: | + It will run CHOWN on the path with the given fsGroup + schema: + type: boolean + default: false + - variable: chmod + label: Run CHMOD + description: | + It will run CHMOD on the path with the given value
    + Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - variable: hostPath + label: Host Path + 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 (Do NOT REDUCE after installation) + description: This value can ONLY be INCREASED after the installation + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: disabled + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + + - variable: persistenceList + label: Additional App Storage + group: 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: type + label: Type of Storage + description: Sets the persistence type, Anything other than PVC could break rollback! + schema: + type: string + default: hostPath + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - 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: iscsi + label: iSCSI Options + schema: + show_if: [["type", "=", "iscsi"]] + type: dict + additional_attrs: true + attrs: + - variable: targetPortal + label: targetPortal + schema: + type: string + required: true + default: "" + - variable: iqn + label: iqn + schema: + type: string + required: true + default: "" + - variable: lun + label: lun + schema: + type: int + default: 0 + - variable: authSession + label: authSession + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: authDiscovery + label: authDiscovery + schema: + type: dict + additional_attrs: true + attrs: + - variable: username + label: username + schema: + type: string + default: "" + - variable: password + label: password + schema: + type: string + default: "" + - variable: usernameInitiator + label: usernameInitiator + schema: + type: string + default: "" + - variable: passwordInitiator + label: passwordInitiator + schema: + type: string + default: "" + - variable: autoPermissions + label: Automatic Permissions Configuration + description: Automatically set permissions + schema: + show_if: [["type", "!=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: chown + label: Run CHOWN + description: | + It will run CHOWN on the path with the given fsGroup + schema: + type: boolean + default: false + - variable: chmod + label: Run CHMOD + description: | + It will run CHMOD on the path with the given value
    + Format should be 3 digits, e.g. 770 + schema: + type: string + valid_chars: '[0-9]{3}' + default: "" + - variable: recursive + label: Recursive + description: | + It will run CHOWN and CHMOD recursively + schema: + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - variable: hostPath + label: Host Path + description: Path inside the container the storage is mounted + schema: + show_if: [["type", "=", "hostPath"]] + type: hostpath + - variable: mountPath + label: Mount Path + 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: 256Gi + - variable: storageClass + label: 'storageClass (Advanced)' + description: 'sets the storageClass to something other than iX default. Only for advanced usecases!' + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: "" + - variable: static + label: 'Static Fixed PVC Bindings (Experimental)' + description: Link a PVC to a specific storage location + schema: + show_if: [["type", "=", "pvc"]] + type: dict + additional_attrs: true + attrs: + - variable: mode + label: mode + description: | + disabled: use normal dynamic PVCs + smb: connect to an SMB share + nfs: connect to an NFS share + schema: + type: string + default: "disabled" + enum: + - value: "disabled" + description: disabled + - value: smb + description: smb + - value: nfs + description: nfs + - variable: server + label: Server + description: server to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "myserver" + - variable: share + label: Share + description: share to connect to + schema: + type: string + show_if: [["mode", "!=", "disabled"]] + default: "/myshare" + - variable: user + label: User + description: connecting user + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "myuser" + - variable: domain + label: Domain + description: user domain + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: password + label: Password + description: connecting password + schema: + type: string + show_if: [["mode", "=", "smb"]] + default: "" + - variable: volumeSnapshots + label: 'Volume Snapshots (Experimental)' + description: Add an entry to the list to force creation of a volumeSnapshot of this PVC + schema: + show_if: [["type", "=", "pvc"]] + type: list + default: [] + items: + - variable: volumeSnapshotEntry + label: Custom volumeSnapshot + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + description: 'WARNING: renaming this, means deletion of the snapshot with the old name!' + schema: + type: string + default: "mysnapshot" + required: true + - variable: volumeSnapshotClassName + label: 'volumeSnapshot Class Name (Advanced)' + description: For use with PVCs using a non-default storageClass + schema: + type: string + default: "" + + - 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: [{path: "/", pathType: "Prefix"}] + items: + - variable: pathEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: path + label: Path + schema: + type: string + required: true + default: "/" + - variable: pathType + label: Path Type + schema: + type: string + required: true + default: Prefix + + - variable: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: 'Allow Cross Origin Requests (advanced)' + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: 'namespace (optional)' + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: homepage + label: Homepage + description: Connect ingress with Homepage + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: name + label: Name (Optional) + description: Defaults to chart name + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: description + label: Description (Optional) + description: Defaults to chart description + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: icon + label: Icon (Optional) + description: Defaults to chart icon + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: group + label: Group + schema: + type: string + required: true + default: "default" + show_if: [["enabled", "=", true]] + - variable: widget + label: Widget Settings + schema: + type: dict + additional_attrs: true + show_if: [["enabled", "=", true]] + attrs: + - variable: enabled + label: Enable Widget + description: When disabled all widget annotations are skipped. + schema: + type: boolean + default: true + - variable: custom + label: Options + schema: + type: dict + additional_attrs: true + attrs: + - variable: key + label: API-key (key) + schema: + type: string + default: "" + - variable: customkv + label: Custom Options + schema: + type: list + default: [] + items: + - variable: option + label: Option + schema: + additional_attrs: true + type: dict + attrs: + - variable: key + label: Key + schema: + type: string + default: "" + required: true + - variable: value + label: Value + schema: + type: string + default: "" + required: true + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + - variable: ingressClassName + label: (Advanced/Optional) IngressClass Name + schema: + type: string + show_if: [["advanced", "=", true]] + default: "" + - variable: tls + label: TLS-Settings + schema: + type: list + show_if: [["advanced", "=", true]] + default: [] + items: + - variable: tlsEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: hosts + label: Certificate Hosts + schema: + type: list + default: [] + items: + - variable: host + label: Host + schema: + type: string + default: "" + required: true + + - variable: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: 'Use Custom Certificate Secret (Advanced)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: string + default: "" + + - variable: 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: 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: Path Type + schema: + type: string + required: true + default: Prefix + - variable: overrideService + 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: [] + show_if: [["certificateIssuer", "=", ""]] + items: + - variable: tlsEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: hosts + label: Certificate Hosts + schema: + type: list + default: [] + items: + - variable: host + label: Host + schema: + type: string + default: "" + required: true + - variable: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your Cert-Manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: Use Custom Secret (Advanced) + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: "Allow Cross Origin Requests" + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: namespace + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: homepage + label: Homepage + description: Connect ingress with Homepage + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: name + label: Name + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: description + label: Description + description: defaults to chart description + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: group + label: Group + schema: + type: string + required: true + default: "default" + show_if: [["enabled", "=", true]] + + - variable: securityContext + group: SecurityContext + label: Security Context + schema: + additional_attrs: true + type: dict + attrs: + - variable: container + label: Container + schema: + additional_attrs: true + type: dict + attrs: + # Settings from questions.yaml get appended here on a per-app basis + + - 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 of the user running the application" + schema: + type: int + default: 0 + # Settings from questions.yaml get appended here on a per-app basis + - 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 + show_if: [["runAsUser", "=", 0]] + default: 568 + - variable: UMASK + label: UMASK + description: When supported by the container, this sets the UMASK for the App. Not supported by all Apps + schema: + type: string + default: "0022" + + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: true + + - variable: pod + label: Pod + schema: + additional_attrs: true + type: dict + attrs: + - 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 + # Settings from questions.yaml get appended here on a per-app basis + + - variable: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 + - variable: resources + group: Resources + label: "Resource Limits" + 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/SCALE/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/SCALE/validation" + schema: + type: string + default: 8Gi + valid_chars: '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$' + - variable: 'gpu.intel.com/i915' + label: Add Intel i915 GPUs + schema: + type: int + default: 0 + - variable: 'nvidia.com/gpu' + label: Add NVIDIA GPUs (Experimental) + schema: + type: int + default: 0 + - variable: 'amd.com/gpu' + label: Add AMD GPUs + schema: + type: int + default: 0 + - variable: requests + label: "Minimum Resources Required (request)" + schema: + additional_attrs: true + type: dict + hidden: true + attrs: + - variable: cpu + label: CPU + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/manual/SCALE/validation" + schema: + type: string + default: 10m + hidden: true + 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/SCALE/validation" + schema: + type: string + default: 50Mi + hidden: true + valid_chars: '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$' + - variable: deviceList + label: Mount USB Devices + group: 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: device + 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" + +# - variable: horizontalPodAutoscaler +# group: Experimental +# label: (Advanced) Horizontal Pod Autoscaler +# schema: +# type: list +# default: [] +# items: +# - variable: hpaEntry +# label: HPA Entry +# schema: +# additional_attrs: true +# type: dict +# attrs: +# - variable: name +# label: Name +# schema: +# type: string +# required: true +# default: "" +# - 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: Experimental + label: (Advanced) Network Policy + schema: + type: list + default: [] + items: + - variable: netPolicyEntry + label: Network Policy Entry + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + default: "" + - 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: IP Block + 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: Namespace Selector + schema: + additional_attrs: true + type: dict + attrs: + - variable: matchExpressions + label: Match Expressions + 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: Match Expressions + 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: End 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: IP Block + 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: Namespace Selector + schema: + additional_attrs: true + type: dict + attrs: + - variable: matchExpressions + label: Match Expressions + 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: Match Expressions + 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: End 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: codeserver + label: Codeserver + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: service + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Service Type + description: "ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: NodePort + description: Deprecated CHANGE THIS + - value: ClusterIP + description: ClusterIP + - value: LoadBalancer + description: LoadBalancer + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: ports + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: codeserver + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: Port + schema: + type: int + default: 36107 + - variable: ingress + label: "Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable Ingress + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hosts + label: Hosts + schema: + type: list + default: [] + items: + - variable: hostEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: host + label: HostName + schema: + type: string + default: "" + required: true + - variable: paths + label: Paths + schema: + type: list + default: [{path: "/", pathType: "Prefix"}] + items: + - variable: pathEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: path + label: Path + schema: + type: string + required: true + default: "/" + - variable: pathType + label: Path Type + schema: + type: string + required: true + default: Prefix + - variable: integrations + label: Integrations + description: Connect ingress with other charts + schema: + additional_attrs: true + type: dict + attrs: + - variable: traefik + label: Traefik + description: Connect ingress with Traefik + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: true + - variable: allowCors + label: 'Allow Cross Origin Requests (advanced)' + schema: + type: boolean + default: false + show_if: [["enabled", "=", true]] + - variable: entrypoints + label: Entrypoints + schema: + type: list + default: ["websecure"] + show_if: [["enabled", "=", true]] + items: + - variable: entrypoint + label: Entrypoint + schema: + type: string + - variable: middlewares + label: Middlewares + schema: + type: list + default: [] + show_if: [["enabled", "=", true]] + items: + - variable: middleware + label: Middleware + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: name + schema: + type: string + default: "" + required: true + - variable: namespace + label: 'namespace (optional)' + schema: + type: string + default: "" + - variable: certManager + label: certManager + description: Connect ingress with certManager + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: enabled + schema: + type: boolean + default: false + - variable: certificateIssuer + label: certificateIssuer + description: defaults to chartname + schema: + type: string + default: "" + show_if: [["enabled", "=", true]] + - variable: advanced + label: Show Advanced Settings + description: Advanced settings are not covered by TrueCharts Support + schema: + type: boolean + default: false + - variable: ingressClassName + label: (Advanced/Optional) IngressClass Name + schema: + type: string + show_if: [["advanced", "=", true]] + default: "" + - variable: tls + label: TLS-Settings + schema: + type: list + show_if: [["advanced", "=", true]] + default: [] + items: + - variable: tlsEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: hosts + label: Certificate Hosts + schema: + type: list + default: [] + items: + - variable: host + label: Host + schema: + type: string + default: "" + required: true + + - variable: certificateIssuer + label: Use Cert-Manager clusterIssuer + description: 'add the name of your cert-manager clusterIssuer here for automatic tls certificates.' + schema: + type: string + default: "" + - variable: clusterCertificate + label: 'Cluster Certificate (Advanced)' + description: 'Add the name of your cluster-wide certificate, that you set up in the ClusterIssuer chart.' + schema: + type: string + show_if: [["certificateIssuer", "=", ""]] + default: "" + - variable: secretName + label: 'Use Custom Certificate Secret (Advanced)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: string + default: "" + - variable: scaleCert + label: 'Use TrueNAS SCALE Certificate (Deprecated)' + schema: + show_if: [["certificateIssuer", "=", ""]] + type: int + $ref: + - "definitions/certificate" + - variable: envList + label: Codeserver Environment Variables + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: Environment Variable + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + - variable: value + label: Value + schema: + type: string + required: true + + - 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 + + - 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: gluetun + description: Gluetun + - value: tailscale + description: Tailscale + - value: openvpn + description: OpenVPN (Deprecated) + - value: wireguard + description: Wireguard (Deprecated) + - variable: openvpn + label: OpenVPN Settings + schema: + additional_attrs: true + type: dict + show_if: [["type", "=", "openvpn"]] + attrs: + - variable: username + label: Authentication Username (Optional) + description: Authentication Username, Optional + schema: + type: string + default: "" + - variable: password + label: Authentication Password + description: Authentication Credentials + schema: + type: string + show_if: [["username", "!=", ""]] + default: "" + required: true + - variable: tailscale + label: Tailscale Settings + schema: + additional_attrs: true + type: dict + show_if: [["type", "=", "tailscale"]] + attrs: + - variable: authkey + label: Authentication Key + description: Provide an auth key to automatically authenticate the node as your user account. + schema: + type: string + private: true + default: "" + - variable: auth_once + label: Auth Once + description: Only attempt to log in if not already logged in. + schema: + type: boolean + default: true + - variable: accept_dns + label: Accept DNS + description: Accept DNS configuration from the admin console. + schema: + type: boolean + default: false + - variable: userspace + label: Userspace + description: Userspace Networking mode allows running Tailscale where you do not have access to create a VPN tunnel device. + schema: + type: boolean + default: false + - variable: routes + label: Routes + description: Expose physical subnet routes to your entire Tailscale network. + schema: + type: string + default: "" + - variable: dest_ip + label: Destination IP + description: Tells the DNAT mechanism which Destination IP to set in the IP header, and where to send packets that are matched. + schema: + type: string + default: "" + - variable: sock5_server + label: Sock5 Server + description: The address on which to listen for SOCKS5 proxying into the tailscale net. + schema: + type: string + default: "" + - variable: outbound_http_proxy_listen + label: Outbound HTTP Proxy Listen + description: The address on which to listen for HTTP proxying into the tailscale net. + schema: + type: string + default: "" + - variable: extra_args + label: Extra Args + description: Extra Args + schema: + type: string + default: "" + - variable: daemon_extra_args + label: Tailscale Daemon Extra Args + description: Tailscale Daemon Extra Args + schema: + type: string + default: "" + - 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 IPv6 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: string + show_if: [["type", "!=", "disabled"]] + default: "" + + - 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 + max_length: 10240 + + - variable: docs + group: Documentation + label: Please read the documentation at https://truecharts.org + description: Please read the documentation at +
    https://truecharts.org + schema: + additional_attrs: true + type: dict + attrs: + - variable: confirmDocs + label: I have checked the documentation + schema: + type: boolean + default: true + - variable: donateNag + group: Documentation + label: Please consider supporting TrueCharts, see https://truecharts.org/sponsor + description: Please consider supporting TrueCharts, see +
    https://truecharts.org/sponsor + schema: + additional_attrs: true + type: dict + attrs: + - variable: confirmDonate + label: I have considered donating + schema: + type: boolean + default: true + hidden: true + diff --git a/stable/archivebox/2.0.0/templates/NOTES.txt b/stable/archivebox/2.0.0/templates/NOTES.txt new file mode 100644 index 00000000000..efcb74cb772 --- /dev/null +++ b/stable/archivebox/2.0.0/templates/NOTES.txt @@ -0,0 +1 @@ +{{- include "tc.v1.common.lib.chart.notes" $ -}} diff --git a/stable/archivebox/2.0.0/templates/common.yaml b/stable/archivebox/2.0.0/templates/common.yaml new file mode 100644 index 00000000000..995efb03eb0 --- /dev/null +++ b/stable/archivebox/2.0.0/templates/common.yaml @@ -0,0 +1,5 @@ +{{/* Make sure all variables are set properly */}} +{{- include "tc.v1.common.loader.init" . }} + +{{/* Render the templates */}} +{{ include "tc.v1.common.loader.apply" . }} diff --git a/stable/archivebox/2.0.0/values.yaml b/stable/archivebox/2.0.0/values.yaml new file mode 100644 index 00000000000..e69de29bb2d diff --git a/stable/archivebox/item.yaml b/stable/archivebox/item.yaml new file mode 100644 index 00000000000..f36638d096c --- /dev/null +++ b/stable/archivebox/item.yaml @@ -0,0 +1,4 @@ +icon_url: https://truecharts.org/img/hotlink-ok/chart-icons/archivebox.webp +categories: + - bookmarks +screenshots: []