emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 1 | # ============LICENSE_START======================================================= |
| 2 | # Copyright (C) 2021 Pantheon.tech |
| 3 | # Modifications Copyright (C) 2021-2022 Bell Canada |
danielhanrahan | 36b81b2 | 2023-08-17 14:58:30 +0100 | [diff] [blame] | 4 | # Modifications Copyright (C) 2021-2024 Nordix Foundation |
rajesh.kumar | eb3a808 | 2024-02-23 20:29:59 +0530 | [diff] [blame] | 5 | # Modifications Copyright (C) 2024 TechMahindra Ltd |
emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 6 | # ================================================================================ |
| 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 | |
| 22 | server: |
| 23 | port: 8080 |
| 24 | |
| 25 | rest: |
| 26 | api: |
| 27 | cps-base-path: /cps/api |
| 28 | ncmp-base-path: /ncmp |
| 29 | ncmp-inventory-base-path: /ncmpInventory |
| 30 | |
| 31 | spring: |
| 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: |
egernug | 186b901 | 2023-09-27 10:49:45 +0100 | [diff] [blame] | 41 | hibernate.enable_lazy_load_no_trans: true |
| 42 | hibernate.dialect: org.hibernate.dialect.PostgreSQLDialect |
danielhanrahan | 36b81b2 | 2023-08-17 14:58:30 +0100 | [diff] [blame] | 43 | # 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 |
emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 46 | |
| 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 |
danielhanrahan | bbfb061 | 2024-04-16 22:04:44 +0100 | [diff] [blame] | 56 | connectionTimeout: 30000 |
emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 57 | 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 |
emaclee | ea7d1b4 | 2024-03-24 19:05:34 +0000 | [diff] [blame] | 68 | label-filter: ${LIQUIBASE_LABELS} |
emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 69 | |
| 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_sourabh | a287fc3 | 2023-06-15 03:12:29 +0100 | [diff] [blame] | 81 | value-serializer: io.cloudevents.kafka.CloudEventSerializer |
emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 82 | 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_sourabh | a287fc3 | 2023-06-15 03:12:29 +0100 | [diff] [blame] | 89 | spring.deserializer.value.delegate.class: io.cloudevents.kafka.CloudEventDeserializer |
emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 90 | 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 |
| 99 | app: |
| 100 | ncmp: |
| 101 | async-m2m: |
| 102 | topic: ${NCMP_ASYNC_M2M_TOPIC:ncmp-async-m2m} |
| 103 | avc: |
mpriyank | f0f657c | 2024-05-16 16:35:49 +0100 | [diff] [blame] | 104 | 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} |
emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 108 | 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} |
mpriyank | f477880 | 2023-07-26 17:33:35 +0100 | [diff] [blame] | 115 | device-heartbeat: |
| 116 | topic: ${DMI_DEVICE_HEARTBEAT_TOPIC:dmi-device-heartbeat} |
rajesh.kumar | eb3a808 | 2024-02-23 20:29:59 +0530 | [diff] [blame] | 117 | cps: |
| 118 | data-updated: |
mpriyank | f7873bd | 2024-05-07 15:33:19 +0100 | [diff] [blame] | 119 | change-event-notifications-enabled: ${CPS_CHANGE_EVENT_NOTIFICATIONS_ENABLED:true} |
rajesh.kumar | eb3a808 | 2024-02-23 20:29:59 +0530 | [diff] [blame] | 120 | topic: ${CPS_CHANGE_EVENT_TOPIC:cps-data-updated-events} |
emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 121 | |
mpriyank | f7873bd | 2024-05-07 15:33:19 +0100 | [diff] [blame] | 122 | |
| 123 | |
emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 124 | notification: |
| 125 | enabled: true |
emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 126 | 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- |
mpriyank | 6b0e6b3 | 2024-03-08 12:50:53 +0000 | [diff] [blame] | 133 | time-out-value-in-ms: 60000 |
emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 134 | |
| 135 | springdoc: |
| 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 | |
emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 147 | security: |
| 148 | # comma-separated uri patterns which do not require authorization |
waqas.ikram | 7a397ca | 2024-01-25 11:36:16 +0000 | [diff] [blame] | 149 | permit-uri: /actuator/**,/swagger-ui.html,/swagger-ui/**,/swagger-resources/**,/api-docs/**,/v3/api-docs/** |
emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 150 | auth: |
mpriyank | 86dd139 | 2024-04-30 10:14:26 +0100 | [diff] [blame] | 151 | username: ${CPS_USERNAME:cpsuser} |
| 152 | password: ${CPS_PASSWORD:cpsr0cks!} |
emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 153 | |
david.mcweeney | 2293486 | 2024-04-25 14:37:33 +0100 | [diff] [blame] | 154 | cps: |
| 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} |
| 163 | |
emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 164 | # Actuator |
| 165 | management: |
david.mcweeney | 2293486 | 2024-04-25 14:37:33 +0100 | [diff] [blame] | 166 | tracing: |
| 167 | propagation: |
| 168 | produce: ${ONAP_PROPAGATOR_PRODUCE:[W3C]} |
| 169 | sampling: |
| 170 | probability: 1.0 |
emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 171 | endpoints: |
| 172 | web: |
emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 173 | exposure: |
| 174 | include: info,health,loggers,prometheus |
| 175 | endpoint: |
| 176 | health: |
| 177 | show-details: always |
| 178 | # kubernetes probes: liveness and readiness |
| 179 | probes: |
| 180 | enabled: true |
| 181 | |
| 182 | logging: |
| 183 | format: json |
| 184 | level: |
| 185 | org: |
| 186 | springframework: INFO |
| 187 | onap: |
| 188 | cps: INFO |
| 189 | ncmp: |
| 190 | dmi: |
waqas.ikram | 177d66d | 2023-12-19 15:24:28 +0000 | [diff] [blame] | 191 | httpclient: |
danielhanrahan | bbfb061 | 2024-04-16 22:04:44 +0100 | [diff] [blame] | 192 | connectionTimeoutInSeconds: 30 |
sourabh_sourabh | ba41fe9 | 2024-05-21 12:16:43 +0100 | [diff] [blame] | 193 | readTimeoutInSeconds: 30 |
| 194 | writeTimeoutInSeconds: 30 |
waqas.ikram | 177d66d | 2023-12-19 15:24:28 +0000 | [diff] [blame] | 195 | maximumConnectionsTotal: 100 |
sourabh_sourabh | 3ad3931 | 2024-05-07 12:31:44 +0100 | [diff] [blame] | 196 | maximumInMemorySizeInMegabytes: 16 |
emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 197 | auth: |
mpriyank | 86dd139 | 2024-04-30 10:14:26 +0100 | [diff] [blame] | 198 | username: ${DMI_USERNAME:cpsuser} |
| 199 | password: ${DMI_PASSWORD:cpsr0cks!} |
mpriyank | 612fb57 | 2023-08-01 15:36:27 +0100 | [diff] [blame] | 200 | enabled: ${DMI_AUTH_ENABLED:true} |
emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 201 | api: |
| 202 | base-path: dmi |
| 203 | |
| 204 | timers: |
| 205 | advised-modules-sync: |
| 206 | sleep-time-ms: 5000 |
| 207 | locked-modules-sync: |
| 208 | sleep-time-ms: 300000 |
| 209 | cm-handle-data-sync: |
| 210 | sleep-time-ms: 30000 |
lukegleeson | 3c0ea89 | 2023-04-06 15:28:56 +0100 | [diff] [blame] | 211 | subscription-forwarding: |
| 212 | dmi-response-timeout-ms: 30000 |
| 213 | model-loader: |
| 214 | retry-time-ms: 1000 |
halil.cakal | c4485f7 | 2023-08-31 11:45:47 +0100 | [diff] [blame] | 215 | trust-level: |
| 216 | dmi-availability-watchdog-ms: 30000 |
emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 217 | |
| 218 | modules-sync-watchdog: |
| 219 | async-executor: |
| 220 | parallelism-level: 10 |
| 221 | |
| 222 | model-loader: |
lukegleeson | 3c0ea89 | 2023-04-06 15:28:56 +0100 | [diff] [blame] | 223 | maximum-attempt-count: 20 |
emaclee | 9c12661 | 2023-04-16 17:48:15 +0100 | [diff] [blame] | 224 | |
| 225 | # Custom Hazelcast Config. |
| 226 | hazelcast: |
mpriyank | 74cf06f | 2023-04-28 15:02:00 +0100 | [diff] [blame] | 227 | cluster-name: ${CPS_NCMP_CACHES_CLUSTER_NAME:"cps-and-ncmp-common-cache-cluster"} |
lukegleeson | 3c0ea89 | 2023-04-06 15:28:56 +0100 | [diff] [blame] | 228 | mode: |
| 229 | kubernetes: |
| 230 | enabled: ${HAZELCAST_MODE_KUBERNETES_ENABLED:false} |
waqas.ikram | 7a397ca | 2024-01-25 11:36:16 +0000 | [diff] [blame] | 231 | service-name: ${CPS_NCMP_SERVICE_NAME:"cps-and-ncmp-service"} |
david.mcweeney | 2293486 | 2024-04-25 14:37:33 +0100 | [diff] [blame] | 232 | |
| 233 | otel: |
| 234 | exporter: |
| 235 | otlp: |
| 236 | traces: |
| 237 | protocol: ${ONAP_OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:grpc} |