#Portions Copyright 2018 Xilinx Inc.
#Author: Brian Xu(brianx@xilinx.com)
#
#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.
apiVersion: apps/v1
#if run with k8s v1.16-, replace the above line with
#apiVersion: extensions/v1beta1
kind: DaemonSet
metadata:
  name: fpga-device-plugin-daemonset
  namespace: kube-system
spec:
#if run with k8s v1.16-, the following 3 lines are not required
  selector:
    matchLabels:
      name: xilinx-fpga-device-plugin
  template:
    metadata:
      annotations:
        scheduler.alpha.kubernetes.io/critical-pod: ""
      labels:
        name: xilinx-fpga-device-plugin
    spec:
      tolerations:
      - key: CriticalAddonsOnly
        operator: Exists
      containers:
      - image: xilinxatg/xilinx_k8s_fpga_plugin:1.0.101
        name: xilinx-fpga-device-plugin
        securityContext:
          allowPrivilegeEscalation: false
          capabilities:
            drop: ["ALL"]
        volumeMounts:
          - name: device-plugin
            mountPath: /var/lib/kubelet/device-plugins
      volumes:
        - name: device-plugin
          hostPath:
            path: /var/lib/kubelet/device-plugins
