kind: Deployment
apiVersion: apps/v1
metadata:
  name: ipp-usb
  labels:
    app.kubernetes.io/name: ipp-usb
  annotations:
    configmap.reloader.stakater.com/reload: "ipp-usb"
spec:
  replicas: 1
  strategy:
    type: Recreate
  selector:
    matchLabels:
      app.kubernetes.io/name: ipp-usb
  template:
    metadata:
      labels:
        app.kubernetes.io/name: ipp-usb
      annotations:
        descheduler.alpha.kubernetes.io/evict: "true"
    spec:
      containers:
        - name: ipp-usb
          image: imartyn/ipp-usb:latest
          resources: {}
          securityContext: 
            allowPrivilegeEscalation: true
            privileged: true
          ports:
            - containerPort: 60000
              protocol: TCP
          volumeMounts:
            - mountPath: /app/ipp-usb.conf
              subPath: ipp-usb.conf
              name: configmap
      volumes:
        - configMap:
            name: ipp-usb
          name: configmap
      affinity:
        nodeAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
            nodeSelectorTerms:
            - matchExpressions:
              - key: feature.node.kubernetes.io/usb-ff_04a9_1913.present
                operator: Exists