#============LICENSE_START========================================================
# ================================================================================
# Copyright (c) 2021 J. F. Lucas. All rights reserved.
# ================================================================================
# 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.
# ============LICENSE_END=========================================================

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

#################################################################
# Filebeat configuration defaults.
#################################################################
filebeatConfig:
  logstashServiceName: log-ls
  logstashPort: 5044

#################################################################
# initContainer images.
#################################################################
tlsImage: onap/org.onap.dcaegen2.deployments.tls-init-container:2.1.0
consulLoaderImage: onap/org.onap.dcaegen2.deployments.consul-loader-container:1.1.0

#################################################################
# Application configuration defaults.
#################################################################
# application image
image: onap/org.onap.dcaegen2.services.prh.prh-app-server:1.7.1
pullPolicy: Always

# log directory where logging sidecar should look for log files
# if absent, no sidecar will be deployed
logDirectory: /opt/app/prh/logs

# directory where TLS certs should be stored
# if absent, no certs will be retrieved and stored
certDirectory: /opt/app/prh/etc/cert

# TLS role -- set to true if microservice acts as server
# If true, an init container will retrieve a server cert
# and key from AAF and mount them in certDirectory.
tlsServer: true

secrets:
  - uid: &aaiCredsUID aaicreds
    type: basicAuth
    login: '{{ .Values.aaiCreds.user }}'
    password: '{{ .Values.aaiCreds.password }}'
    passwordPolicy: required

# dependencies
readinessCheck:
  wait_for:
    - dcae-config-binding-service
    - aaf-cm

# probe configuration
readiness:
  initialDelaySeconds: 5
  periodSeconds: 15
  path: /heartbeat
  scheme: HTTP
  port: 8100

# service configuration
service:
  type: ClusterIP
  name: dcae-prh
  ports:
    - port: 8100
      name: http

aaiCreds:
  user: AAI
  password: AAI

credentials:
- name: AAI_USER
  uid: *aaiCredsUID
  key: login
- name: AAI_PASSWORD
  uid: *aaiCredsUID
  key: password

customEnvVars:
- name: AUTH_HDR
  value: "Basic `echo -n ${AAI_USER}:${AAI_PASSWORD} | base64`"

# initial application configuration
# Configuration used for in-app substitution must be defined as $${undefined}{<parameter>} under applicationConfig
# inorder to get ${<parameter>} post envsubst (done part of dcae helm service-common templates)
applicationConfig:
  dmaap.dmaapConsumerConfiguration.dmaapContentType: "application/json"
  dmaap.dmaapConsumerConfiguration.consumerId: "c12"
  dmaap.dmaapConsumerConfiguration.consumerGroup: "OpenDCAE-c12"
  dmaap.dmaapConsumerConfiguration.timeoutMs: -1
  dmaap.dmaapProducerConfiguration.dmaapContentType: "application/json"
  dmaap.dmaapUpdateProducerConfiguration.dmaapContentType: "application/json"
  aai.aaiClientConfiguration.pnfUrl: https://aai.onap.svc.cluster.local:8443/aai/v23/network/pnfs/pnf
  aai.aaiClientConfiguration.baseUrl: https://aai.onap.svc.cluster.local:8443/aai/v23
  aai.aaiClientConfiguration.aaiHost: aai.onap.svc.cluster.local
  aai.aaiClientConfiguration.aaiHostPortNumber: 8443
  aai.aaiClientConfiguration.aaiProtocol: "https"
  aai.aaiClientConfiguration.aaiUserName: ${AAI_USER}
  aai.aaiClientConfiguration.aaiUserPassword: ${AAI_PASSWORD}
  aai.aaiClientConfiguration.aaiIgnoreSslCertificateErrors: true
  aai.aaiClientConfiguration.aaiBasePath: "/aai/v23"
  aai.aaiClientConfiguration.aaiPnfPath: "/network/pnfs/pnf"
  aai.aaiClientConfiguration.aaiServiceInstancePath: "/business/customers/customer/{{customer}}/service-subscriptions/service-subscription/{{serviceType}}/service-instances/service-instance/{{serviceInstanceId}}"
  aai.aaiClientConfiguration.aaiHeaders:
      X-FromAppId: "prh"
      X-TransactionId: "9999"
      Accept: "application/json"
      Real-Time: "true"
      Authorization: $AUTH_HDR
  security.trustStorePath: "/opt/app/prh/etc/cert/trust.jks"
  security.trustStorePasswordPath: "/opt/app/prh/etc/cert/trust.pass"
  security.keyStorePath: "/opt/app/prh/etc/cert/cert.jks"
  security.keyStorePasswordPath: "/opt/app/prh/etc/cert/jks.pass"
  security.enableAaiCertAuth: false
  security.enableDmaapCertAuth: false
  streams_publishes:
      pnf-update:
        type: "message_router"
        dmaap_info:
          topic_url: http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.PNF_UPDATE
      pnf-ready:
        type: "message_router"
        dmaap_info:
          topic_url: http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.PNF_READY
  streams_subscribes:
      ves-reg-output:
        type: "message_router"
        dmaap_info:
          topic_url: http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.VES_PNFREG_OUTPUT

applicationEnv:
  CBS_CLIENT_CONFIG_PATH: '/app-config-input/application_config.yaml'

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