---
# Copyright 2017-present Open Networking Foundation
#
# 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.

# Aggregation chart of SEBA charts

# configuration for kafka
voltha-kafka:
  replicas: 1
  persistence:
    enabled: false
  zookeeper:
    servers: 1
    persistence:
      enabled: false

voltha:
  etcd-operator:
    customResources:
      createEtcdClusterCRD: true
  kafkaReleaseName: "seba-substrate-voltha-kafka"

# from configs/onos-voltha.yaml
onos-voltha:
  nameOverride: "onosv"
  fullnameOverride: "onos-voltha"

  services:
    openflowServiceType: ClusterIP
    ovsdbServiceType: ClusterIP
    sshServiceType: NodePort
    uiServiceType: NodePort
    ssh:
      nodePort: 30115
    ui:
      nodePort: 30120

  onos_env:
  - name: POD_IP
    valueFrom:
    fieldRef:
      fieldPath: status.podIP
  - name: NAMESPACE
    valueFrom:
    fieldRef:
      fieldPath: metadata.namespace
  - name: ONOS_APPS
    value: "drivers,openflow-base"


# from configs/onos-fabric.yaml
onos-fabric:
  nameOverride: "onosf"
  fullnameOverride: "onos-fabric"

  services:
    openflowServiceType: NodePort
    ovsdbServiceType: NodePort
    sshServiceType: NodePort
    uiServiceType: NodePort
    ovsdb:
      nodePort: 31640
    openflow:
      nodePort: 31653
    ssh:
      nodePort: 31101
    ui:
      nodePort: 31181

  onos_env:
    - name: ONOS_APPS
      value: "openflow"
