| {{/* |
| Copyright 2019-present Open Networking Foundation |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| */}} |
| |
| {{ tuple "video-archive" . | include "cdn-remote.service_account" }} |
| --- |
| apiVersion: apps/v1 |
| kind: StatefulSet |
| metadata: |
| name: video-archive |
| labels: |
| {{ tuple "video-archive" . | include "cdn-remote.metadata_labels" | indent 4 }} |
| spec: |
| replicas: {{ .Values.config.videoArchive.replicas }} |
| selector: |
| matchLabels: |
| {{ tuple "video-archive" . | include "cdn-remote.metadata_labels" | indent 6 }} |
| serviceName: "video-archive" |
| template: |
| metadata: |
| labels: |
| {{ tuple "video-archive" . | include "cdn-remote.metadata_labels" | indent 8 }} |
| spec: |
| {{- if .Values.nodeSelectors.enabled }} |
| nodeSelector: |
| {{ .Values.nodeSelectors.videoArchive.label }}: {{ .Values.nodeSelectors.videoArchive.value }} |
| {{- end }} |
| serviceAccountName: video-archive |
| initContainers: |
| - name: video-archive-dep-check |
| image: {{ .Values.images.tags.depCheck | quote }} |
| imagePullPolicy: {{ .Values.images.pullPolicy }} |
| securityContext: |
| allowPrivilegeEscalation: false |
| readOnlyRootFilesystem: false |
| runAsUser: 0 |
| env: |
| - name: POD_NAME |
| valueFrom: |
| fieldRef: |
| apiVersion: v1 |
| fieldPath: metadata.name |
| - name: NAMESPACE |
| valueFrom: |
| fieldRef: |
| apiVersion: v1 |
| fieldPath: metadata.namespace |
| - name: PATH |
| value: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/ |
| - name: COMMAND |
| value: "echo done" |
| - name: DEPENDENCY_POD_JSON |
| value: '[{"labels": {"app": "ant-media"}, "requireSameNode": false}]' |
| command: |
| - kubernetes-entrypoint |
| volumeMounts: |
| [] |
| containers: |
| {{- if .Values.config.videoArchive.q720p.enabled }} |
| - name: streaming-720 |
| image: {{ .Values.images.tags.videoArchive | quote }} |
| imagePullPolicy: {{ .Values.images.pullPolicy }} |
| securityContext: |
| allowPrivilegeEscalation: false |
| readOnlyRootFilesystem: false |
| runAsUser: 0 |
| stdin: true |
| tty: true |
| command: [ "bash", "-xc"] |
| args: |
| - /opt/start-stream.sh 720 |
| {{- if .Values.resources.enabled }} |
| resources: |
| {{ toYaml .Values.resources.videoArchive | indent 10 }} |
| {{- end }} |
| volumeMounts: |
| - name: start-script |
| mountPath: /opt/start-stream.sh |
| subPath: start-stream.sh |
| {{- end }} |
| {{- if .Values.config.videoArchive.q480p.enabled }} |
| - name: streaming-480 |
| image: {{ .Values.images.tags.videoArchive | quote }} |
| imagePullPolicy: {{ .Values.images.pullPolicy }} |
| securityContext: |
| allowPrivilegeEscalation: false |
| readOnlyRootFilesystem: false |
| runAsUser: 0 |
| stdin: true |
| tty: true |
| command: [ "bash", "-xc"] |
| args: |
| - /opt/start-stream.sh 480 |
| {{- if .Values.resources.enabled }} |
| resources: |
| {{ toYaml .Values.resources.videoArchive | indent 10 }} |
| {{- end }} |
| volumeMounts: |
| - name: start-script |
| mountPath: /opt/start-stream.sh |
| subPath: start-stream.sh |
| {{- end }} |
| {{- if .Values.config.videoArchive.q360p.enabled }} |
| - name: streaming-360 |
| image: {{ .Values.images.tags.videoArchive | quote }} |
| imagePullPolicy: {{ .Values.images.pullPolicy }} |
| securityContext: |
| allowPrivilegeEscalation: false |
| readOnlyRootFilesystem: false |
| runAsUser: 0 |
| stdin: true |
| tty: true |
| command: [ "bash", "-xc"] |
| args: |
| - /opt/start-stream.sh 360 |
| {{- if .Values.resources.enabled }} |
| resources: |
| {{ toYaml .Values.resources.videoArchive | indent 10 }} |
| {{- end }} |
| volumeMounts: |
| - name: start-script |
| mountPath: /opt/start-stream.sh |
| subPath: start-stream.sh |
| {{- end }} |
| volumes: |
| - name: start-script |
| configMap: |
| name: start-stream |
| defaultMode: 493 |