diff --git a/test/plex/2.1.0/questions.yaml b/test/plex/2.1.0/questions.yaml index cb75533f09..3be8e1a419 100644 --- a/test/plex/2.1.0/questions.yaml +++ b/test/plex/2.1.0/questions.yaml @@ -127,6 +127,21 @@ questions: - value: "Recreate" description: "Kill existing pods before creating new ones" + # Port configuration + - variable: plexServiceTCP + label: "Configure Plex TCP Service" + group: "Networking" + schema: + type: dict + attrs: + - variable: port + label: "Port to expose for Plex UI" + schema: + type: int + min: 9000 + max: 65535 + default: 32400 + # Persistence - variable: persistence label: "Configure Persistent Storage" @@ -151,7 +166,6 @@ questions: schema: type: hostpath required: true - default: "" - variable: volume label: "Configure iXVolume" schema: @@ -190,7 +204,6 @@ questions: schema: type: hostpath required: true - default: "" - variable: volume label: "Configure iXVolume" schema: @@ -229,7 +242,6 @@ questions: schema: type: hostpath required: true - default: "" - variable: volume label: "Configure iXVolume" schema: diff --git a/test/plex/2.1.0/templates/deployment.yaml b/test/plex/2.1.0/templates/deployment.yaml index b00cc3c967..2a83f53840 100644 --- a/test/plex/2.1.0/templates/deployment.yaml +++ b/test/plex/2.1.0/templates/deployment.yaml @@ -32,7 +32,7 @@ spec: protocol: TCP containerPort: 32400 {{- if .Values.hostNetwork }} - hostPort: {{ .Values.serviceTCP.port }} + hostPort: {{ .Values.plexServiceTCP.port }} {{- end }} - name: plex-dlna protocol: TCP @@ -110,21 +110,21 @@ spec: httpGet: path: /identity port: 32400 - failureThreshold: {{ .Values.probes.readiness.failureThreshold }} - periodSeconds: {{ .Values.probes.readiness.periodSeconds }} + failureThreshold: 5 + periodSeconds: 15 livenessProbe: httpGet: path: /identity port: 32400 - failureThreshold: {{ .Values.probes.liveness.failureThreshold }} - periodSeconds: {{ .Values.probes.liveness.periodSeconds }} + failureThreshold: 5 + periodSeconds: 15 startupProbe: httpGet: path: /identity port: 32400 - initialDelaySeconds: {{ .Values.probes.startup.initialDelaySeconds }} - failureThreshold: {{ .Values.probes.startup.failureThreshold }} - periodSeconds: {{ .Values.probes.startup.periodSeconds }} + initialDelaySeconds: 5 + failureThreshold: 40 + periodSeconds: 15 volumeMounts: - name: data mountPath: /data @@ -136,12 +136,6 @@ spec: mountPath: /shared - name: shared-logs mountPath: "/config/Library/Application Support/Plex Media Server/Logs" - {{- if .Values.plexPreferences.enabled }} - - name: {{ .Values.plexPreferences.volume.name }} - mountPath: {{ .Values.plexPreferences.volume.mountPath }} - subPath: {{ .Values.plexPreferences.volume.subPath }} - {{- end }} -##### VOLUMES START ##### volumes: - name: data hostPath: @@ -156,10 +150,3 @@ spec: emptyDir: {} - name: shared-logs emptyDir: {} - {{- if .Values.plexPreferences.enabled }} - - name: {{ .Values.plexPreferences.volume.name }} - configMap: - name: {{ .Values.plexPreferences.configmap.name }} - defaultMode: {{ .Values.plexPreferences.volume.defaultMode }} - {{- end }} -##### VOLUMES END ##### diff --git a/test/plex/2.1.0/templates/service-tcp.yaml b/test/plex/2.1.0/templates/service-tcp.yaml index 97dde110aa..48a69eef18 100644 --- a/test/plex/2.1.0/templates/service-tcp.yaml +++ b/test/plex/2.1.0/templates/service-tcp.yaml @@ -1,25 +1,27 @@ -{{- if eq .Values.hostNetwork false }} apiVersion: v1 kind: Service metadata: + {{- if .Values.hostNetwork }} + name: {{ include "plex.fullname" . }}-tcp-cluster-ip + {{- else }} name: {{ include "plex.fullname" . }}-tcp + {{- end }} labels: {{- include "plex.labels" . | nindent 4 }} -{{- if .Values.serviceTCP.labels }} -{{ toYaml .Values.serviceTCP.labels | indent 4 }} -{{- end }} -{{- with .Values.serviceTCP.annotations }} - annotations: -{{ toYaml . | indent 4 }} -{{- end }} spec: + {{- if .Values.hostNetwork }} + type: ClusterIP + {{- else }} type: NodePort + {{- end }} ports: - name: pms - port: {{ .Values.serviceTCP.port }} + port: {{ .Values.plexServiceTCP.port }} protocol: TCP targetPort: pms - nodePort: {{.Values.serviceTCP.nodePort}} + {{- if eq .Values.hostNetwork false }} + nodePort: {{.Values.plexServiceTCP.port}} + {{- end }} - name: http port: 80 targetPort: pms @@ -31,4 +33,3 @@ spec: targetPort: plex-dlna selector: {{- include "plex.selectorLabels" . | nindent 4 }} -{{- end }} diff --git a/test/plex/2.1.0/values.yaml b/test/plex/2.1.0/values.yaml index 2ecb6fec8a..0daf7fe455 100644 --- a/test/plex/2.1.0/values.yaml +++ b/test/plex/2.1.0/values.yaml @@ -52,75 +52,18 @@ timezone: "UTC" # upgrade strategy type (e.g. Recreate or RollingUpdate) strategyType: Recreate -nameOverride: "" -fullnameOverride: "" - -serviceTCP: +plexServiceTCP: port: 32400 -plexPreferences: - # Enable init script that will read all environment variables starting with PLEX_PREFERENCE_ - # and take the value (of PLEX_PREFERENCE_) as the Key:Value option to set in Plex Preference.xml - # You can use extraEnv to add the addtional ENV's to the container. - # NOTE: Plex preference options are camelCase and CASE SENSITIVE! - # You can do horrible things to your PLEX configuration if you are not careful. - # --set extraEnv.PLEX_PREFERENCE_1="FriendlyName=plex-kubeernetes-test1" ` - # --set extraEnv.PLEX_PREFERENCE_2="EnableIPv6=0" ` - # --set extraEnv.PLEX_PREFERENCE_3="logDebug=0" ` - # --set extraEnv.PLEX_PREFERENCE_4="DisableTLSv1_0=1" ` - # --set extraEnv.PLEX_PREFERENCE_5="LanNetworksBandwidth=xxx.xxx.xxx.0/18\,xxx.xxx.xxx.0/24\,xxx.xxx.xxx.0/24" ` - # --set extraEnv.PLEX_PREFERENCE_6="TranscoderQuality=2" ` - # --set extraEnv.PLEX_PREFERENCE_7="TreatWanIpAsLocal=0" ` - # --set extraEnv.PLEX_PREFERENCE_8="TranscoderH264BackgroundPreset=fast" - # Why not use a single ENV? - # I thought using multiple environment variables would be less confusing - # It should work easily with CLI and value.yaml usage - # There is only minimal parsing required on the ENV value, as the only deliminator is = - # From what I can see, all the PLEX preferences that are NOT currently supported by the OFFICIAL - # Container are simple enough to work with this. - enabled: false - configmap: - labels: {} - annotations: {} - # Right now you can't really change this, additionally the configmap data is - # not configurable. - name: 41-plex-preferences - volume: - name: 41-plex-preferences - defaultMode: 493 # 0755 in octal permission notation - # Using mountPath & SubPath allow you to volume mount a configMap AS A FILE - # Unfortunately this also means that updates to the configMap are not automtically - # propagated to the file contents. But it's better then replacing the entire - # /etc/cont-init.d/ directory which is the "normal" behavior when doing volume - # mounts. - mountPath: /etc/cont-init.d/41-plex-preferences - subPath: 41-plex-preferences - hostNetwork: false persistence: transcode: hostPathEnabled: false - hostPath: "" data: hostPathEnabled: false - hostPath: "" config: hostPathEnabled: false - hostPath: "" - -# Probes configuration -probes: - liveness: - failureThreshold: 5 - periodSeconds: 10 - readiness: - failureThreshold: 5 - periodSeconds: 10 - startup: - initialDelaySeconds: 5 - failureThreshold: 30 - periodSeconds: 10 proxy: # This allows to set a proxy environment variable, which PMS uses to fetch the token and assets like movie cover