---
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.6.7
        command: ["/tini"]
        args: ["-g", "--", "/usr/local/bin/toolbox.sh"]
        imagePullPolicy: IfNotPresent
        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
        volumeMounts:
        - mountPath: /dev
          name: dev
        - mountPath: /sys/bus
          name: sysbus
        - mountPath: /lib/modules
          name: libmodules
        - name: mon-endpoint-volume
          mountPath: /etc/rook
      # if hostNetwork: false, the "rbd map" command hangs, see https://github.com/rook/rook/issues/2021
      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
