From 9bd189d971ccd55495b3dea5fdae34ccda994969 Mon Sep 17 00:00:00 2001 From: sonicaj Date: Thu, 3 Aug 2023 13:35:56 +0000 Subject: [PATCH] Publish new changes in catalog --- community/tiny-media-manager/1.0.0/Chart.lock | 6 + community/tiny-media-manager/1.0.0/Chart.yaml | 27 ++ community/tiny-media-manager/1.0.0/README.md | 3 + .../tiny-media-manager/1.0.0/app-readme.md | 3 + .../1.0.0/charts/common-1.0.12.tgz | Bin 0 -> 56719 bytes .../1.0.0/ci/basic-values.yaml | 14 ++ .../1.0.0/ci/extra-values.yaml | 17 ++ .../1.0.0/ci/hostNet-values.yaml | 11 + .../tiny-media-manager/1.0.0/ix_values.yaml | 26 ++ .../tiny-media-manager/1.0.0/metadata.yaml | 14 ++ .../tiny-media-manager/1.0.0/questions.yaml | 232 ++++++++++++++++++ .../1.0.0/templates/NOTES.txt | 1 + .../1.0.0/templates/_persistence.tpl | 30 +++ .../1.0.0/templates/_portal.tpl | 12 + .../1.0.0/templates/_service.tpl | 16 ++ .../1.0.0/templates/_tmm.tpl | 53 ++++ .../1.0.0/templates/common.yaml | 11 + community/tiny-media-manager/item.yaml | 11 + 18 files changed, 487 insertions(+) create mode 100644 community/tiny-media-manager/1.0.0/Chart.lock create mode 100644 community/tiny-media-manager/1.0.0/Chart.yaml create mode 100644 community/tiny-media-manager/1.0.0/README.md create mode 100644 community/tiny-media-manager/1.0.0/app-readme.md create mode 100644 community/tiny-media-manager/1.0.0/charts/common-1.0.12.tgz create mode 100644 community/tiny-media-manager/1.0.0/ci/basic-values.yaml create mode 100644 community/tiny-media-manager/1.0.0/ci/extra-values.yaml create mode 100644 community/tiny-media-manager/1.0.0/ci/hostNet-values.yaml create mode 100644 community/tiny-media-manager/1.0.0/ix_values.yaml create mode 100644 community/tiny-media-manager/1.0.0/metadata.yaml create mode 100644 community/tiny-media-manager/1.0.0/questions.yaml create mode 100644 community/tiny-media-manager/1.0.0/templates/NOTES.txt create mode 100644 community/tiny-media-manager/1.0.0/templates/_persistence.tpl create mode 100644 community/tiny-media-manager/1.0.0/templates/_portal.tpl create mode 100644 community/tiny-media-manager/1.0.0/templates/_service.tpl create mode 100644 community/tiny-media-manager/1.0.0/templates/_tmm.tpl create mode 100644 community/tiny-media-manager/1.0.0/templates/common.yaml create mode 100644 community/tiny-media-manager/item.yaml diff --git a/community/tiny-media-manager/1.0.0/Chart.lock b/community/tiny-media-manager/1.0.0/Chart.lock new file mode 100644 index 0000000000..bbef36b196 --- /dev/null +++ b/community/tiny-media-manager/1.0.0/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: file://../../../common + version: 1.0.12 +digest: sha256:debd30721d09ae8293b1cbdd9d0115981d40b47908be3035fc3cf657c9d5eedb +generated: "2023-07-27T17:58:35.529521438+03:00" diff --git a/community/tiny-media-manager/1.0.0/Chart.yaml b/community/tiny-media-manager/1.0.0/Chart.yaml new file mode 100644 index 0000000000..23cf732150 --- /dev/null +++ b/community/tiny-media-manager/1.0.0/Chart.yaml @@ -0,0 +1,27 @@ +name: tiny-media-manager +description: tinyMediaManager is a media management tool written in Java/Swing. +annotations: + title: tinyMediaManager +type: application +version: 1.0.0 +apiVersion: v2 +appVersion: 4.3.12 +kubeVersion: '>=1.16.0-0' +maintainers: + - name: truenas + url: https://www.truenas.com/ + email: dev@ixsystems.com +dependencies: + - name: common + repository: file://../../../common + version: 1.0.12 +home: https://www.tinymediamanager.org/ +icon: https://gitlab.com/tinyMediaManager/tinymediamanager.gitlab.io/-/raw/master/images/tmm.png +sources: + - https://www.tinymediamanager.org/ + - https://github.com/truenas/charts/tree/master/library/ix-dev/community/tiny-media-manager + - https://hub.docker.com/r/tinymediamanager/tinymediamanager +keywords: + - media + - tv-shows + - movies diff --git a/community/tiny-media-manager/1.0.0/README.md b/community/tiny-media-manager/1.0.0/README.md new file mode 100644 index 0000000000..4cde3596a4 --- /dev/null +++ b/community/tiny-media-manager/1.0.0/README.md @@ -0,0 +1,3 @@ +# tinyMediaManager + +[tinyMediaManager](https://www.tinymediamanager.org/) is a media management tool written in Java/Swing. diff --git a/community/tiny-media-manager/1.0.0/app-readme.md b/community/tiny-media-manager/1.0.0/app-readme.md new file mode 100644 index 0000000000..4cde3596a4 --- /dev/null +++ b/community/tiny-media-manager/1.0.0/app-readme.md @@ -0,0 +1,3 @@ +# tinyMediaManager + +[tinyMediaManager](https://www.tinymediamanager.org/) is a media management tool written in Java/Swing. diff --git a/community/tiny-media-manager/1.0.0/charts/common-1.0.12.tgz b/community/tiny-media-manager/1.0.0/charts/common-1.0.12.tgz new file mode 100644 index 0000000000000000000000000000000000000000..d6728e59ea67f3541be9e55dfc1059afe0c45c07 GIT binary patch literal 56719 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 literal 0 HcmV?d00001 diff --git a/community/tiny-media-manager/1.0.0/ci/basic-values.yaml b/community/tiny-media-manager/1.0.0/ci/basic-values.yaml new file mode 100644 index 0000000000..79b1a1c6ae --- /dev/null +++ b/community/tiny-media-manager/1.0.0/ci/basic-values.yaml @@ -0,0 +1,14 @@ +tmmConfig: + password: secret + +tmmNetwork: + webPort: 31000 + +tmmID: + user: 1000 + group: 1000 + +tmmStorage: + data: + type: hostPath + hostPath: /mnt/{{ .Release.Namespace }}/data diff --git a/community/tiny-media-manager/1.0.0/ci/extra-values.yaml b/community/tiny-media-manager/1.0.0/ci/extra-values.yaml new file mode 100644 index 0000000000..e450053d44 --- /dev/null +++ b/community/tiny-media-manager/1.0.0/ci/extra-values.yaml @@ -0,0 +1,17 @@ +tmmConfig: + password: secret + +tmmNetwork: + webPort: 31000 + +tmmStorage: + data: + type: hostPath + hostPath: /mnt/{{ .Release.Namespace }}/data + additionalStorages: + - type: hostPath + hostPath: /mnt/{{ .Release.Namespace }}/tv-shows + mountPath: /tv-shows + - type: hostPath + hostPath: /mnt/{{ .Release.Namespace }}/movies + mountPath: /movies diff --git a/community/tiny-media-manager/1.0.0/ci/hostNet-values.yaml b/community/tiny-media-manager/1.0.0/ci/hostNet-values.yaml new file mode 100644 index 0000000000..39100f858a --- /dev/null +++ b/community/tiny-media-manager/1.0.0/ci/hostNet-values.yaml @@ -0,0 +1,11 @@ +tmmConfig: + password: secret + +tmmNetwork: + webPort: 31000 + hostNetwork: true + +tmmStorage: + data: + type: hostPath + hostPath: /mnt/{{ .Release.Namespace }}/data diff --git a/community/tiny-media-manager/1.0.0/ix_values.yaml b/community/tiny-media-manager/1.0.0/ix_values.yaml new file mode 100644 index 0000000000..6518448196 --- /dev/null +++ b/community/tiny-media-manager/1.0.0/ix_values.yaml @@ -0,0 +1,26 @@ +image: + repository: tinymediamanager/tinymediamanager + pullPolicy: IfNotPresent + tag: 4.3.12 + +resources: + limits: + cpu: 4000m + memory: 8Gi + +tmmConfig: + password: '' + additionalEnvs: [] + +tmmNetwork: + webPort: 30057 + +tmmID: + user: 568 + group: 568 + +tmmStorage: + config: + type: ixVolume + datasetName: data + additionalStorages: [] diff --git a/community/tiny-media-manager/1.0.0/metadata.yaml b/community/tiny-media-manager/1.0.0/metadata.yaml new file mode 100644 index 0000000000..c0c11a5c32 --- /dev/null +++ b/community/tiny-media-manager/1.0.0/metadata.yaml @@ -0,0 +1,14 @@ +runAsContext: + - userName: root + groupName: root + gid: 0 + uid: 0 + description: tinyMediaManager runs as root user +capabilities: + - name: CHOWN + description: tinyMediaManager is able to chown files. + - name: SETGID + description: tinyMediaManager is able to set group ID for it's sub-processes. + - name: SETUID + description: tinyMediaManager is able to set user ID for it's sub-processes. +hostMounts: [] diff --git a/community/tiny-media-manager/1.0.0/questions.yaml b/community/tiny-media-manager/1.0.0/questions.yaml new file mode 100644 index 0000000000..b44e4eb828 --- /dev/null +++ b/community/tiny-media-manager/1.0.0/questions.yaml @@ -0,0 +1,232 @@ +groups: + - name: tinyMediaManager Configuration + description: Configure tinyMediaManager + - name: User and Group Configuration + description: Configure User and Group for tinyMediaManager + - name: Network Configuration + description: Configure Network for tinyMediaManager + - name: Storage Configuration + description: Configure Storage for tinyMediaManager + - name: Resources Configuration + description: Configure Resources for tinyMediaManager + +portals: + web_portal: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" + path: "$kubernetes-resource_configmap_portal_path" + +questions: + - variable: tmmConfig + label: "" + group: tinyMediaManager Configuration + schema: + type: dict + attrs: + - variable: password + label: Password (Optional) + description: The password for tinyMediaManager. + schema: + type: string + default: "" + - variable: additionalEnvs + label: Additional Environment Variables + description: Configure additional environment variables for tinyMediaManager. + schema: + type: list + default: [] + items: + - variable: env + label: Environment Variable + schema: + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + - variable: value + label: Value + schema: + type: string + required: true + + - variable: tmmID + label: "" + group: User and Group Configuration + schema: + type: dict + attrs: + - variable: user + label: User ID + description: The user id that tinyMediaManager files will be owned by. + schema: + type: int + min: 2 + default: 568 + required: true + - variable: group + label: Group ID + description: The group id that tinyMediaManager files will be owned by. + schema: + type: int + min: 2 + default: 568 + required: true + + - variable: tmmNetwork + label: "" + group: Network Configuration + schema: + type: dict + attrs: + - variable: webPort + label: Web Port + description: The port for the tinyMediaManager Web UI. + schema: + type: int + default: 30057 + min: 9000 + max: 65535 + required: true + + - variable: tmmStorage + label: "" + group: Storage Configuration + schema: + type: dict + attrs: + - variable: data + label: tinyMediaManager Data Storage + description: The path to store tinyMediaManager Data. + schema: + type: dict + attrs: + - variable: type + label: Type + description: | + ixVolume: Is dataset created automatically by the system.
+ Host Path: Is a path that already exists on the system. + schema: + type: string + required: true + default: "ixVolume" + enum: + - value: "hostPath" + description: Host Path (Path that already exists on the system) + - value: "ixVolume" + description: ixVolume (Dataset created automatically by the system) + - variable: datasetName + label: Dataset Name + schema: + type: string + show_if: [["type", "=", "ixVolume"]] + required: true + hidden: true + immutable: true + default: "data" + $ref: + - "normalize/ixVolume" + - variable: hostPath + label: Host Path + schema: + type: hostpath + show_if: [["type", "=", "hostPath"]] + immutable: true + required: true + - variable: additionalStorages + label: Additional Storage + description: Additional storage for tinyMediaManager. + schema: + type: list + default: [] + items: + - variable: storageEntry + label: Storage Entry + schema: + type: dict + attrs: + - variable: type + label: Type + description: | + ixVolume: Is dataset created automatically by the system.
+ Host Path: Is a path that already exists on the system. + schema: + type: string + required: true + default: "ixVolume" + enum: + - value: "hostPath" + description: Host Path (Path that already exists on the system) + - value: "ixVolume" + description: ixVolume (Dataset created automatically by the system) + - variable: mountPath + label: Mount Path + description: The path inside the container to mount the storage. + schema: + type: path + required: true + - variable: hostPath + label: Host Path + description: The host path to use for storage. + schema: + type: hostpath + show_if: [["type", "=", "hostPath"]] + required: true + - variable: datasetName + label: Dataset Name + description: The name of the dataset to use for storage. + schema: + type: string + show_if: [["type", "=", "ixVolume"]] + required: true + immutable: true + default: "storage_entry" + $ref: + - "normalize/ixVolume" + + - variable: resources + group: Resources Configuration + label: "" + schema: + type: dict + attrs: + - variable: limits + label: Limits + schema: + type: dict + attrs: + - variable: cpu + label: CPU + description: CPU limit for tinyMediaManager. + schema: + type: string + max_length: 6 + valid_chars: '^(0\.[1-9]|[1-9][0-9]*)(\.[0-9]|m?)$' + valid_chars_error: | + Valid CPU limit formats are
+ - Plain Integer - eg. 1
+ - Float - eg. 0.5
+ - Milicpu - eg. 500m + default: "4000m" + required: true + - variable: memory + label: Memory + description: Memory limit for tinyMediaManager. + schema: + type: string + max_length: 12 + valid_chars: '^[1-9][0-9]*([EPTGMK]i?|e[0-9]+)?$' + valid_chars_error: | + Valid Memory limit formats are
+ - Suffixed with E/P/T/G/M/K - eg. 1G
+ - Suffixed with Ei/Pi/Ti/Gi/Mi/Ki - eg. 1Gi
+ - Plain Integer in bytes - eg. 1024
+ - Exponent - eg. 134e6 + default: "8Gi" + required: true diff --git a/community/tiny-media-manager/1.0.0/templates/NOTES.txt b/community/tiny-media-manager/1.0.0/templates/NOTES.txt new file mode 100644 index 0000000000..ba4e01146c --- /dev/null +++ b/community/tiny-media-manager/1.0.0/templates/NOTES.txt @@ -0,0 +1 @@ +{{ include "ix.v1.common.lib.chart.notes" $ }} diff --git a/community/tiny-media-manager/1.0.0/templates/_persistence.tpl b/community/tiny-media-manager/1.0.0/templates/_persistence.tpl new file mode 100644 index 0000000000..261c36636f --- /dev/null +++ b/community/tiny-media-manager/1.0.0/templates/_persistence.tpl @@ -0,0 +1,30 @@ +{{- define "tmm.persistence" -}} +persistence: + data: + enabled: true + type: {{ .Values.tmmStorage.data.type }} + datasetName: {{ .Values.tmmStorage.data.datasetName | default "" }} + hostPath: {{ .Values.tmmStorage.data.hostPath | default "" }} + targetSelector: + tmm: + tmm: + mountPath: /data + tmp: + enabled: true + type: emptyDir + targetSelector: + tmm: + tmm: + mountPath: /tmp + {{- range $idx, $storage := .Values.tmmStorage.additionalStorages }} + {{ printf "tmm-%v" (int $idx) }}: + enabled: true + type: {{ $storage.type }} + datasetName: {{ $storage.datasetName | default "" }} + hostPath: {{ $storage.hostPath | default "" }} + targetSelector: + tmm: + tmm: + mountPath: {{ $storage.mountPath }} + {{- end }} +{{- end -}} diff --git a/community/tiny-media-manager/1.0.0/templates/_portal.tpl b/community/tiny-media-manager/1.0.0/templates/_portal.tpl new file mode 100644 index 0000000000..ef5a454918 --- /dev/null +++ b/community/tiny-media-manager/1.0.0/templates/_portal.tpl @@ -0,0 +1,12 @@ +{{- define "tmm.portal" -}} +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: portal +data: + path: "/" + port: {{ .Values.tmmNetwork.webPort | quote }} + protocol: http + host: $node_ip +{{- end -}} diff --git a/community/tiny-media-manager/1.0.0/templates/_service.tpl b/community/tiny-media-manager/1.0.0/templates/_service.tpl new file mode 100644 index 0000000000..7b200ac9db --- /dev/null +++ b/community/tiny-media-manager/1.0.0/templates/_service.tpl @@ -0,0 +1,16 @@ +{{- define "tmm.service" -}} +service: + tmm: + enabled: true + primary: true + type: NodePort + targetSelector: tmm + ports: + webui: + enabled: true + primary: true + port: {{ .Values.tmmNetwork.webPort }} + nodePort: {{ .Values.tmmNetwork.webPort }} + targetPort: 4000 + targetSelector: tmm +{{- end -}} diff --git a/community/tiny-media-manager/1.0.0/templates/_tmm.tpl b/community/tiny-media-manager/1.0.0/templates/_tmm.tpl new file mode 100644 index 0000000000..cf33419416 --- /dev/null +++ b/community/tiny-media-manager/1.0.0/templates/_tmm.tpl @@ -0,0 +1,53 @@ +{{- define "tmm.workload" -}} +workload: + tmm: + enabled: true + primary: true + type: Deployment + podSpec: + hostNetwork: false + securityContext: + fsGroup: {{ .Values.tmmID.group }} + containers: + tmm: + enabled: true + primary: true + imageSelector: image + securityContext: + runAsUser: 0 + runAsGroup: 0 + runAsNonRoot: false + readOnlyRootFilesystem: false + capabilities: + add: + - SETUID + - SETGID + - CHOWN + fixedEnv: + PUID: {{ .Values.tmmID.user }} + env: + PASSWORD: {{ .Values.tmmConfig.password }} + {{ with .Values.tmmConfig.additionalEnvs }} + envList: + {{ range $env := . }} + - name: {{ $env.name }} + value: {{ $env.value }} + {{ end }} + {{ end }} + probes: + liveness: + enabled: true + type: http + port: 4000 + path: / + readiness: + enabled: true + type: http + port: 4000 + path: / + startup: + enabled: true + type: http + port: 4000 + path: / +{{- end -}} diff --git a/community/tiny-media-manager/1.0.0/templates/common.yaml b/community/tiny-media-manager/1.0.0/templates/common.yaml new file mode 100644 index 0000000000..ccf19d8ddc --- /dev/null +++ b/community/tiny-media-manager/1.0.0/templates/common.yaml @@ -0,0 +1,11 @@ +{{- include "ix.v1.common.loader.init" . -}} + +{{/* Merge the templates with Values */}} +{{- $_ := mustMergeOverwrite .Values (include "tmm.workload" $ | fromYaml) -}} +{{- $_ := mustMergeOverwrite .Values (include "tmm.service" $ | fromYaml) -}} +{{- $_ := mustMergeOverwrite .Values (include "tmm.persistence" $ | fromYaml) -}} + +{{/* Create the configmap for portal manually*/}} +{{- include "tmm.portal" $ -}} + +{{- include "ix.v1.common.loader.apply" . -}} diff --git a/community/tiny-media-manager/item.yaml b/community/tiny-media-manager/item.yaml new file mode 100644 index 0000000000..168d40c88e --- /dev/null +++ b/community/tiny-media-manager/item.yaml @@ -0,0 +1,11 @@ +icon_url: https://gitlab.com/tinyMediaManager/tinymediamanager.gitlab.io/-/raw/master/images/tmm.png +categories: + - media +screenshots: + - https://www.tinymediamanager.org/images/screenshots/v4/movies/movies01.png + - https://www.tinymediamanager.org/images/screenshots/v4/movies/movies08.png + - https://www.tinymediamanager.org/images/screenshots/v4/movies/movies10.png + - https://www.tinymediamanager.org/images/screenshots/v4/movies/movies14.png +tags: + - tv-shows + - movies