feat(handbrake): make gui easier - Breaking Change (#2153)

* feat(handbrake): make gui easier.

* fix values

* test

* pass
This commit is contained in:
Stavros Kois 2022-03-17 07:29:26 +02:00 committed by GitHub
parent aaf55dad3d
commit bb899a9fb3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 134 additions and 21 deletions

View File

@ -24,7 +24,7 @@ sources:
- https://hub.docker.com/r/jlesage/handbrake/
- https://handbrake.fr/
type: application
version: 11.0.2
version: 12.0.0
annotations:
truecharts.org/catagories: |
- media

View File

@ -88,14 +88,20 @@ questions:
schema:
type: string
private: true
default: "REPLACETHIS"
- variable: env
default: ""
- variable: handbrake
group: "Container Configuration"
label: "Image Environment"
label: "HandBrake Configuration"
schema:
additional_attrs: true
type: dict
attrs:
- variable: KEEP_APP_RUNNING
label: "KEEP_APP_RUNNING"
description: "When set to true, the application will be automatically restarted if it crashes or if a user quits it."
schema:
type: boolean
default: false
- variable: gui
label: "GUI Settings"
description: "Always read description before changing a value here. Also refer to README"
@ -122,9 +128,8 @@ questions:
label: "SECURE_CONNECTION"
description: "When set to 1, an encrypted connection is used to access the application's GUI (either via a web browser or VNC client). See the Security section for more details."
schema:
type: int
default: 0
required: true
type: boolean
default: false
- variable: autoconv
label: "Automated Conversion Settings"
description: "Always read description before changing a value here. Also refer to README"
@ -151,9 +156,8 @@ questions:
label: "AUTOMATED_CONVERSION_KEEP_SOURCE"
description: "When set to 0, a video that has been successfully converted is removed from the watch folder."
schema:
type: int
default: 0
required: true
type: boolean
default: false
- variable: AUTOMATED_CONVERSION_NON_VIDEO_FILE_ACTION
label: "AUTOMATED_CONVERSION_NON_VIDEO_FILE_ACTION"
description: "When set to ignore, a non-video file found in the watch folder is ignored. If set to copy, a non-video file is copied as-is to the output folder."
@ -226,7 +230,6 @@ questions:
type: int
default: 5800
- variable: vnc
label: "VNC Service"
description: "VNC Service"
@ -352,6 +355,92 @@ questions:
description: "Default"
- value: "Memory"
description: "Memory"
# Include{persistenceAdvanced}
- variable: storage
label: "App Storage"
description: "Application Storage."
schema:
additional_attrs: true
type: dict
attrs:
- variable: type
label: "Type of Storage"
description: "Sets the persistence type, Anything other than PVC could break rollback!"
schema:
type: string
default: "simplePVC"
enum:
- value: "simplePVC"
description: "PVC (simple)"
- value: "simpleHP"
description: "HostPath (simple)"
- value: "emptyDir"
description: "emptyDir"
- value: "pvc"
description: "pvc"
- value: "hostPath"
description: "hostPath"
# Include{persistenceBasic}
- variable: hostPath
label: "hostPath"
description: "Path inside the container the storage is mounted"
schema:
show_if: [["type", "=", "hostPath"]]
type: hostpath
- variable: medium
label: "EmptyDir Medium"
schema:
show_if: [["type", "=", "emptyDir"]]
type: string
default: ""
enum:
- value: ""
description: "Default"
- value: "Memory"
description: "Memory"
# Include{persistenceAdvanced}
- variable: output
label: "App Output Storage"
description: "Stores the Application Output."
schema:
additional_attrs: true
type: dict
attrs:
- variable: type
label: "Type of Storage"
description: "Sets the persistence type, Anything other than PVC could break rollback!"
schema:
type: string
default: "simplePVC"
enum:
- value: "simplePVC"
description: "PVC (simple)"
- value: "simpleHP"
description: "HostPath (simple)"
- value: "emptyDir"
description: "emptyDir"
- value: "pvc"
description: "pvc"
- value: "hostPath"
description: "hostPath"
# Include{persistenceBasic}
- variable: hostPath
label: "hostPath"
description: "Path inside the container the storage is mounted"
schema:
show_if: [["type", "=", "hostPath"]]
type: hostpath
- variable: medium
label: "EmptyDir Medium"
schema:
show_if: [["type", "=", "emptyDir"]]
type: string
default: ""
enum:
- value: ""
description: "Default"
- value: "Memory"
description: "Memory"
# Include{persistenceAdvanced}
# Include{persistenceList}

View File

@ -25,23 +25,43 @@ service:
port: 10055
targetPort: 5900
envFrom:
- configMapRef:
name: '{{ include "common.names.fullname" . }}-handbrake'
secret:
VNC_PASSWORD: ""
env:
# General Settings
KEEP_APP_RUNNING: 0
CLEAN_TMP_DIR: 1
# GUI Settings
handbrake:
KEEP_APP_RUNNING: false
DISPLAY_WIDTH: 1280
DISPLAY_HEIGHT: 768
SECURE_CONNECTION: 0
# Automated Conversion Preset
SECURE_CONNECTION: false
AUTOMATED_CONVERSION_PRESET: "General/Very Fast 1080p30"
AUTOMATED_CONVERSION_FORMAT: "mp4"
AUTOMATED_CONVERSION_KEEP_SOURCE: 1
AUTOMATED_CONVERSION_KEEP_SOURCE: true
AUTOMATED_CONVERSION_NON_VIDEO_FILE_ACTION: "ignore"
configmap:
handbrake:
enabled: true
data:
KEEP_APP_RUNNING: "{{ ternary \"1\" \"0\" .Values.handbrake.KEEP_APP_RUNNING }}"
SECURE_CONNECTION: "{{ ternary \"1\" \"0\" .Values.handbrake.SECURE_CONNECTION }}"
DISPLAY_WIDTH: "{{ .Values.handbrake.DISPLAY_WIDTH }}"
DISPLAY_HEIGHT: "{{ .Values.handbrake.DISPLAY_HEIGHT }}"
AUTOMATED_CONVERSION_KEEP_SOURCE: "{{ ternary \"1\" \"0\" .Values.handbrake.AUTOMATED_CONVERSION_KEEP_SOURCE }}"
AUTOMATED_CONVERSION_PRESET: "{{ .Values.handbrake.AUTOMATED_CONVERSION_PRESET }}"
AUTOMATED_CONVERSION_FORMAT: "{{ .Values.handbrake.AUTOMATED_CONVERSION_FORMAT }}"
AUTOMATED_CONVERSION_NON_VIDEO_FILE_ACTION: "{{ .Values.handbrake.AUTOMATED_CONVERSION_NON_VIDEO_FILE_ACTION }}"
persistence:
config:
enabled: true
mountPath: "/config"
storage:
enabled: true
mountPath: "/storage"
output:
enabled: true
mountPath: "/output"

View File

@ -1,7 +1,5 @@
# Installation Notes
- You HAVE to add `/output` and `/watch` container paths (using the Custom Storage Option), so you can use the automatic conversion feature and also be able to access the converted files (manual or automatic).
- If you enable `Reverse Proxy` for `Handbrake`, you need to have `SECURE_CONNECTION` set to `0` and `Port Type` set to `HTTP`, otherwise you may run into errors for `Too many redirects`.
- `VNC` can't be `Reversed Proxied`. if you want to use `VNC`, you must set this service to `Simple` instead of `clusterIP`.
- `VNC` with `SECURE_CONNECTION` set 1, only works with very few clients. One of them is `SSVNC`.

View File

@ -0,0 +1,6 @@
# Installation Notes
- If you enable `Reverse Proxy` for `jDownloader2`, you need to have `SECURE_CONNECTION` set to `0` and `Port Type` set to `HTTP`, otherwise you may run into errors for `Too many redirects`.
- `VNC` can't be `Reversed Proxied`. if you want to use `VNC`, you must set this service to `Simple` instead of `clusterIP`.
- `VNC` with `SECURE_CONNECTION` set 1, only works with very few clients. One of them is `SSVNC`.
- `SECURE_CONNECTION` affects both `WebUI` and `VNC`.