diff --git a/charts/incubator/slink/.helmignore b/charts/incubator/slink/.helmignore new file mode 100644 index 00000000000..77ca5567b26 --- /dev/null +++ b/charts/incubator/slink/.helmignore @@ -0,0 +1,30 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png diff --git a/charts/incubator/slink/Chart.yaml b/charts/incubator/slink/Chart.yaml new file mode 100644 index 00000000000..6d80e780c28 --- /dev/null +++ b/charts/incubator/slink/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: media + truecharts.org/max_helm_version: "3.14" + truecharts.org/min_helm_version: "3.11" + truecharts.org/train: stable +apiVersion: v2 +appVersion: 1.0.0 +dependencies: + - name: common + version: 20.3.6 + repository: oci://tccr.io/truecharts + condition: "" + alias: "" + tags: [] + import-values: [] +deprecated: false +description: A self-hosted image sharing platform built with Symfony and SvelteKitī¸. +home: https://truecharts.org/charts/incubator/slink +icon: https://truecharts.org/img/hotlink-ok/chart-icons/slink.png +keywords: + - media + - photos + - pictures + - sharing +kubeVersion: ">=1.24.0-0" +maintainers: + - name: TrueCharts + email: info@truecharts.org + url: https://truecharts.org +name: slink +sources: + - https://github.com/andrii-kryvoviaz/slink + - https://github.com/truecharts/charts/tree/master/charts/incubator/slink + - https://hub.docker.com/r/anirdev/slink +type: application +version: 0.0.1 diff --git a/charts/incubator/slink/README.md b/charts/incubator/slink/README.md new file mode 100644 index 00000000000..d2db372654d --- /dev/null +++ b/charts/incubator/slink/README.md @@ -0,0 +1,28 @@ +--- +title: README +--- + +## General Info + +TrueCharts can be installed as both _normal_ Helm Charts or as Apps on TrueNAS SCALE. +However only installations using the TrueNAS SCALE Apps system are supported. + +For more information about this App, please check the docs on the TrueCharts [website](https://truecharts.org/charts/incrubator/slink) + +**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)** + +## Support + +- Please check our [quick-start guides for TrueNAS SCALE](https://truecharts.org/manual/SCALE/guides/scale-intro). +- 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/sponsor) or contributing back to the project any way you can! + +_All Rights Reserved - The TrueCharts Project_ diff --git a/charts/incubator/slink/icon.png b/charts/incubator/slink/icon.png new file mode 100644 index 00000000000..cb7f0f3a17d Binary files /dev/null and b/charts/incubator/slink/icon.png differ diff --git a/charts/incubator/slink/questions.yaml b/charts/incubator/slink/questions.yaml new file mode 100644 index 00000000000..70291c45872 --- /dev/null +++ b/charts/incubator/slink/questions.yaml @@ -0,0 +1,112 @@ +# Include{groups} +portals: + open: +# Include{portalLink} +questions: +# Include{global} +# Include{workload} +# Include{workloadDeployment} +# Include{replicas1} +# Include{podSpec} +# Include{containerMain} + - variable: env + group: "App Configuration" + label: "Image Environment" + schema: + additional_attrs: true + type: dict + attrs: + - variable: USER_APPROVAL_REQUIRED + label: "User Approval Required" + description: "Whether to require user approval before they can upload images." + schema: + type: boolean + default: true + - variable: IMAGE_MAX_SIZE + label: "Maximum Image Size" + description: "Maximum image size allowed to be uploaded (no more than 50M)." + schema: + type: string + required: true + default: 15M +# Include{containerBasic} +# Include{containerAdvanced} +# Include{containerConfig} +# Include{podOptions} +# Include{serviceRoot} +# Include{serviceMain} +# Include{serviceSelectorLoadBalancer} +# Include{serviceSelectorExtras} + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 3000 + required: true +# Include{serviceExpertRoot} +# Include{serviceExpert} +# Include{serviceList} +# Include{persistenceRoot} + - variable: database + label: "App Database Storage" + description: "Stores the Application Database." + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} + - variable: images + label: "Image Storage" + description: "Stores the Images." + schema: + additional_attrs: true + type: dict + attrs: +# Include{persistenceBasic} +# Include{persistenceList} +# Include{ingressRoot} + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: +# Include{ingressDefault} +# Include{ingressAdvanced} +# Include{ingressList} +# Include{securityContextRoot} + - 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 +# Include{securityContextContainer} +# Include{securityContextAdvanced} +# Include{securityContextPod} + - variable: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 +# Include{resources} +# Include{advanced} +# Include{addons} +# Include{codeserver} +# Include{netshoot} +# Include{vpn} +# Include{documentation} diff --git a/charts/incubator/slink/templates/NOTES.txt b/charts/incubator/slink/templates/NOTES.txt new file mode 100644 index 00000000000..efcb74cb772 --- /dev/null +++ b/charts/incubator/slink/templates/NOTES.txt @@ -0,0 +1 @@ +{{- include "tc.v1.common.lib.chart.notes" $ -}} diff --git a/charts/incubator/slink/templates/common.yaml b/charts/incubator/slink/templates/common.yaml new file mode 100644 index 00000000000..b51394e00a4 --- /dev/null +++ b/charts/incubator/slink/templates/common.yaml @@ -0,0 +1 @@ +{{ include "tc.v1.common.loader.all" . }} diff --git a/charts/incubator/slink/values.yaml b/charts/incubator/slink/values.yaml new file mode 100644 index 00000000000..ba406ac14b4 --- /dev/null +++ b/charts/incubator/slink/values.yaml @@ -0,0 +1,33 @@ +image: + repository: anirdev/slink + pullPolicy: IfNotPresent + tag: v1.0.0@sha256:6c47fcaab5c77b57540602aff5fd11534e480b73f6e06a24926fb22cb326e900 +securityContext: + container: + readOnlyRootFilesystem: false + runAsGroup: 0 + runAsUser: 0 +service: + main: + ports: + main: + protocol: http + port: 3000 +workload: + main: + podSpec: + containers: + main: + env: + USER_APPROVAL_REQUIRED: true + IMAGE_MAX_SIZE: "15M" +persistence: + database: + enabled: true + mountPath: "/app/var/data" + images: + enabled: true + mountPath: "/app/slink/images" +portal: + open: + enabled: true