# Copyright © 2018  AT&T Intellectual Property.  All rights reserved.
# Modifications Copyright © 2018 Amdocs,Bell Canada
#
# 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.

#################################################################
# Global configuration defaults.
#################################################################
global:
  nodePortPrefix: 302

secrets:
  - uid: pg-root-pass
    name: &pgRootPassSecretName '{{ include "common.release" . }}-dmaap-bc-pg-root-pass'
    type: password
    externalSecret: '{{ ternary "" (tpl (default "" .Values.postgres.config.pgRootPasswordExternalSecret) .) (hasSuffix "dmaap-bc-pg-root-pass" .Values.postgres.config.pgRootPasswordExternalSecret) }}'
    password: '{{ .Values.postgres.config.pgRootpassword }}'
    policy: generate
  - uid: pg-user-creds
    name: &pgUserCredsSecretName '{{ include "common.release" . }}-dmaap-bc-pg-user-creds'
    type: basicAuth
    externalSecret: '{{ ternary "" (tpl (default "" .Values.postgres.config.pgUserExternalSecret) .) (hasSuffix "dmaap-bc-pg-user-creds" .Values.postgres.config.pgUserExternalSecret) }}'
    login: '{{ .Values.postgres.config.pgUserName }}'
    password: '{{ .Values.postgres.config.pgUserPassword }}'
    passwordPolicy: generate

#################################################################
# Application configuration defaults.
#################################################################
pullPolicy: Always

# application images
image: onap/dmaap/dmaap-bc:2.0.8


# application configuration
dmaapMessageRouterService: message-router

# change the following value to point to Windriver instance maintained
# by AAF team.
# e.g.
#aafURL: https://aaf-onap-test.osaaf.org:8095/proxy/
aafURL: https://aaf-service:8100/
aafLocateUrl: https://aaf-locate:8095
topicMgrUser: dmaap-bc@dmaap-bc.onap.org
topicMgrPwd: demo123456!
adminUser: aaf_admin@people.osaaf.org
adminPwd: demo123456!

#################################################################
# AAF part
#################################################################
certInitializer:
  nameOverride: dmaap-bc-cert-initializer
  aafDeployFqi: deployer@people.osaaf.org
  aafDeployPass: demo123456!
  # aafDeployCredsExternalSecret: some secret
  fqdn: dmaap-bc
  fqi: dmaap-bc@dmaap-bc.onap.org
  publicFqdn: dmaap-bc.onap.org
  cadiLatitude: 0.0
  cadiLongitude: 0.0
  app_ns: org.osaaf.aaf
  credsPath: /opt/app/osaaf/local

persistence:
  aafCredsPath: /opt/app/osaaf/local/

# for Casablanca default deployment, leave this true to
# get a topic namespace that matches MR.  When set to false,
# it will compose the topic namespace using the kubernetes namespace value
fixedTopicNamespace: true

# for quicker deployments in dev, ability to disable using postgres
PG:
  enabled: true

nodeSelector: {}

affinity: {}

# probe configuration parameters
liveness:
  initialDelaySeconds: 10
  periodSeconds: 10
  # necessary to disable liveness probe when setting breakpoints
  # in debugger so K8s doesn't restart unresponsive container
  port: api
  enabled: true

readiness:
  initialDelaySeconds: 10
  periodSeconds: 10
  port: api


service:
  type: NodePort
  name: dmaap-bc
  ports:
    - name: api
      port: 8443
      plain_port: 8080
      port_protocol: http
      nodePort: 42


# application configuration override for postgres
postgres:
  nameOverride: dbc-pg
  service:
    name: dbc-postgres
    name2: dbc-pg-primary
    name3: dbc-pg-replica
  container:
    name:
      primary: dbc-pg-primary
      replica: dbc-pg-replica
  config:
    pgUserName: dmaap_admin
    pgDatabase: dmaap
    pgUserExternalSecret: *pgUserCredsSecretName
    pgRootPasswordExternalSecret: *pgRootPassSecretName
  persistence:
    mountSubPath: dbc/data
    mountInitPath: dbc

ingress:
  enabled: false
  service:
    - baseaddr: "dmaapbc"
      name: "dmaap-bc"
      port: 8443
  config:
    ssl: "redirect"

# Resource Limit flavor -By Default using small
flavor: small
# Segregation for Different environment (Small and Large)
resources:
  small:
    limits:
      cpu: 2
      memory: 4Gi
    requests:
      cpu: 1
      memory: 1Gi
  large:
    limits:
      cpu: 4
      memory: 8Gi
    requests:
      cpu: 2
      memory: 2Gi
  unlimited: {}

#Pods Service Account
serviceAccount:
  nameOverride: dmaap-bc
  roles:
    - read