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

# 0.1. profile definition
profile:
  comac:
    enabled: true
  base-kubernetes:
    enabled: true
residentialService:
  enabled: true

# 0.2. enable/disable sub-chart ProgRAN
progran:
  enabled: false

# 3. COMAC parameters
comac:
  onosRestService: cord-platform-onos-ui.default.svc.cluster.local
  kafkaService: cord-platform-kafka.default.svc.cluster.local:9092

  onos-service:
    kafkaService: cord-platform-kafka
    onosRestService: "cord-platform-onos-cord-ui.default.svc.cluster.local"
    enabled: true

  fabric:
    kafkaService: cord-platform-kafka

  volt:
    kafkaService: cord-platform-kafka
    volthaRestService: voltha.voltha.svc.cluster.local
    onosRestService: cord-platform-onos-ui.default.svc.cluster.local

  fabric-crossconnect:
    kafkaService: cord-platform-kafka

  sadis-server:
    kafkaBroker: cord-platform-kafka:9092

  # parameter in mcord service for progran
  progran:
    enabled: false
    image:
      repository: 'omecproject/progran-synchronizer'
      tag: 'comac-1.0.0'
      pullPolicy: 'IfNotPresent'

  mcord-subscriber:
    image:
      repository: 'omecproject/mcord-synchronizer'
      tag: 'comac-1.0.0'
      pullPolicy: 'IfNotPresent'

  residentialService:
    enabled: true

# 4. base-kubernetes parameters
base-kubernetes:
  kubernetes:
    image:
      repository: 'omecproject/kubernetes-synchronizer'
      tag: 'comac-1.0.0'
      pullPolicy: 'IfNotPresent'
