blob: dd4576ec02e5ea27241797cb3e593de74ed6b9ab [file] [log] [blame]
emaclee9c126612023-04-16 17:48:15 +01001# ============LICENSE_START=======================================================
2# Copyright (C) 2021 Pantheon.tech
3# Modifications Copyright (C) 2021-2022 Bell Canada
danielhanrahan36b81b22023-08-17 14:58:30 +01004# Modifications Copyright (C) 2021-2024 Nordix Foundation
rajesh.kumareb3a8082024-02-23 20:29:59 +05305# Modifications Copyright (C) 2024 TechMahindra Ltd
emaclee9c126612023-04-16 17:48:15 +01006# ================================================================================
7# Licensed under the Apache License, Version 2.0 (the "License");
8# you may not use this file except in compliance with the License.
9# You may obtain a copy of the License at
10#
11# http://www.apache.org/licenses/LICENSE-2.0
12#
13# Unless required by applicable law or agreed to in writing, software
14# distributed under the License is distributed on an "AS IS" BASIS,
15# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16# See the License for the specific language governing permissions and
17# limitations under the License.
18#
19# SPDX-License-Identifier: Apache-2.0
20# ============LICENSE_END=========================================================
21
22server:
23 port: 8080
24
25rest:
26 api:
27 cps-base-path: /cps/api
28 ncmp-base-path: /ncmp
29 ncmp-inventory-base-path: /ncmpInventory
30
31spring:
32 main:
33 banner-mode: "off"
34 application:
35 name: "cps-application"
36 jpa:
37 show-sql: false
38 ddl-auto: create
39 open-in-view: false
40 properties:
egernug186b9012023-09-27 10:49:45 +010041 hibernate.enable_lazy_load_no_trans: true
42 hibernate.dialect: org.hibernate.dialect.PostgreSQLDialect
danielhanrahan36b81b22023-08-17 14:58:30 +010043 # Please ensure these values match those used in integration-test/src/test/resources/application.yml
44 hibernate.id.new_generator_mappings: true
45 hibernate.jdbc.batch_size: 100
emaclee9c126612023-04-16 17:48:15 +010046
47 datasource:
48 url: jdbc:postgresql://${DB_HOST}:${DB_PORT:5432}/cpsdb
49 username: ${DB_USERNAME}
50 password: ${DB_PASSWORD}
51 driverClassName: org.postgresql.Driver
52 hikari:
53 minimumIdle: 5
54 maximumPoolSize: 80
55 idleTimeout: 60000
danielhanrahanbbfb0612024-04-16 22:04:44 +010056 connectionTimeout: 30000
emaclee9c126612023-04-16 17:48:15 +010057 leakDetectionThreshold: 30000
58 pool-name: CpsDatabasePool
59
60 cache:
61 type: caffeine
62 cache-names: yangSchema
63 caffeine:
64 spec: maximumSize=10000,expireAfterAccess=10m
65
66 liquibase:
67 change-log: classpath:changelog/changelog-master.yaml
emacleeea7d1b42024-03-24 19:05:34 +000068 label-filter: ${LIQUIBASE_LABELS}
emaclee9c126612023-04-16 17:48:15 +010069
70 servlet:
71 multipart:
72 enabled: true
73 max-file-size: 100MB
74 max-request-size: 100MB
75
76 kafka:
77 bootstrap-servers: ${KAFKA_BOOTSTRAP_SERVER:localhost:9092}
78 security:
79 protocol: PLAINTEXT
80 producer:
sourabh_sourabha287fc32023-06-15 03:12:29 +010081 value-serializer: io.cloudevents.kafka.CloudEventSerializer
emaclee9c126612023-04-16 17:48:15 +010082 client-id: cps-core
83 consumer:
84 group-id: ${NCMP_CONSUMER_GROUP_ID:ncmp-group}
85 key-deserializer: org.springframework.kafka.support.serializer.ErrorHandlingDeserializer
86 value-deserializer: org.springframework.kafka.support.serializer.ErrorHandlingDeserializer
87 properties:
88 spring.deserializer.key.delegate.class: org.apache.kafka.common.serialization.StringDeserializer
sourabh_sourabha287fc32023-06-15 03:12:29 +010089 spring.deserializer.value.delegate.class: io.cloudevents.kafka.CloudEventDeserializer
emaclee9c126612023-04-16 17:48:15 +010090 spring.json.use.type.headers: false
91
92 jackson:
93 default-property-inclusion: NON_NULL
94 serialization:
95 FAIL_ON_EMPTY_BEANS: false
96 sql:
97 init:
98 mode: ALWAYS
99app:
100 ncmp:
101 async-m2m:
102 topic: ${NCMP_ASYNC_M2M_TOPIC:ncmp-async-m2m}
103 avc:
mpriyankf0f657c2024-05-16 16:35:49 +0100104 cm-subscription-ncmp-in: ${CM_SUBSCRIPTION_NCMP_IN_TOPIC:subscription}
105 cm-subscription-dmi-in: ${CM_SUBSCRIPTION_DMI_IN_TOPIC:ncmp-dmi-cm-avc-subscription}
106 cm-subscription-dmi-out: ${CM_SUBSCRIPTION_DMI_OUT_TOPIC:dmi-ncmp-cm-avc-subscription}
107 cm-subscription-ncmp-out: ${CM_SUBSCRIPTION_NCMP_OUT_TOPIC:subscription-response}
emaclee9c126612023-04-16 17:48:15 +0100108 cm-events-topic: ${NCMP_CM_EVENTS_TOPIC:cm-events}
109 lcm:
110 events:
111 topic: ${LCM_EVENTS_TOPIC:ncmp-events}
112 dmi:
113 cm-events:
114 topic: ${DMI_CM_EVENTS_TOPIC:dmi-cm-events}
mpriyankf4778802023-07-26 17:33:35 +0100115 device-heartbeat:
116 topic: ${DMI_DEVICE_HEARTBEAT_TOPIC:dmi-device-heartbeat}
rajesh.kumareb3a8082024-02-23 20:29:59 +0530117 cps:
118 data-updated:
mpriyankf7873bd2024-05-07 15:33:19 +0100119 change-event-notifications-enabled: ${CPS_CHANGE_EVENT_NOTIFICATIONS_ENABLED:true}
rajesh.kumareb3a8082024-02-23 20:29:59 +0530120 topic: ${CPS_CHANGE_EVENT_TOPIC:cps-data-updated-events}
emaclee9c126612023-04-16 17:48:15 +0100121
mpriyankf7873bd2024-05-07 15:33:19 +0100122
123
emaclee9c126612023-04-16 17:48:15 +0100124notification:
125 enabled: true
emaclee9c126612023-04-16 17:48:15 +0100126 async:
127 executor:
128 core-pool-size: 2
129 max-pool-size: 10
130 queue-capacity: 500
131 wait-for-tasks-to-complete-on-shutdown: true
132 thread-name-prefix: Async-
mpriyank6b0e6b32024-03-08 12:50:53 +0000133 time-out-value-in-ms: 60000
emaclee9c126612023-04-16 17:48:15 +0100134
135springdoc:
136 swagger-ui:
137 disable-swagger-default-url: true
138 urlsPrimaryName: cps-core
139 urls:
140 - name: cps-core
141 url: /api-docs/cps-core/openapi.yaml
142 - name: cps-ncmp
143 url: /api-docs/cps-ncmp/openapi.yaml
144 - name: cps-ncmp-inventory
145 url: /api-docs/cps-ncmp/openapi-inventory.yaml
146
emaclee9c126612023-04-16 17:48:15 +0100147security:
148 # comma-separated uri patterns which do not require authorization
waqas.ikram7a397ca2024-01-25 11:36:16 +0000149 permit-uri: /actuator/**,/swagger-ui.html,/swagger-ui/**,/swagger-resources/**,/api-docs/**,/v3/api-docs/**
emaclee9c126612023-04-16 17:48:15 +0100150 auth:
mpriyank86dd1392024-04-30 10:14:26 +0100151 username: ${CPS_USERNAME:cpsuser}
152 password: ${CPS_PASSWORD:cpsr0cks!}
emaclee9c126612023-04-16 17:48:15 +0100153
david.mcweeney22934862024-04-25 14:37:33 +0100154cps:
155 tracing:
156 sampler:
157 jaeger_remote:
158 endpoint: ${ONAP_OTEL_SAMPLER_JAEGER_REMOTE_ENDPOINT:http://onap-otel-collector:14250}
159 exporter:
160 endpoint: ${ONAP_OTEL_EXPORTER_ENDPOINT:http://onap-otel-collector:4317}
161 protocol: ${ONAP_OTEL_EXPORTER_PROTOCOL:grpc}
162 enabled: ${ONAP_TRACING_ENABLED:false}
sourabh_sourabhe2527ea2024-07-19 17:27:54 +0100163 excluded-observation-names: ${ONAP_EXCLUDED_OBSERVATION_NAMES:tasks.scheduled.execution}
david.mcweeney22934862024-04-25 14:37:33 +0100164
emaclee9c126612023-04-16 17:48:15 +0100165# Actuator
166management:
david.mcweeney22934862024-04-25 14:37:33 +0100167 tracing:
168 propagation:
169 produce: ${ONAP_PROPAGATOR_PRODUCE:[W3C]}
170 sampling:
171 probability: 1.0
emaclee9c126612023-04-16 17:48:15 +0100172 endpoints:
173 web:
emaclee9c126612023-04-16 17:48:15 +0100174 exposure:
175 include: info,health,loggers,prometheus
176 endpoint:
177 health:
178 show-details: always
179 # kubernetes probes: liveness and readiness
180 probes:
181 enabled: true
182
183logging:
184 format: json
185 level:
186 org:
187 springframework: INFO
188 onap:
189 cps: INFO
190ncmp:
ToineSiebelink3a4dcb52024-08-26 17:10:03 +0100191 policy-executor:
192 enabled: true
193 server:
194 address: "http://localhost"
195 port: "8785"
196 httpclient:
197 all-services:
198 maximumInMemorySizeInMegabytes: 16
199 maximumConnectionsTotal: 100
200 pendingAcquireMaxCount: 50
201 connectionTimeoutInSeconds: 30
202 readTimeoutInSeconds: 30
203 writeTimeoutInSeconds: 30
emaclee9c126612023-04-16 17:48:15 +0100204 dmi:
waqas.ikram177d66d2023-12-19 15:24:28 +0000205 httpclient:
sourabh_sourabh43d04512024-05-27 18:28:10 +0100206 data-services:
ToineSiebelink3a4dcb52024-08-26 17:10:03 +0100207 maximumInMemorySizeInMegabytes: 16
208 maximumConnectionsTotal: 100
209 pendingAcquireMaxCount: 50
sourabh_sourabh43d04512024-05-27 18:28:10 +0100210 connectionTimeoutInSeconds: 30
211 readTimeoutInSeconds: 30
212 writeTimeoutInSeconds: 30
sourabh_sourabh43d04512024-05-27 18:28:10 +0100213 model-services:
ToineSiebelink3a4dcb52024-08-26 17:10:03 +0100214 maximumInMemorySizeInMegabytes: 16
215 maximumConnectionsTotal: 100
216 pendingAcquireMaxCount: 50
sourabh_sourabh43d04512024-05-27 18:28:10 +0100217 connectionTimeoutInSeconds: 30
218 readTimeoutInSeconds: 30
219 writeTimeoutInSeconds: 30
emaclee9c126612023-04-16 17:48:15 +0100220 auth:
mpriyank86dd1392024-04-30 10:14:26 +0100221 username: ${DMI_USERNAME:cpsuser}
222 password: ${DMI_PASSWORD:cpsr0cks!}
mpriyank612fb572023-08-01 15:36:27 +0100223 enabled: ${DMI_AUTH_ENABLED:true}
emaclee9c126612023-04-16 17:48:15 +0100224 api:
225 base-path: dmi
226
227 timers:
228 advised-modules-sync:
229 sleep-time-ms: 5000
230 locked-modules-sync:
sourabh_sourabh50518ca2024-08-12 10:38:39 +0100231 sleep-time-ms: 60000
emaclee9c126612023-04-16 17:48:15 +0100232 cm-handle-data-sync:
233 sleep-time-ms: 30000
lukegleeson3c0ea892023-04-06 15:28:56 +0100234 subscription-forwarding:
235 dmi-response-timeout-ms: 30000
236 model-loader:
237 retry-time-ms: 1000
halil.cakalc4485f72023-08-31 11:45:47 +0100238 trust-level:
239 dmi-availability-watchdog-ms: 30000
emaclee9c126612023-04-16 17:48:15 +0100240
241 modules-sync-watchdog:
242 async-executor:
243 parallelism-level: 10
244
245 model-loader:
lukegleeson3c0ea892023-04-06 15:28:56 +0100246 maximum-attempt-count: 20
emaclee9c126612023-04-16 17:48:15 +0100247
248# Custom Hazelcast Config.
249hazelcast:
mpriyank74cf06f2023-04-28 15:02:00 +0100250 cluster-name: ${CPS_NCMP_CACHES_CLUSTER_NAME:"cps-and-ncmp-common-cache-cluster"}
lukegleeson3c0ea892023-04-06 15:28:56 +0100251 mode:
252 kubernetes:
253 enabled: ${HAZELCAST_MODE_KUBERNETES_ENABLED:false}
waqas.ikram7a397ca2024-01-25 11:36:16 +0000254 service-name: ${CPS_NCMP_SERVICE_NAME:"cps-and-ncmp-service"}
david.mcweeney22934862024-04-25 14:37:33 +0100255
256otel:
257 exporter:
258 otlp:
259 traces:
ToineSiebelink3a4dcb52024-08-26 17:10:03 +0100260 protocol: ${ONAP_OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:grpc}