apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
  name: sriovnetworknodepolicies.sriovnetwork.openshift.io
spec:
  group: sriovnetwork.openshift.io
  names:
    kind: SriovNetworkNodePolicy
    listKind: SriovNetworkNodePolicyList
    plural: sriovnetworknodepolicies
    singular: sriovnetworknodepolicy
  scope: Namespaced
  subresources:
    status: {}
  preserveUnknownFields: false
  validation:
    openAPIV3Schema:
      description: SriovNetworkNodePolicy is the Schema for the sriovnetworknodepolicies
        API
      properties:
        apiVersion:
          description: 'APIVersion defines the versioned schema of this representation
            of an object. Servers should convert recognized schemas to the latest
            internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources'
          type: string
        kind:
          description: 'Kind is a string value representing the REST resource this
            object represents. Servers may infer this from the endpoint the client
            submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds'
          type: string
        metadata:
          type: object
        spec:
          description: SriovNetworkNodePolicySpec defines the desired state of SriovNetworkNodePolicy
          properties:
            deviceType:
              description: The driver type for configured VFs. Allowed value "netdevice",
                "vfio-pci". Defaults to netdevice.
              enum:
              - netdevice
              - vfio-pci
              type: string
            isRdma:
              description: RDMA mode. Defaults to false.
              type: boolean
            mtu:
              description: MTU of VF
              minimum: 1
              type: integer
            nicSelector:
              description: NicSelector selects the NICs to be configured
              properties:
                deviceID:
                  description: The device hex code of SR-IoV device. Allowed value
                    "1583", "158b", "10fb", "1015", "1017".
                  enum:
                  - "1583"
                  - 158b
                  - 10fb
                  - "1015"
                  - "1017"
                  type: string
                pfNames:
                  description: Name of SR-IoV PF.
                  items:
                    type: string
                  type: array
                rootDevices:
                  description: PCI address of SR-IoV PF.
                  items:
                    type: string
                  type: array
                vendor:
                  description: The vendor hex code of SR-IoV device. Allowed value
                    "8086", "15b3".
                  enum:
                  - "8086"
                  - 15b3
                  type: string
              type: object
            nodeSelector:
              additionalProperties:
                type: string
              description: NodeSelector selects the nodes to be configured
              type: object
            numVfs:
              description: Number of VFs for each PF
              minimum: 0
              type: integer
            priority:
              description: Priority of the policy, higher priority policies can override
                lower ones.
              maximum: 99
              minimum: 0
              type: integer
            resourceName:
              description: SRIOV Network device plugin endpoint resource name
              type: string
          required:
          - nicSelector
          - nodeSelector
          - numVfs
          - resourceName
          type: object
        status:
          description: SriovNetworkNodePolicyStatus defines the observed state of
            SriovNetworkNodePolicy
          type: object
      type: object
  version: v1
  versions:
  - name: v1
    served: true
    storage: true
