-# ============LICENSE_START=======================================================\r
-# Copyright (C) 2021 Pantheon.tech\r
-# Modifications Copyright (C) 2021-2022 Bell Canada\r
-# Modifications Copyright (C) 2021-2022 Nordix Foundation\r
-# ================================================================================\r
-# Licensed under the Apache License, Version 2.0 (the "License");\r
-# you may not use this file except in compliance with the License.\r
-# You may obtain a copy of the License at\r
-#\r
-# http://www.apache.org/licenses/LICENSE-2.0\r
-#\r
-# Unless required by applicable law or agreed to in writing, software\r
-# distributed under the License is distributed on an "AS IS" BASIS,\r
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
-# See the License for the specific language governing permissions and\r
-# limitations under the License.\r
-#\r
-# SPDX-License-Identifier: Apache-2.0\r
-# ============LICENSE_END=========================================================\r
-\r
-server:\r
- port: 8080\r
-\r
-rest:\r
- api:\r
- cps-base-path: /cps/api\r
- ncmp-base-path: /ncmp\r
- ncmp-inventory-base-path: /ncmpInventory\r
-\r
-spring:\r
- main:\r
- banner-mode: "off"\r
- application:\r
- name: "cps-application"\r
- jpa:\r
- show-sql: false\r
- ddl-auto: create\r
- open-in-view: false\r
- properties:\r
- hibernate:\r
- enable_lazy_load_no_trans: true\r
- dialect: org.hibernate.dialect.PostgreSQLDialect\r
-\r
- datasource:\r
- url: jdbc:postgresql://${DB_HOST}:${DB_PORT:5432}/cpsdb\r
- username: ${DB_USERNAME}\r
- password: ${DB_PASSWORD}\r
- driverClassName: org.postgresql.Driver\r
- hikari:\r
- minimumIdle: 5\r
- maximumPoolSize: 80\r
- idleTimeout: 60000\r
- connectionTimeout: 120000\r
- leakDetectionThreshold: 30000\r
- pool-name: CpsDatabasePool\r
-\r
- cache:\r
- type: caffeine\r
- cache-names: yangSchema\r
- caffeine:\r
- spec: maximumSize=10000,expireAfterAccess=10m\r
-\r
- liquibase:\r
- change-log: classpath:changelog/changelog-master.yaml\r
- labels: ${LIQUIBASE_LABELS}\r
-\r
- servlet:\r
- multipart:\r
- enabled: true\r
- max-file-size: 100MB\r
- max-request-size: 100MB\r
-\r
- kafka:\r
- bootstrap-servers: ${KAFKA_BOOTSTRAP_SERVER:localhost:9092}\r
- security:\r
- protocol: PLAINTEXT\r
- producer:\r
- value-serializer: org.springframework.kafka.support.serializer.JsonSerializer\r
- client-id: cps-core\r
- consumer:\r
- group-id: ${NCMP_CONSUMER_GROUP_ID:ncmp-group}\r
- key-deserializer: org.springframework.kafka.support.serializer.ErrorHandlingDeserializer\r
- value-deserializer: org.springframework.kafka.support.serializer.ErrorHandlingDeserializer\r
- properties:\r
- spring.deserializer.key.delegate.class: org.apache.kafka.common.serialization.StringDeserializer\r
- spring.deserializer.value.delegate.class: org.springframework.kafka.support.serializer.JsonDeserializer\r
- spring.json.value.default.type: org.onap.cps.ncmp.event.model.DmiAsyncRequestResponseEvent\r
- spring.json.use.type.headers: false\r
-\r
- jackson:\r
- default-property-inclusion: NON_NULL\r
- serialization:\r
- FAIL_ON_EMPTY_BEANS: false\r
- sql:\r
- init:\r
- mode: ALWAYS\r
-app:\r
- ncmp:\r
- async-m2m:\r
- topic: ${NCMP_ASYNC_M2M_TOPIC:ncmp-async-m2m}\r
- lcm:\r
- events:\r
- topic: ${LCM_EVENTS_TOPIC:ncmp-events}\r
-\r
-notification:\r
- enabled: true\r
- data-updated:\r
- topic: ${CPS_CHANGE_EVENT_TOPIC:cps.data-updated-events}\r
- filters:\r
- enabled-dataspaces: ${NOTIFICATION_DATASPACE_FILTER_PATTERNS:""}\r
- async:\r
- executor:\r
- core-pool-size: 2\r
- max-pool-size: 10\r
- queue-capacity: 500\r
- wait-for-tasks-to-complete-on-shutdown: true\r
- thread-name-prefix: Async-\r
- time-out-value-in-ms: 2000\r
-\r
-springdoc:\r
- swagger-ui:\r
- disable-swagger-default-url: true\r
- urlsPrimaryName: cps-core\r
- urls:\r
- - name: cps-core\r
- url: /api-docs/cps-core/openapi.yaml\r
- - name: cps-ncmp\r
- url: /api-docs/cps-ncmp/openapi.yaml\r
- - name: cps-ncmp-inventory\r
- url: /api-docs/cps-ncmp/openapi-inventory.yaml\r
-\r
-\r
-security:\r
- # comma-separated uri patterns which do not require authorization\r
- permit-uri: /manage/**,/swagger-ui.html,/swagger-ui/**,/swagger-resources/**,/api-docs/**\r
- auth:\r
- username: ${CPS_USERNAME}\r
- password: ${CPS_PASSWORD}\r
-\r
-# Actuator\r
-management:\r
- server:\r
- port: 8081\r
- endpoints:\r
- web:\r
- base-path: /manage\r
- exposure:\r
- include: info,health,loggers,prometheus\r
- endpoint:\r
- health:\r
- show-details: always\r
- # kubernetes probes: liveness and readiness\r
- probes:\r
- enabled: true\r
-\r
-logging:\r
- format: json\r
- level:\r
- org:\r
- springframework: INFO\r
- onap:\r
- cps: INFO\r
-ncmp:\r
- dmi:\r
- auth:\r
- username: ${DMI_USERNAME}\r
- password: ${DMI_PASSWORD}\r
- api:\r
- base-path: dmi\r
-\r
- timers:\r
- advised-modules-sync:\r
- sleep-time-ms: 5000\r
- locked-modules-sync:\r
- sleep-time-ms: 300000\r
- cm-handle-data-sync:\r
- sleep-time-ms: 30000\r
-\r
- modules-sync-watchdog:\r
- async-executor:\r
- parallelism-level: 10
\ No newline at end of file
+# ============LICENSE_START=======================================================
+# Copyright (C) 2021 Pantheon.tech
+# Modifications Copyright (C) 2021-2022 Bell Canada
+# Modifications Copyright (C) 2021-2023 Nordix 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.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+
+server:
+ port: 8080
+
+rest:
+ api:
+ cps-base-path: /cps/api
+ ncmp-base-path: /ncmp
+ ncmp-inventory-base-path: /ncmpInventory
+
+spring:
+ main:
+ banner-mode: "off"
+ application:
+ name: "cps-application"
+ jpa:
+ show-sql: false
+ ddl-auto: create
+ open-in-view: false
+ properties:
+ hibernate.enable_lazy_load_no_trans: true
+ hibernate.dialect: org.hibernate.dialect.PostgreSQLDialect
+
+ datasource:
+ url: jdbc:postgresql://${DB_HOST}:${DB_PORT:5432}/cpsdb
+ username: ${DB_USERNAME}
+ password: ${DB_PASSWORD}
+ driverClassName: org.postgresql.Driver
+ hikari:
+ minimumIdle: 5
+ maximumPoolSize: 80
+ idleTimeout: 60000
+ connectionTimeout: 120000
+ leakDetectionThreshold: 30000
+ pool-name: CpsDatabasePool
+
+ cache:
+ type: caffeine
+ cache-names: yangSchema
+ caffeine:
+ spec: maximumSize=10000,expireAfterAccess=10m
+
+ liquibase:
+ change-log: classpath:changelog/changelog-master.yaml
+ labels: ${LIQUIBASE_LABELS}
+
+ servlet:
+ multipart:
+ enabled: true
+ max-file-size: 100MB
+ max-request-size: 100MB
+
+ kafka:
+ bootstrap-servers: ${KAFKA_BOOTSTRAP_SERVER:localhost:9092}
+ security:
+ protocol: PLAINTEXT
+ producer:
+ value-serializer: io.cloudevents.kafka.CloudEventSerializer
+ client-id: cps-core
+ consumer:
+ group-id: ${NCMP_CONSUMER_GROUP_ID:ncmp-group}
+ key-deserializer: org.springframework.kafka.support.serializer.ErrorHandlingDeserializer
+ value-deserializer: org.springframework.kafka.support.serializer.ErrorHandlingDeserializer
+ properties:
+ spring.deserializer.key.delegate.class: org.apache.kafka.common.serialization.StringDeserializer
+ spring.deserializer.value.delegate.class: io.cloudevents.kafka.CloudEventDeserializer
+ spring.json.use.type.headers: false
+
+ jackson:
+ default-property-inclusion: NON_NULL
+ serialization:
+ FAIL_ON_EMPTY_BEANS: false
+ sql:
+ init:
+ mode: ALWAYS
+app:
+ ncmp:
+ async-m2m:
+ topic: ${NCMP_ASYNC_M2M_TOPIC:ncmp-async-m2m}
+ avc:
+ subscription-topic: ${NCMP_CM_AVC_SUBSCRIPTION:subscription}
+ subscription-forward-topic-prefix: ${NCMP_FORWARD_CM_AVC_SUBSCRIPTION:ncmp-dmi-cm-avc-subscription-}
+ subscription-response-topic: ${NCMP_RESPONSE_CM_AVC_SUBSCRIPTION:dmi-ncmp-cm-avc-subscription}
+ subscription-outcome-topic: ${NCMP_OUTCOME_CM_AVC_SUBSCRIPTION:subscription-response}
+ cm-events-topic: ${NCMP_CM_EVENTS_TOPIC:cm-events}
+ lcm:
+ events:
+ topic: ${LCM_EVENTS_TOPIC:ncmp-events}
+ dmi:
+ cm-events:
+ topic: ${DMI_CM_EVENTS_TOPIC:dmi-cm-events}
+ device-heartbeat:
+ topic: ${DMI_DEVICE_HEARTBEAT_TOPIC:dmi-device-heartbeat}
+
+
+notification:
+ enabled: true
+ data-updated:
+ topic: ${CPS_CHANGE_EVENT_TOPIC:cps.data-updated-events}
+ filters:
+ enabled-dataspaces: ${NOTIFICATION_DATASPACE_FILTER_PATTERNS:""}
+ async:
+ executor:
+ core-pool-size: 2
+ max-pool-size: 10
+ queue-capacity: 500
+ wait-for-tasks-to-complete-on-shutdown: true
+ thread-name-prefix: Async-
+ time-out-value-in-ms: 2000
+
+springdoc:
+ swagger-ui:
+ disable-swagger-default-url: true
+ urlsPrimaryName: cps-core
+ urls:
+ - name: cps-core
+ url: /api-docs/cps-core/openapi.yaml
+ - name: cps-ncmp
+ url: /api-docs/cps-ncmp/openapi.yaml
+ - name: cps-ncmp-inventory
+ url: /api-docs/cps-ncmp/openapi-inventory.yaml
+
+permit-uri: /manage/**,/swagger-ui.html,/swagger-ui/**,/swagger-resources/**,/api-docs/**
+
+security:
+ # comma-separated uri patterns which do not require authorization
+ auth:
+ username: ${CPS_USERNAME}
+ password: ${CPS_PASSWORD}
+
+# Actuator
+management:
+ server:
+ port: 8081
+ endpoints:
+ web:
+ base-path: /manage
+ exposure:
+ include: info,health,loggers,prometheus
+ endpoint:
+ health:
+ show-details: always
+ # kubernetes probes: liveness and readiness
+ probes:
+ enabled: true
+
+logging:
+ format: json
+ level:
+ org:
+ springframework: INFO
+ onap:
+ cps: INFO
+ncmp:
+ dmi:
+ auth:
+ username: ${DMI_USERNAME}
+ password: ${DMI_PASSWORD}
+ enabled: ${DMI_AUTH_ENABLED:true}
+ api:
+ base-path: dmi
+
+ timers:
+ advised-modules-sync:
+ sleep-time-ms: 5000
+ locked-modules-sync:
+ sleep-time-ms: 300000
+ cm-handle-data-sync:
+ sleep-time-ms: 30000
+ subscription-forwarding:
+ dmi-response-timeout-ms: 30000
+ model-loader:
+ retry-time-ms: 1000
+ trust-level:
+ dmi-availability-watchdog-ms: 30000
+
+ modules-sync-watchdog:
+ async-executor:
+ parallelism-level: 10
+
+ model-loader:
+ subscription: true
+ maximum-attempt-count: 20
+
+# Custom Hazelcast Config.
+hazelcast:
+ cluster-name: ${CPS_NCMP_CACHES_CLUSTER_NAME:"cps-and-ncmp-common-cache-cluster"}
+ mode:
+ kubernetes:
+ enabled: ${HAZELCAST_MODE_KUBERNETES_ENABLED:false}
+ service-name: ${CPS_NCMP_SERVICE_NAME:"cps-and-ncmp-service"}
\ No newline at end of file