# Copyright © 2017 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
  readinessRepository: oomk8s
  readinessImage: readiness-check:2.0.2
  loggingRepository: docker.elastic.co
  loggingImage: beats/filebeat:5.5.0
  # envsusbt
  envsubstImage: dibi/envsubst

  mariadbGalera:
    #This flag allows SO to instantiate its own mariadb-galera cluster
    #If shared instance is used, this chart assumes that DB already exists
    localCluster: false
    service: mariadb-galera
    internalPort: 3306
    nameOverride: mariadb-galera

#################################################################
# Secrets metaconfig
#################################################################
secrets:
  - uid: db-root-password
    type: password
    externalSecret: '{{ .Values.global.mariadbGalera.localCluster | ternary (default (include "common.mariadb.secret.rootPassSecretName" (dict "dot" . "chartName" (index .Values "mariadb-galera" "nameOverride"))) (index .Values "mariadb-galera" "config" "mariadbRootPasswordExternalSecret")) (include "common.mariadb.secret.rootPassSecretName" (dict "dot" . "chartName" .Values.global.mariadbGalera.nameOverride)) }}'
    password: '{{ (index .Values "mariadb-galera" "config" "mariadbRootPassword" }}'
    passwordPolicy: required
  - uid: db-secret
    name: &dbSecretName '{{ include "common.release" . }}-sdnc-portal-db-secret'
    type: basicAuth
    # This is a nasty trick that allows you override this secret using external one
    # with the same field that is used to pass this to subchart
    externalSecret: '{{ ternary "" (tpl (default "" (index .Values "mariadb-galera" "config" "userCredentialsExternalSecret")) .) (hasSuffix "sdnc-portal-db-secret" (index .Values "mariadb-galera" "config" "userCredentialsExternalSecret"))}}'
    login: '{{ index .Values "mariadb-galera" "config" "userName" }}'
    password: '{{ index .Values "mariadb-galera" "config" "userPassword" }}'
    passwordPolicy: required
  - uid: odl-creds
    type: basicAuth
    externalSecret: '{{ tpl (default "" .Values.config.odlCredsExternalSecret) . }}'
    login: '{{ .Values.config.odlUser }}'
    password: '{{ .Values.config.odlPassword }}'
    passwordPolicy: required
  - uid: fabric-db-creds
    type: basicAuth
    externalSecret: '{{ tpl (default "" .Values.config.odlCredsExternalSecret) . }}'
    login: '{{ .Values.config.dbFabricUser }}'
    password: '{{ .Values.config.dbFabricPassword }}'
    passwordPolicy: required
  - uid: keystore-password
    type: password
    externalSecret: '{{ tpl (default "" .Values.config.KeyStorePwdExternalSecret) . }}'
    password: '{{ .Values.config.keystorePwd }}'
    passwordPolicy: required

#################################################################
# Application configuration defaults.
#################################################################
# application image
repository: nexus3.onap.org:10001
image: onap/admportal-sdnc-image:1.7.6
config:
  dbFabricDB: mysql
  dbFabricUser: admin
  dbFabricPassword: admin
  # dbFabricDBCredsExternalSecret: some secret
  sdncChartName: sdnc
  configDir: /opt/onap/sdnc/data/properties
  storesDir: /opt/onap/sdnc/data/stores
  odlUser: admin
  odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
  # odlCredsExternalSecret: some secret
  keystorePwd: ff^G9D]yf&r}Ktum@BJ0YB?N
  # keystorePwdExternalSecret: some secret

mariadb-galera:
  config:
    userCredentialsExternalSecret: *dbSecretName
    userName: sdnctl
    userPassword: gamma
    mysqlDatabase: sdnctl
  nameOverride: sdnc-portal-galera
  service:
    name: sdnc-portal-galera
    portName: sdnc-portal-galera
    internalPort: 3306
  replicaCount: 1
  persistence:
    enabled: true
    mountSubPath: sdnc-portal/maria/data

# default number of instances
replicaCount: 0

nodeSelector: {}

affinity: {}

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

readiness:
  initialDelaySeconds: 60
  periodSeconds: 10

service:
  type: NodePort
  name: sdnc-portal
  portName: sdnc-portal
  internalPort: 8443
  externalPort: 8443
  nodePort: "01"

ingress:
  enabled: false

#Resource limit flavor -By default using small
flavor: small
#segregation for different environment (small and large)

resources:
  small:
    limits:
      cpu: 1
      memory: 1Gi
    requests:
      cpu: 0.5
      memory: 500Mi
  large:
    limits:
      cpu: 2
      memory: 2Gi
    requests:
      cpu: 1
      memory: 1Gi
  unlimited: {}