---
# Copyright 2019 Ciena 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.

# IMAGE SELECTION
# ---------------
# By default no defaults are set and the image tags specified in the helm
# charts will be used. If you would like to use the images generated from the
# HEAD of the "master" git branches, then uncomment this below block and
# set "<VALUE>" to "master". Similarly, if you want to use the images
# generated from the HEAD of the "voltha-2.1" git branches, then uncomment
# this block and replace "<VALUE>" with "voltha-2.1".
defaults:
  image_tag: master
  image_pullPolicy: Always

private_etcd_cluster: false
private_kafka_cluster: false

# OPENONU-ADAPTER IMPLEMENTATION
# ------------------------------
# There are currently two implementations of OPENONU-ADAPTER: the original
# written in Python and the reimplementation written in Go. The variable
# `use_openonu_adapter_go` can be used to optionally use the new Go
# implementation. This is done by setting that value to `true`.
#
# Along with this change you will also may need to set the Docker image
# information below (search for START_OPENONU_ADAPTER_GO).
use_openonu_adapter_go: false

images:
  onos:
    repository: voltha/voltha-onos
    # IMAGE_SELECTION
    # ---------------
    # The helm chart used to deploy ONOS is the public ONOS helm chart so,
    # there is a need to specify the exact image repository and image tag.
    # If you would like to use the "master", "voltha-2.1", or other image
    # just replace the "tag" value below.
    tag: master

# IMAGE_SELECTION
# ---------------
# Below are a list of all the images utilized by kind-voltha. This list is
# provided as a conveinence if you would like to override on a per image
# basis. If you are using the defaults, master, or voltha-2.1 branch there
# is no need to utilize this list.
#  adapter_open_olt:
#    repository: voltha/voltha-openolt-adapter
#    tag: 2.1.1
#  adapter_open_onu:
#    repository: voltha/voltha-openonu-adapter
#    tag: 2.1.0
#  adapter_simulated_olt:
#    repository: voltha/voltha-adapter-simulated-olt
#    tag: 2.1.1
#  adapter_simulated_onu:
#    repository: voltha/voltha-adapter-simulated-onu
#    tag: 2.1.1
#  bbsim:
#    repository: voltha/bbsim
#    tag: master
#  ofagent:
#    repository: voltha/voltha-ofagent-go
#    tag: master
#  rw_core:
#    repository: voltha/voltha-rw-core
#    tag: 2.1.1
# START_OPENONU_ADAPTER_GO - Uncomment the following block to use the
# Go implementation of the openonu-adapter
#  adapter_open_onu_go:
#    repository: voltha-openonu-adapter-go
#    tag: master
# END_OPENONU_ADAPTER_GO

etcd:
  replicas: 3
  extraEnv:
    - name: ETCD_AUTO_COMPACTION_RETENTION
      value: "1"
    - name: ETCD_SNAPSHOT_COUNT
      value: "100000"
    - name: ETCD_HEARTBEAT_INTERVAL
      value: "100"
    - name: ETCD_ELECTION_TIMEOUT
      value: "1000"
    - name: ETCD_MAX_SNAPSHOTS
      value: "5"
    - name: ETCD_QUOTA_BACKEND_BYTES
      value: "0"
    - name: ETCD_MAX_REQUEST_BYTES
      value: "1572864"
    - name: ETCD_GRPC_KEEPALIVE_MIN_TIME
      value: "5s"
    - name: ETCD_GRPC_KEEPALIVE_TIMEOUT
      value: "5s"
    - name: ETCD_DEBUG
      value: "false"

kafka:
  zookeeper:
    replicaCount: 3
    persistence:
      enabled: false
  replicas: 3
  persistence:
    enabled: false
  envOverrides:
    KAFKA_LOG4J_ROOT_LOGLEVEL: ERROR
    KAFKA_TOOLS_LOG4J_LOGLEVEL: ERROR
    # yamllint disable-line rule:line-length
    KAFKA_LOG4J.LOGGERS: "kafka.zookeeper=ERROR,state.change.logger=ERROR,kafka=ERROR,kafka.controller=ERROR"
    KAFKA_LOG_RETENTION_HOURS: 1
    KAFKA_DEFAULT_REPLICATION_FACTOR: 1
    KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1

# voltha:
#   fullNameOverride: voltha

# open-olt:
#   fullNameOverride: voltha-adapter-openolt

# open-onu:
#   fullNameOverride: voltha-adapter-openonu

onos:
  image:
    repository: voltha/voltha-onos
    tag: master
    pullPolicy: Always
  onos_env:
    - name: POD_IP
      valueFrom:
      fieldRef:
        fieldPath: status.podIP
    - name: NAMESPACE
      valueFrom:
      fieldRef:
        fieldPath: metadata.namespace
    - name: ONOS_APPS
      value: "drivers,openflow-base,hostprovider"
  # No persistent volume in Atomix to have clean state for each re-deploy of ONOS
  atomix:
    persistence:
      enabled: false

# Customization for BBSIM
bbsim:
  nni: 1
  pon: 1
  onu: 1
  sadisFormat: "att"
  kafkaEventTopic: "bbsim"
  enableEvents: false

# Customization for BBSIM SADIS Servier
sadis:
  config:
    bbsim_sadis_server:
      sleep_time: 5s

# START EFK Setup to push voltha logs
# elasticstack config
# ref: https://github.com/elastic/helm-charts/tree/7.7.0/elasticsearch
elasticsearch:
  replicas: 1
  minimumMasterNodes: 1
  # set cpu and memory configuration
  resources:
    requests:
      cpu: "400m"
      memory: "1Gi"
    limits:
      cpu: "1000m"
      memory: "2Gi"
  # setup persistence volume.By default persistence volumeclaim is disabled
  volumeClaimTemplate:
    accessModes: ["ReadWriteOnce"]
    resources:
      requests:
        storage: 5Gi
  persistence:
    enabled: false
  # setup cluster health status as yellow
  clusterHealthCheckParams: "wait_for_status=yellow&timeout=1s"

# kibana config
# ref: https://github.com/elastic/helm-charts/tree/7.7.0/kibana
kibana:
  elasticsearchHosts: "http://elasticsearch-master:9200"

# fluentd-elasticsearch config
# ref: https://github.com/kiwigrid/helm-charts/tree/master/charts/fluentd-elasticsearch
fluentd-elasticsearch:
  elasticsearch:
    # set elasticsearch host
    hosts: ["elasticsearch-master:9200"]
    sslVerify: false

# SHOCK THE MONKEY OR LET LOSE THE DOGS OF WAR
# The VOLTHA charts have support for adding extra labels to deployments and
# pods. These extra labels can be used to integrate with other utilities
# such as kube-monkey to add a bit of chaos to the cluster. Below are some
# settings that can be uncommented to opt-in VOLTHA deployments/pods to
# kube-monkey. For example, if you want ALL deployments and pods to opt-in
# then uncomment the `extra_deployment_labels` and `extra_pod_label` blocks.
# If you want to be more selected then comment the blocks that pertain to the
# targets you care about.

# extra_deployment_labels:
#   kube-monkey/enabled: enabled
#   kube-monkey/identifier: monkey-victim
#   kube-monkey/mtbf: 1
#   kube-monkey/kill-mode: fixed
#   kube-monkey/kill-value: 1
#
# extra_pod_labels:
#   kube-monkey/enabled: enabled
#   kube-monkey/identifier: monkey-victim
#   kube-monkey/mtbf: 1
#   kube-monkey/kill-mode: fixed
#   kube-monkey/kill-value: 1
#
# rw_core_deployment_labels:
#   kube-monkey/enabled: enabled
#   kube-monkey/identifier: monkey-victim
#   kube-monkey/mtbf: 1
#   kube-monkey/kill-mode: fixed
#   kube-monkey/kill-value: 1
#
# rw_core_pod_labels:
#   kube-monkey/enabled: enabled
#   kube-monkey/identifier: monkey-victim
#   kube-monkey/mtbf: 1
#   kube-monkey/kill-mode: fixed
#   kube-monkey/kill-value: 1
#
# ofagent_deployment_labels:
#   kube-monkey/enabled: enabled
#   kube-monkey/identifier: monkey-victim
#   kube-monkey/mtbf: 1
#   kube-monkey/kill-mode: fixed
#   kube-monkey/kill-value: 1
#
# ofagent_pod_labels:
#   kube-monkey/enabled: enabled
#   kube-monkey/identifier: monkey-victim
#   kube-monkey/mtbf: 1
#   kube-monkey/kill-mode: fixed
#   kube-monkey/kill-value: 1
#
# openolt_deployment_labels:
#   kube-monkey/enabled: enabled
#   kube-monkey/identifier: monkey-victim
#   kube-monkey/mtbf: 1
#   kube-monkey/kill-mode: fixed
#   kube-monkey/kill-value: 1
#
# openolt_pod_labels:
#   kube-monkey/enabled: enabled
#   kube-monkey/identifier: monkey-victim
#   kube-monkey/mtbf: 1
#   kube-monkey/kill-mode: fixed
#   kube-monkey/kill-value: 1
#
# openonu_deployment_labels:
#   kube-monkey/enabled: enabled
#   kube-monkey/identifier: monkey-victim
#   kube-monkey/mtbf: 1
#   kube-monkey/kill-mode: fixed
#   kube-monkey/kill-value: 1
#
# openonu_pod_labels:
#   kube-monkey/enabled: enabled
#   kube-monkey/identifier: monkey-victim
#   kube-monkey/mtbf: 1
#   kube-monkey/kill-mode: fixed
#   kube-monkey/kill-value: 1
#
# simolt_deployment_labels:
#   kube-monkey/enabled: enabled
#   kube-monkey/identifier: monkey-victim
#   kube-monkey/mtbf: 1
#   kube-monkey/kill-mode: fixed
#   kube-monkey/kill-value: 1
#
# simolt_pod_labels:
#   kube-monkey/enabled: enabled
#   kube-monkey/identifier: monkey-victim
#   kube-monkey/mtbf: 1
#   kube-monkey/kill-mode: fixed
#   kube-monkey/kill-value: 1
#
# simonu_deployment_labels:
#   kube-monkey/enabled: enabled
#   kube-monkey/identifier: monkey-victim
#   kube-monkey/mtbf: 1
#   kube-monkey/kill-mode: fixed
#   kube-monkey/kill-value: 1
#
# simonu_pod_labels:
#   kube-monkey/enabled: enabled
#   kube-monkey/identifier: monkey-victim
#   kube-monkey/mtbf: 1
#   kube-monkey/kill-mode: fixed
#   kube-monkey/kill-value: 1
