---
# Copyright 2018-present Open Networking Foundation
# Copyright 2018 Intel Corporation
#
# 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.

{{- range .Values.network.networks }}
---
apiVersion: "k8s.cni.cncf.io/v1"
kind: NetworkAttachmentDefinition
metadata:
  name: {{ .name }}
{{- if $.Values.network.sriov.enabled }}
  annotations:
    k8s.v1.cni.cncf.io/resourceName: intel.com/sriov_netdevice
{{- end }}
spec:
  config: '{
    "type": {{ .type | quote }},
    "ipam": {
        "type": {{ .ipam | quote }},
    {{- if eq .ipam "host-local" }}
        "subnet": {{ .subnet | quote }},
        "gateway": {{ .gateway | quote }}
    {{- else if eq .ipam "centralip" }}
        "ipType": "cluster",
        "network": {{ .subnet | quote }},
        "etcdURL": {{ $.Values.etcdurl | quote }}
    {{- end }}
    }
  }'
{{- end }}
