# Copyright © 2018 AT&T USA
#
# 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
  nodePortPrefixExt: 304
  repository: nexus3.onap.org:10001
  readinessImage: onap/oom/readiness:3.0.1
  loggingRepository: docker.elastic.co
  loggingImage: beats/filebeat:5.5.0
  soBaseImage: onap/so/base-image:1.0
  mariadbGalera:
    nameOverride: mariadb-galera
    serviceName: mariadb-galera
    servicePort: "3306"
    # mariadbRootPassword: secretpassword
    # rootPasswordExternalSecret: some secret
    #This flag allows SO to instantiate its own mariadb-galera cluster,
    #serviceName and nameOverride should be so-mariadb-galera if this flag is enabled
    localCluster: false
  persistence:
    mountPath: /dockerdata-nfs
  #This configuration specifies Service and port for SDNC OAM interface
  sdncOamService: sdnc-oam
  sdncOamPort: 8282
  #This configuration will run the migration. The configurations are for backing up the data
  #from DB and then restoring it to the present versions preferred DB.
  migration:
    enabled: false
    dbHost: mariadb-galera
    dbPort: 3306
    dbUser: root
    dbPassword: secretpassword
    # dbCredsExternalSecret: some secret
  msbEnabled: true
  security:
    aaf:
      enabled: false
  aaf:
    auth:
      header: Basic c29Ac28ub25hcC5vcmc6ZGVtbzEyMzQ1Ngo=
      encrypted: 3EDC974C5CD7FE54C47C7490AF4D3B474CDD7D0FFA35A7ACDE3E209631E45F428976EAC0858874F17390A13149E63C90281DD8D20456
  app:
    siteName: onapheat
    auth: 3EDC974C5CD7FE54C47C7490AF4D3B474CDD7D0FFA35A7ACDE3E209631E45F428976EAC0858874F17390A13149E63C90281DD8D20456
    defaultCloudOwner: onap
    cadi:
      cadiLoglevel: DEBUG
      cadiKeyFile: /app/client/org.onap.so.keyfile
      cadiTrustStore: /app/client/org.onap.so.trust.jks
      cadiTruststorePassword: enc:MFpuxKeYK6Eo6QXjDUjtOBbp0FthY7SB4mKSIJm_RWC
      cadiLatitude: 38.4329
      cadiLongitude: -90.43248
      aafEnv: IST
      aafApiVersion: 2.1
      aafRootNs: org.onap.so
      aafLocateUrl: https://aaf-locate.onap:8095
      aafUrl: https://aaf-locate.onap:8095/locate/org.osaaf.aaf.service:2.1
    msoKey: 07a7159d3bf51a0e53be7a8f89699be7
  client:
    certs:
      truststore: /app/client/org.onap.so.trust.jks
      keystore: /app/client/org.onap.so.jks
      trustStorePassword: LHN4Iy5DKlcpXXdWZ0pDNmNjRkhJIzpI
      keyStorePassword: c280b25hcA==
  certificates:
    path: /etc/ssl/certs
    share_path: /usr/local/share/ca-certificates/

#################################################################
# Secrets metaconfig
#################################################################
secrets:
  - uid: db-root-pass
    name: &dbRootPassSecretName '{{ include "common.release" . }}-so-db-root-pass'
    type: password
    externalSecret: '{{ ternary .Values.global.mariadbGalera.rootPasswordExternalSecret (default (include "common.mariadb.secret.rootPassSecretName" (dict "dot" . "chartName" .Values.global.mariadbGalera.nameOverride)) .Values.global.mariadbGalera.rootPasswordExternalSecret) .Values.global.mariadbGalera.localCluster }}'
    password: '{{ .Values.global.mariadbGalera.mariadbRootpassword }}'
  - uid: db-backup-creds
    name: &dbBackupCredsSecretName '{{ include "common.release" . }}-so-db-backup-creds'
    type: basicAuth
    externalSecret: '{{ ternary .Values.global.migration.dbCredsExternalSecret "migrationDisabled" .Values.global.migration.enabled }}'
    login: '{{ ternary .Values.global.migration.dbUser "migrationDisabled" .Values.global.migration.enabled }}'
    password: '{{ ternary .Values.global.migration.dbPassword "migrationDisabled" .Values.global.migration.enabled }}'
    passwordPolicy: required
    annotations:
      helm.sh/hook: pre-upgrade,pre-install
      helm.sh/hook-weight: "0"
      helm.sh/hook-delete-policy: before-hook-creation
  - uid: db-user-creds
    name: &dbUserCredsSecretName '{{ include "common.release" . }}-so-db-user-creds'
    type: basicAuth
    externalSecret: '{{ .Values.dbCreds.userCredsExternalSecret }}'
    login: '{{ .Values.dbCreds.userName }}'
    password: '{{ .Values.dbCreds.userPassword }}'
    passwordPolicy: generate
  - uid: db-admin-creds
    name: &dbAdminCredsSecretName '{{ include "common.release" . }}-so-db-admin-creds'
    type: basicAuth
    externalSecret: '{{ .Values.dbCreds.adminCredsExternalSecret }}'
    login: '{{ .Values.dbCreds.adminName }}'
    password: '{{ .Values.dbCreds.adminPassword }}'
    passwordPolicy: generate
  - uid: "so-onap-certs"
    name: &so-certs '{{ include "common.release" . }}-so-certs'
    externalSecret: '{{ tpl (default "" .Values.certSecret) . }}'
    type: generic
    filePaths:
      - resources/config/certificates/onap-ca.crt
      - resources/config/certificates/msb-ca.crt

#################################################################
# Application configuration defaults.
#################################################################

dbSecrets: &dbSecrets
  userCredsExternalSecret: *dbUserCredsSecretName
  adminCredsExternalSecret: *dbAdminCredsSecretName

# unused in this, just to pass to subcharts
dbCreds:
  userName: so_user
  adminName: so_admin

repository: nexus3.onap.org:10001
image: onap/so/api-handler-infra:1.6.4
pullPolicy: Always
replicaCount: 1
minReadySeconds: 10
containerPort: 8080
logPath: ./logs/apih/
app: api-handler-infra
service:
    type: NodePort
    nodePort: 77
    internalPort: 8080
    externalPort: 8080
    portName: so-apih-port
updateStrategy:
    type: RollingUpdate
    maxUnavailable: 1
    maxSurge: 1
# Resource Limit flavor -By Default using small
flavor: small
# Segregation for Different environment (Small and Large)
persistence:
  certificatesPath: /certificates
resources:
  small:
    limits:
      cpu: 2000m
      memory: 4Gi
    requests:
      cpu: 500m
      memory: 1Gi
  large:
    limits:
      cpu: 4000m
      memory: 8Gi
    requests:
      cpu: 1000m
      memory: 2Gi
  unlimited: {}
livenessProbe:
    path: /manage/health
    scheme: HTTP
    initialDelaySeconds: 600
    periodSeconds: 60
    timeoutSeconds: 10
    successThreshold: 1
    failureThreshold: 3

nodeSelector: {}
affinity: {}

# application configuration
config:
  logstashServiceName: log-ls
  logstashPort: 5044

#Used only if localCluster is enabled. Instantiates SO's own cassandra cluster
#helm deploy demo local/onap --namespace onap --verbose --set so.enabled=true \
#                                                       --set so.global.mariadbGalera.localCluster=true \
#                                                       --set so.global.mariadbGalera.nameOverride=so-mariadb-galera \
#                                                       --set so.global.mariadbGalera.serviceName=so-mariadb-galera
mariadb-galera:
  config:
    mariadbRootPasswordExternalSecret: *dbRootPassSecretName
  nameOverride: so-mariadb-galera
  replicaCount: 1
  service:
    name: so-mariadb-galera
  persistence:
    mountSubPath: so/mariadb-galera/data
    enabled: true

ingress:
  enabled: false
  service:
    - baseaddr: "so.api"
      name: "so"
      port: 8080
  config:
    ssl: "none"

mso:
  adapters:
    requestDb:
      auth: Basic YnBlbDpwYXNzd29yZDEk
  config:
    cadi:
      aafId: so@so.onap.org
      aafPassword: enc:EME-arXn2lx8PO0f2kEtyK7VVGtAGWavXorFoxRmPO9
      apiEnforcement: org.onap.so.apihPerm
      noAuthn: /manage/health
  camundaAuth: AE2E9BE6EF9249085AF98689C4EE087736A5500629A72F35068FFB88813A023581DD6E765071F1C04075B36EA4213A
  sdc:
    client:
      auth: 878785F4F31BC9CFA5AB52A172008212D8845ED2DE08AD5E56AF114720A4E49768B8F95CDA2EB971765D28EDCDAA24
  aai:
    auth: 6E081E10B1CA43A843E303733A74D9B23B601A6E22A21C7EF2C7F15A42F81A1A4E85E65268C2661F71321052C7F3E55B96A8E1E951F8BF6F
  so:
    operationalEnv:
      dmaap:
        auth: 51EA5414022D7BE536E7516C4D1A6361416921849B72C0D6FC1C7F262FD9F2BBC2AD124190A332D9845A188AD80955567A4F975C84C221EEA8243BFD92FFE6896CDD1EA16ADD34E1E3D47D4A
  health:
    auth: basic bXNvX2FkbWlufHBhc3N3b3JkMSQ=

so-bpmn-infra:
  certSecret: *so-certs
  db:
    <<: *dbSecrets
  cds:
    auth: Basic Y2NzZGthcHBzOmNjc2RrYXBwcw==
  aai:
    auth: 221187EFA3AD4E33600DE0488F287099934CE65C3D0697BCECC00BB58E784E07CD74A24581DC31DBC086FF63DF116378776E9BE3D1325885
  mso:
    key: 07a7159d3bf51a0e53be7a8f89699be7
    adapters:
      requestDb:
        auth: Basic YnBlbDpwYXNzd29yZDEk
      db:
        auth: A3745B5DBE165EFCF101D85A6FC81C211AB8BF604F8861B6C413D5DC90F8F30E0139DE44B8A342F4EF70AF
        password: wLg4sjrAFUS8rfVfdvTXeQ==
      po:
        auth: A3745B5DBE165EFCF101D85A6FC81C211AB8BF604F8861B6C413D5DC90F8F30E0139DE44B8A342F4EF70AF
    config:
      cadi:
        aafId: so@so.onap.org
        aaafPassword: enc:EME-arXn2lx8PO0f2kEtyK7VVGtAGWavXorFoxRmPO9
        apiEnforcement: org.onap.so.bpmnPerm
        noAuthn: /manage/health
    sdnc:
      password: 1D78CFC35382B6938A989066A7A7EAEF4FE933D2919BABA99EB4763737F39876C333EE5F
    sniro:
      auth: test:testpwd
      endpoint: http://replaceme:28090/optimizationInstance/V1/create
    oof:
      auth: test:testpwd
  so:
    vnfm:
      adapter:
        auth: Basic dm5mbTpwYXNzd29yZDEk

so-catalog-db-adapter:
  certSecret: *so-certs
  db:
    <<: *dbSecrets
  mso:
    config:
      cadi:
        aafId: so@so.onap.org
        aafPassword: enc:EME-arXn2lx8PO0f2kEtyK7VVGtAGWavXorFoxRmPO9
        apiEnforcement: org.onap.so.catalogDbAdapterPerm
        noAuthn: /manage/health
    adapters:
      db:
        auth: Basic YnBlbDpwYXNzd29yZDEk

so-monitoring:
  certSecret: *so-certs
  db:
    <<: *dbSecrets

so-openstack-adapter:
  certSecret: *so-certs
  db:
    <<: *dbSecrets
  aaf:
    auth:
      encrypted: 7F182B0C05D58A23A1C4966B9CDC9E0B8BC5CD53BC8C7B4083D869F8D53E9BDC3EFD55C94B1D3F
  aai:
    auth: 2A11B07DB6214A839394AA1EC5844695F5114FC407FF5422625FB00175A3DCB8A1FF745F22867EFA72D5369D599BBD88DA8BED4233CF5586
  org:
    onap:
      so:
        adapters:
          bpelauth: D1A67FA93B6A6419132D0F83CC771AF774FD3C60853C50C22C8C6FC5088CC79E9E81EDE9EA39F22B2F66A0068E
          valet:
            basic_auth: bXNvOkphY2tkYXdzIGxvdmUgbXkgYmlnIHNwaGlueCBvZiBxdWFydHouCg==
  mso:
    msoKey: 07a7159d3bf51a0e53be7a8f89699be7
    auth: BEA8637716A7EB617DF472BA6552D22F68C1CB17B0D094D77DDA562F4ADAAC4457CAB848E1A4
    basicUser: poBpmn
    config:
      cadi:
        aafId: so@so.onap.org
        aafPassword: enc:EME-arXn2lx8PO0f2kEtyK7VVGtAGWavXorFoxRmPO9
        apiEnforcement: org.onap.so.openStackAdapterPerm
        noAuthn: /manage/health
    db:
      auth: Basic YnBlbDpwYXNzd29yZDEk

so-request-db-adapter:
  certSecret: *so-certs
  db:
    <<: *dbSecrets
  mso:
    config:
      cadi:
        aafId: so@so.onap.org
        aafPassword: enc:EME-arXn2lx8PO0f2kEtyK7VVGtAGWavXorFoxRmPO9
        apiEnforcement: org.onap.so.requestDbAdapterPerm
        noAuthn: /manage/health
    adapters:
      requestDb:
        auth: Basic YnBlbDpwYXNzd29yZDEk

so-sdc-controller:
  certSecret: *so-certs
  db:
    <<: *dbSecrets
  aai:
    auth: 2A11B07DB6214A839394AA1EC5844695F5114FC407FF5422625FB00175A3DCB8A1FF745F22867EFA72D5369D599BBD88DA8BED4233CF5586
  mso:
    msoKey: 07a7159d3bf51a0e53be7a8f89699be7
    config:
      cadi:
        aafId: so@so.onap.org
        aafPassword: enc:EME-arXn2lx8PO0f2kEtyK7VVGtAGWavXorFoxRmPO9
        apiEnforcement: org.onap.so.sdcControllerPerm
        noAuthn: /manage/health
    asdc:
      config:
        key: 566B754875657232314F5548556D3665
    requestDb:
      auth: Basic YnBlbDpwYXNzd29yZDEk
    asdc-connections:
      asdc-controller1:
        password: 76966BDD3C7414A03F7037264FF2E6C8EEC6C28F2B67F2840A1ED857C0260FEE731D73F47F828E5527125D29FD25D3E0DE39EE44C058906BF1657DE77BF897EECA93BDC07FA64F

so-sdnc-adapter:
  certSecret: *so-certs
  db:
    <<: *dbSecrets
  org:
    onap:
      so:
        adapters:
          sdnc:
            bpelauth: 4C18603C5AE7E3A42A6CED95CDF9C0BA9B2109B3725747662E5D34E5FDF63DA9ADEBB08185098F14699195FDE9475100
            sdncauth: ED07A7EE5F099FA53369C3DF2240AD68A00154676EEDBC6F8C16BAA83B1912941B8941ABD48683D2C1072DA7040659692DE936A59BBF42A038CF71DE67B4A375190071EC76EA657801B033C135
            network:
                encryptionKey: 07a7159d3bf51a0e53be7a8f89699be7
  mso:
    config:
      cadi:
        aafId: so@so.onap.org
        aafPassword: enc:EME-arXn2lx8PO0f2kEtyK7VVGtAGWavXorFoxRmPO9
        apiEnforcement: org.onap.so.sdncAdapterPerm
        noAuthn: /manage/health
    adapters:
      requestDb:
        auth: Basic YnBlbDpwYXNzd29yZDEk
    rest:
      aafEncrypted: 3EDC974C5CD7FE54C47C7490AF4D3B474CDD7D0FFA35A7ACDE3E209631E45F428976EAC0858874F17390A13149E63C90281DD8D20456

so-ve-vnfm-adapter:
  certSecret: *so-certs

so-vfc-adapter:
  certSecret: *so-certs
  db:
    <<: *dbSecrets
  mso:
    config:
      cadi:
        aafId: so@so.onap.org
        aafPassword: enc:EME-arXn2lx8PO0f2kEtyK7VVGtAGWavXorFoxRmPO9
        apiEnforcement: org.onap.so.vfcAdapterPerm
        noAuthn: /manage/health
    adapters:
      requestDb:
        auth: Basic YnBlbDpwYXNzd29yZDEk

so-nssmf-adapter:
  certSecret: *so-certs
  db:
    <<: *dbSecrets
  aaf:
    auth:
      username: so@so.onap.org
      password: 8DB1C939BFC6A35C3832D0E52E452D0E05AE2537AF142CECD125FF827C05A972FDD0F4700547DA
  aai:
    auth: 2A11B07DB6214A839394AA1EC5844695F5114FC407FF5422625FB00175A3DCB8A1FF745F22867EFA72D5369D599BBD88DA8BED4233CF5586
  mso:
    key: 07a7159d3bf51a0e53be7a8f89699be7
    config:
      cadi:
        aafId: so@so.onap.org
        aafPassword: enc:EME-arXn2lx8PO0f2kEtyK7VVGtAGWavXorFoxRmPO9
        apiEnforcement: org.onap.so.nssmfAdapterPerm
        noAuthn: /manage/health
    adapters:
      requestDb:
        auth: Basic YnBlbDpwYXNzd29yZDEk

so-vnfm-adapter:
  certSecret: *so-certs
  aaf:
    auth:
      username: so@so.onap.org
      password: 8DB1C939BFC6A35C3832D0E52E452D0E05AE2537AF142CECD125FF827C05A972FDD0F4700547DA
  aai:
    auth: 2A11B07DB6214A839394AA1EC5844695F5114FC407FF5422625FB00175A3DCB8A1FF745F22867EFA72D5369D599BBD88DA8BED4233CF5586
  sdc:
    username: mso
    password: 76966BDD3C7414A03F7037264FF2E6C8EEC6C28F2B67F2840A1ED857C0260FEE731D73F47F828E5527125D29FD25D3E0DE39EE44C058906BF1657DE77BF897EECA93BDC07FA64F
    key: 566B754875657232314F5548556D3665
  mso:
    key: 07a7159d3bf51a0e53be7a8f89699be7
    config:
      cadi:
        aafId: so@so.onap.org
        aafPassword: enc:EME-arXn2lx8PO0f2kEtyK7VVGtAGWavXorFoxRmPO9
        apiEnforcement: org.onap.so.vnfmAdapterPerm
        noAuthn: /manage/health

so-etsi-nfvo-ns-lcm:
  certSecret: *so-certs
  aai:
    auth: 2A11B07DB6214A839394AA1EC5844695F5114FC407FF5422625FB00175A3DCB8A1FF745F22867EFA72D5369D599BBD88DA8BED4233CF5586
  mso:
    key: 07a7159d3bf51a0e53be7a8f89699be7
  so:
    sol003:
      adapter:
        auth: Basic dm5mbTpwYXNzd29yZDEk

so-mariadb:
  db:
    rootPasswordExternalSecretLocalDb: *dbRootPassSecretName
    rootPasswordExternalSecret: '{{ ternary .Values.db.rootPasswordExternalSecretLocalDb (include "common.mariadb.secret.rootPassSecretName" (dict "dot" . "chartName" .Values.global.mariadbGalera.nameOverride)) .Values.global.mariadbGalera.localCluster }}'
    backupCredsExternalSecret: *dbBackupCredsSecretName
    userCredsExternalSecret: *dbUserCredsSecretName
    adminCredsExternalSecret: *dbAdminCredsSecretName
so-appc-orchestrator:
  certSecret: *so-certs
  db:
    <<: *dbSecrets
  mso:
    basicUser: poBpmn
    auth: BEA8637716A7EB617DF472BA6552D22F68C1CB17B0D094D77DDA562F4ADAAC4457CAB848E1A4
    config:
      cadi:
        aafId: so@so.onap.org
        aafPassword: enc:EME-arXn2lx8PO0f2kEtyK7VVGtAGWavXorFoxRmPO9
        apiEnforcement: org.onap.so.openStackAdapterPerm
        noAuthn: /manage/health
  appc:
    client:
      topic:
        read:
          name: APPC-LCM-WRITE
          timeout: 360000
        write: APPC-LCM-READ
        sdnc:
          read: SDNC-LCM-WRITE
          write: SDNC-LCM-READ
      response:
        timeout: 3600000
      key: VIlbtVl6YLhNUrtU
      secret: 64AG2hF4pYeG2pq7CT6XwUOT
      service: ueb
  auth:
    rest:
      aaf: Basic c29Ac28ub25hcC5vcmc6ZGVtbzEyMzQ1Ngo=
      aafEncrypted: 3EDC974C5CD7FE54C47C7490AF4D3B474CDD7D0FFA35A7ACDE3E209631E45F428976EAC0858874F17390A13149E63C90281DD8D20456