---
# 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.

# Default values for M-CORD Services
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.


# Global Block defines shared variables for all Kubernetes objects
# etcdurl: the etcd connection peer for centralIP network plugin
global:
  namespace: default
  fqdn: svc.cluster.local
  imagepullpolicy: IfNotPresent
  etcdurl: http://node1:32379

hssdb:
  name: hssdb
  image: krsna1729/c3po-hssdb
  cpu: 3
  memory: 4Gi

hss:
  name: hss
  initimage: krsna1729/c3po-hssdb
  image: krsna1729/c3po-hss
  cpu: 3
  memory: 1Gi

mme:
  name: mme
  initimage: ngick8stesting/c3po-mmeinit
  image: ngick8stesting/c3po-mme:5e2eaf6
  cpu: 3
  memory: 1Gi

spgwc:
  name: spgwc
  initimage: ngick8stesting/kubectl
  image: krsna1729/ngic-cp
  cpu: 3
  memory: 5Gi

spgwu:
  name: spgwu
  nodeselector:
    sriov: vfio
  images:
    tags:
      init: ngick8stesting/c3po-init:latest
      spgwu: krsna1729/ngic-dp:latest
    pullPolicy: IfNotPresent
  resources:
    cpu: 4
    memory: 8Gi
  conf:
    dp:
      # s1u and sgi interfaces are fixed to "s1u-net" and "sgi-net"
      # Note that s1u_af_dev and sgi_af_dev are valid only when sriov is disabled
      # setup-af-iface.sh script creates additional veth pair with the names here
      s1u_af_dev: s1u-veth
      sgi_af_dev: sgi-veth
      # set "--no-pci --vdev eth_af_packet0,iface=s1u-dev --vdev eth_af_packet1,iface=sgi-net"
      # when sriov is disabled
      devices: ""
      rtr_sgi_ip: 13.1.1.254
      sgi_mask: 255.255.255.0

enb:
  host: 10.1.11.3
  port: 36412

# Network block defines the networks
# Note that currently we use fixed list of networks, s1u-net and sgi-net
# type: provide what type of cni will be used
#       possible options are vfioveth and ptp
#       use vfioveth when sriov enabled, and ptp otherwise
# ipam: provide what type of ipam will be used
#       possible options are centralip and host-local
#       note that centralip requires etcd cluster
# subnet: provide subnet range to be assigned to the pod
# gateway: provide default gateway of the network
#          valid only when centralip is used
network:
  sriov:
    enabled: true
  networks:
    - name: s1u-net
      type: vfioveth
      ipam: centralip
      subnet: 119.0.0.0/24
      gateway: 119.0.0.254
    - name: sgi-net
      type: vfioveth
      ipam: centralip
      subnet: 13.1.1.0/24
      gateway: 13.1.1.254
