From 95b255234d1dcaf6fbbea4ff26f6730856bc3f26 Mon Sep 17 00:00:00 2001 From: "raviteja.karumuri" Date: Fri, 25 Oct 2024 13:56:02 +0100 Subject: [PATCH] Update submodule to latest commit of ONAP CCSDK/ORAN NewDelhi Issue-ID: NONRTRIC-1016 Change-Id: I7c9b8a7a80d069793f81d26d04111b14e4d9809a Signed-off-by: Raviteja Karumuri --- api/pms-api-v3.yaml | 11 +-- api/pms-api.json | 5 +- api/pms-api.yaml | 2 +- api/pms-api/index.html | 5 +- config/application.yaml | 170 +++++++++++++++++----------------- docs/offeredapis/swagger/pms-api.json | 5 +- docs/offeredapis/swagger/pms-api.yaml | 2 +- onap/oran | 2 +- pom.xml | 73 ++++++++++----- 9 files changed, 153 insertions(+), 122 deletions(-) diff --git a/api/pms-api-v3.yaml b/api/pms-api-v3.yaml index 3d39056..d2d613a 100644 --- a/api/pms-api-v3.yaml +++ b/api/pms-api-v3.yaml @@ -53,7 +53,7 @@ info: url: https://www.onap.org/ email: discuss-list@onap.com servers: - - url: '{apiRoot}/a1policymanagement/v1' + - url: '{apiRoot}/a1-policy-management/v1' variables: apiRoot: description: 'apiRoot is the Host:port/Domain name of the service where the A1Pms running' @@ -168,7 +168,7 @@ paths: summary: Query Near-RT RIC information tags: - NearRT-RIC Repository - /policytypes: + /policy-types: get: operationId: getPolicyTypes parameters: @@ -238,7 +238,7 @@ paths: description: Query policy type identities tags: - A1 Policy Management - /policytypes/{policyTypeId}: + /policy-types/{policyTypeId}: get: operationId: getPolicyTypeDefinition parameters: @@ -436,7 +436,7 @@ paths: description: "Returns a list of A1 policies matching given search criteria.\ \
If several query parameters are defined, the policies matching all conditions\ \ are returned." - operationId: getPolicyIds + operationId: getAllPolicies parameters: - description: Select policies of a given policy type identity. explode: true @@ -877,9 +877,6 @@ components: 'rApp ID' policyObject: $ref: '#/components/schemas/PolicyObject' - statusNotificationUri: - description: Callback URI for policy status updates - type: string policyTypeId: description: identity of the policy type type: string diff --git a/api/pms-api.json b/api/pms-api.json index 00935a8..f67bca8 100644 --- a/api/pms-api.json +++ b/api/pms-api.json @@ -1594,7 +1594,7 @@ "description" : "Information about policy types" }, "policy_info" : { - "required" : [ "policy_data", "policy_id", "policytype_id", "ric_id", "service_id" ], + "required" : [ "policy_data", "policy_id", "policytype_id", "ric_id" ], "type" : "object", "properties" : { "ric_id" : { @@ -1614,7 +1614,8 @@ }, "service_id" : { "type" : "string", - "description" : "the identity of the service owning the policy. This can be used to group the policies (it is possible to get all policies associated to a service). Note that the service does not need to be registered." + "description" : "the identity of the service owning the policy. This can be used to group the policies (it is possible to get all policies associated to a service). Note that the service does not need to be registered.", + "default" : "" }, "policy_data" : { "type" : "object", diff --git a/api/pms-api.yaml b/api/pms-api.yaml index 699d5ed..1c25e05 100644 --- a/api/pms-api.yaml +++ b/api/pms-api.yaml @@ -1307,6 +1307,7 @@ components: used to group the policies (it is possible to get all policies associated to a service). Note that the service does not need to be registered. type: string + default: "" policy_data: description: the configuration of the policy type: object @@ -1319,7 +1320,6 @@ components: required: - ric_id - policy_id - - service_id - policy_data - policytype_id type: object diff --git a/api/pms-api/index.html b/api/pms-api/index.html index 1c3ccb1..60783dc 100644 --- a/api/pms-api/index.html +++ b/api/pms-api/index.html @@ -941,7 +941,7 @@ ul.nav-tabs { } }; defs["policy_info"] = { - "required" : [ "policy_data", "policy_id", "policytype_id", "ric_id", "service_id" ], + "required" : [ "policy_data", "policy_id", "policytype_id", "ric_id" ], "type" : "object", "properties" : { "ric_id" : { @@ -961,7 +961,8 @@ ul.nav-tabs { }, "service_id" : { "type" : "string", - "description" : "the identity of the service owning the policy. This can be used to group the policies (it is possible to get all policies associated to a service). Note that the service does not need to be registered." + "description" : "the identity of the service owning the policy. This can be used to group the policies (it is possible to get all policies associated to a service). Note that the service does not need to be registered.", + "default" : "" }, "policy_data" : { "type" : "object", diff --git a/config/application.yaml b/config/application.yaml index 39b4486..1d2620a 100644 --- a/config/application.yaml +++ b/config/application.yaml @@ -3,6 +3,7 @@ # ONAP : ccsdk oran # ================================================================================ # Copyright (C) 2020-2023 Nordix Foundation. All rights reserved. +# Copyright (C) 2024 OpenInfra Foundation Europe. 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. @@ -19,95 +20,80 @@ # SPDX-License-Identifier: Apache-2.0 # ============LICENSE_END========================================================= # -spring: - application: - name: a1-pms - profiles: - active: prod - main: - allow-bean-definition-overriding: true - aop: - auto: false -management: - tracing: - propagation: - produce: ${ONAP_PROPAGATOR_PRODUCE:[W3C]} - sampling: - probability: 1.0 - endpoints: - web: - exposure: - # Enabling of springboot actuator features. See springboot documentation. - include: "loggers,logfile,health,info,metrics,threaddump,heapdump,shutdown" - endpoint: - shutdown: - enabled: true -lifecycle: - timeout-per-shutdown-phase: "20s" -springdoc: - show-actuator: true -logging: - # Configuration of logging - level: - ROOT: ERROR - org.springframework: ERROR - org.springframework.data: ERROR - org.springframework.web.reactive.function.client.ExchangeFunctions: ERROR - org.springframework.web.servlet.DispatcherServlet: ERROR - org.onap.ccsdk.oran.a1policymanagementservice: INFO - pattern: - console: "%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] [%thread] %logger{20} - %msg%n" - file: "%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] [%thread] %logger{20} - %msg%n" - file: - name: /var/log/policy-agent/application.log -server: - # Configuration of the HTTP/REST server. The parameters are defined and handeled by the springboot framework. - # See springboot documentation. - port : 8433 - http-port: 8081 - shutdown: "graceful" - ssl: - key-store-type: JKS - key-store-password: policy_agent - key-store: /opt/app/policy-agent/etc/cert/keystore.jks - key-password: policy_agent - key-alias: policy_agent - # trust-store-password: - # trust-store: + app: - # Location of the component configuration file. - filepath: /opt/app/policy-agent/data/application_configuration.json - webclient: - # Configuration of the trust store used for the HTTP client (outgoing requests) - # The file location and the password for the truststore is only relevant if trust-store-used == true - # Note that the same keystore as for the server is used. - trust-store-used: false - trust-store-password: policy_agent - trust-store: /opt/app/policy-agent/etc/cert/truststore.jks - # Configuration of usage of HTTP Proxy for the southbound accesses. - # The HTTP proxy (if configured) will only be used for accessing NearRT RIC:s - # proxy-type can be either HTTP, SOCKS4 or SOCKS5 - http.proxy-host: - http.proxy-port: 0 - http.proxy-type: HTTP - # path where the service can store data. This parameter is not relevant if S3 Object store is configured. - vardata-directory: /var/policy-management-service - # the config-file-schema-path referres to a location in the jar file. If this property is empty or missing, - # no schema validation will be executed. - config-file-schema-path: /application_configuration_schema.json # A file containing an authorization token, which shall be inserted in each HTTP header (authorization). # If the file name is empty, no authorization token is sent. auth-token-file: # A URL to authorization provider such as OPA. Each time an A1 Policy is accessed, a call to this # authorization provider is done for access control. If this is empty, no fine grained access control is done. authorization-provider: + # the config-file-schema-path referres to a location in the jar file. If this property is empty or missing, + # no schema validation will be executed. + config-file-schema-path: /application_configuration_schema.json + # Location of the component configuration file. + filepath: /opt/app/policy-agent/data/application_configuration.json # S3 object store usage is enabled by defining the bucket to use. This will override the vardata-directory parameter. s3: endpointOverride: http://localhost:9000 accessKeyId: minio secretAccessKey: miniostorage bucket: + webclient: + # Configuration of usage of HTTP Proxy for the southbound accesses. + # The HTTP proxy (if configured) will only be used for accessing NearRT RIC:s + # proxy-type can be either HTTP, SOCKS4 or SOCKS5 + http.proxy-host: + http.proxy-port: 0 + http.proxy-type: HTTP + # Configuration of the trust store used for the HTTP client (outgoing requests) + # The file location and the password for the truststore is only relevant if trust-store-used == true + # Note that the same keystore as for the server is used. + trust-store-used: false + trust-store-password: policy_agent + trust-store: /opt/app/policy-agent/etc/cert/truststore.jks + # path where the service can store data. This parameter is not relevant if S3 Object store is configured. + vardata-directory: /var/policy-management-service +lifecycle: + timeout-per-shutdown-phase: "20s" +logging: + # Configuration of logging + file: + name: /var/log/policy-agent/application.log + level: + ROOT: ERROR + org.onap.ccsdk.oran.a1policymanagementservice: INFO + org.springframework: ERROR + org.springframework.data: ERROR + org.springframework.web.reactive.function.client.ExchangeFunctions: ERROR + org.springframework.web.servlet.DispatcherServlet: ERROR + pattern: + console: "%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] [%thread] %logger{20} - %msg%n" + file: "%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] [%thread] %logger{20} - %msg%n" +management: + endpoint: + shutdown: + enabled: true + endpoints: + web: + exposure: + # Enabling of springboot actuator features. See springboot documentation. + include: "loggers,logfile,health,info,metrics,threaddump,heapdump,shutdown" + tracing: + propagation: + produce: ${ONAP_PROPAGATOR_PRODUCE:[W3C]} + sampling: + probability: 1.0 otel: + exporter: + otlp: + traces: + endpoint: ${ONAP_OTEL_EXPORTER_ENDPOINT:http://jaeger:4317} + protocol: ${ONAP_OTEL_EXPORTER_PROTOCOL:grpc} + logs: + exporter: none + metrics: + exporter: none sdk: disabled: ${ONAP_SDK_DISABLED:true} south: ${ONAP_TRACING_SOUTHBOUND:true} @@ -115,12 +101,28 @@ otel: sampler: jaeger_remote: endpoint: ${ONAP_OTEL_SAMPLER_JAEGER_REMOTE_ENDPOINT:http://jaeger:14250} - exporter: - otlp: - traces: - protocol: ${ONAP_OTEL_EXPORTER_PROTOCOL:grpc} - endpoint: ${ONAP_OTEL_EXPORTER_ENDPOINT:http://jaeger:4317} - metrics: - exporter: none - logs: - exporter: none +server: + # Configuration of the HTTP/REST server. The parameters are defined and handeled by the springboot framework. + # See springboot documentation. + port : 8433 + http-port: 8081 + shutdown: "graceful" + ssl: + key-store-type: JKS + key-store-password: policy_agent + key-store: /opt/app/policy-agent/etc/cert/keystore.jks + key-password: policy_agent + key-alias: policy_agent + # trust-store-password: + # trust-store: +spring: + aop: + auto: false + application: + name: a1-pms + main: + allow-bean-definition-overriding: true + profiles: + active: prod +springdoc: + show-actuator: true \ No newline at end of file diff --git a/docs/offeredapis/swagger/pms-api.json b/docs/offeredapis/swagger/pms-api.json index 00935a8..f67bca8 100644 --- a/docs/offeredapis/swagger/pms-api.json +++ b/docs/offeredapis/swagger/pms-api.json @@ -1594,7 +1594,7 @@ "description" : "Information about policy types" }, "policy_info" : { - "required" : [ "policy_data", "policy_id", "policytype_id", "ric_id", "service_id" ], + "required" : [ "policy_data", "policy_id", "policytype_id", "ric_id" ], "type" : "object", "properties" : { "ric_id" : { @@ -1614,7 +1614,8 @@ }, "service_id" : { "type" : "string", - "description" : "the identity of the service owning the policy. This can be used to group the policies (it is possible to get all policies associated to a service). Note that the service does not need to be registered." + "description" : "the identity of the service owning the policy. This can be used to group the policies (it is possible to get all policies associated to a service). Note that the service does not need to be registered.", + "default" : "" }, "policy_data" : { "type" : "object", diff --git a/docs/offeredapis/swagger/pms-api.yaml b/docs/offeredapis/swagger/pms-api.yaml index 699d5ed..1c25e05 100644 --- a/docs/offeredapis/swagger/pms-api.yaml +++ b/docs/offeredapis/swagger/pms-api.yaml @@ -1307,6 +1307,7 @@ components: used to group the policies (it is possible to get all policies associated to a service). Note that the service does not need to be registered. type: string + default: "" policy_data: description: the configuration of the policy type: object @@ -1319,7 +1320,6 @@ components: required: - ric_id - policy_id - - service_id - policy_data - policytype_id type: object diff --git a/onap/oran b/onap/oran index ad80065..a52529e 160000 --- a/onap/oran +++ b/onap/oran @@ -1 +1 @@ -Subproject commit ad800650d7958985a34ac30d77407a9ce7c2de1a +Subproject commit a52529e792b91d937a4bc5d565636a05fa41a1f7 diff --git a/pom.xml b/pom.xml index 802b252..6569881 100644 --- a/pom.xml +++ b/pom.xml @@ -20,15 +20,15 @@ * ========================LICENSE_END=================================== --> + xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 org.springframework.boot spring-boot-starter-parent - 3.2.5 - + 3.3.2 + org.o-ran-sc.nonrtric.plt a1policymanagementservice @@ -48,10 +48,10 @@ 17 - 2.20.12 - 20231013 - 2.14.0 - 32.0.1-jre + 2.27.8 + 20240303 + 2.16.1 + 33.3.0-jre 3.0.0-M8 3.0.0-M8 3.10.0 @@ -59,27 +59,43 @@ 3.7.0.1746 0.8.8 3.1.0 + 1.20.1 + 1.20.1 + 2.10.1 + 1.3.2 + 1.14.4 + 0.2.6 + 2.0.1.Final + 2.2.15 + 3.3.2 + 2.22.0 + 2.35.0 + 2.0.2 + 0.30.0 + ${project.version} + 1.6.0 + false javax.validation validation-api - 2.0.1.Final + ${validation-api.version} javax.annotation javax.annotation-api - 1.3.2 + ${javax.annotation-api.version} io.swagger.core.v3 swagger-annotations - 2.2.15 + ${swagger-annotations.version} org.openapitools jackson-databind-nullable - 0.2.4 + ${jackson-databind-nullable.version} org.springframework.boot @@ -128,12 +144,12 @@ org.mapstruct mapstruct - 1.5.5.Final + ${mapstruct.version} org.mapstruct mapstruct-processor - 1.5.5.Final + ${mapstruct.version} @@ -167,6 +183,18 @@ true runtime + + org.testcontainers + junit-jupiter + ${junit.jupiter.version} + test + + + org.testcontainers + localstack + ${localstack.version} + test + org.springframework.boot spring-boot-starter-test @@ -211,9 +239,9 @@ com.github.erosb everit-json-schema - 1.14.0 + ${everit-json-schema.version} - + io.micrometer micrometer-tracing-bridge-otel @@ -234,6 +262,7 @@ org.springframework.boot spring-boot-actuator-autoconfigure + 3.3.0 @@ -241,14 +270,14 @@ io.opentelemetry opentelemetry-bom - 1.38.0 + 1.41.0 pom import io.opentelemetry.instrumentation opentelemetry-instrumentation-bom-alpha - 2.4.0-alpha + 2.7.0-alpha pom import @@ -265,7 +294,7 @@ maven-surefire-plugin ${surefire-maven-plugin.version} - false + ${allowskiptests} @@ -377,7 +406,7 @@ generate-openapi-policy-api - generate-sources + generate-sources generate @@ -433,7 +462,7 @@ - + maven-resources-plugin -- 2.16.6