---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: rook-direct-mount
  namespace: rook-ceph
  labels:
    app: rook-direct-mount
spec:
  replicas: 1
  selector:
    matchLabels:
      app: rook-direct-mount
  template:
    metadata:
      labels:
        app: rook-direct-mount
    spec:
      dnsPolicy: ClusterFirstWithHostNet
      containers:
        - name: rook-direct-mount
          image: rook/ceph:v1.9.4
          imagePullPolicy: IfNotPresent
          command: ["/bin/bash"]
          args: ["-m", "-c", "/usr/local/bin/toolbox.sh"]
          tty: true
          env:
            - name: ROOK_CEPH_USERNAME
              valueFrom:
                secretKeyRef:
                  name: rook-ceph-mon
                  key: ceph-username
            - name: ROOK_CEPH_SECRET
              valueFrom:
                secretKeyRef:
                  name: rook-ceph-mon
                  key: ceph-secret
          securityContext:
            privileged: true
            runAsUser: 0
          volumeMounts:
            - mountPath: /dev
              name: dev
            - mountPath: /sys/bus
              name: sysbus
            - mountPath: /lib/modules
              name: libmodules
            - name: mon-endpoint-volume
              mountPath: /etc/rook
            - name: backups
              mountPath: /mnt/backups
            - name: direct-mount-backup-script
              mountPath: /scripts
      hostNetwork: true
      volumes:
        - name: dev
          hostPath:
            path: /dev
        - name: sysbus
          hostPath:
            path: /sys/bus
        - name: libmodules
          hostPath:
            path: /lib/modules
        - name: mon-endpoint-volume
          configMap:
            name: rook-ceph-mon-endpoints
            items:
              - key: data
                path: mon-endpoints
        - name: backups
          nfs:
            server: "osiris.${SECRET_PRIVATE_DOMAIN}"
            path: /cairo/Apps/External/Backups
        - name: direct-mount-backup-script
          projected:
            defaultMode: 0775
            sources:
              - configMap:
                  name: direct-mount-backup-script
