apiVersion: apps/v1 kind: Deployment metadata: namespace: {{ namespace }} name: flumotion-worker-{{ worker.name }} labels: app: flumotion type: worker spec: replicas: 1 selector: matchLabels: app: flumotion type: worker strategy: type: Recreate revisionHistoryLimit: 5 template: metadata: labels: app: flumotion type: worker spec: nodeName: {{ worker.name }} securityContext: runAsUser: 998 fsGroup: 998 containers: {% for subname, sub in worker.subs.items() %} - name: {{ subname }} image: spreadspace/flumotion:worker-{{ desc.globals.deployment.parameter.image_version }} imagePullPolicy: Always args: - --verbose - -H {{ desc.globals.manager.host }} - -P {{ desc.globals.manager.port }} - -T {{ desc.globals.manager.transport }} - -n {{ sub.fullname }} - -u {{ worker.name }} - -p {{ worker.password }} - -F {{ 8000 + loop.index0 * 10 }}-{{ 8001 + loop.index0 * 10 }} volumeMounts: - name: home mountPath: /srv {% if 'input-decklink' in sub.flags %} - name: decklink-devices mountPath: /dev/blackmagic - name: decklink-libs subPath: libDeckLinkAPI.so mountPath: /usr/lib/libDeckLinkAPI.so - name: decklink-libs subPath: libDeckLinkPreviewAPI.so mountPath: /usr/lib/libDeckLinkPreviewAPI.so securityContext: privileged: true {% endif %} {% endfor %} volumes: - name: home emptyDir: medium: Memory {% if 'input-decklink' in worker.flags %} - name: decklink-devices hostPath: type: Directory path: /dev/blackmagic - name: decklink-libs hostPath: type: Directory path: /usr/lib/ {% endif %}