Update submodule to latest commit of ONAP CCSDK/ORAN NewDelhi 93/13693/6 2.8.1
authorraviteja.karumuri <raviteja.karumuri@est.tech>
Fri, 25 Oct 2024 12:56:02 +0000 (13:56 +0100)
committerRAVITEJA KARUMURI <raviteja.karumuri@est.tech>
Fri, 25 Oct 2024 13:31:17 +0000 (13:31 +0000)
Issue-ID: NONRTRIC-1016
Change-Id: I7c9b8a7a80d069793f81d26d04111b14e4d9809a
Signed-off-by: Raviteja Karumuri <raviteja.karumuri@est.tech>
api/pms-api-v3.yaml
api/pms-api.json
api/pms-api.yaml
api/pms-api/index.html
config/application.yaml
docs/offeredapis/swagger/pms-api.json
docs/offeredapis/swagger/pms-api.yaml
onap/oran
pom.xml

index 3d39056..d2d613a 100644 (file)
@@ -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.\
             \ <br>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
index 00935a8..f67bca8 100644 (file)
         "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" : {
           },
           "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",
index 699d5ed..1c25e05 100644 (file)
@@ -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
index 1c3ccb1..60783dc 100644 (file)
@@ -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",
index 39b4486..1d2620a 100644 (file)
@@ -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.
 # 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
index 00935a8..f67bca8 100644 (file)
         "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" : {
           },
           "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",
index 699d5ed..1c25e05 100644 (file)
@@ -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
index ad80065..a52529e 160000 (submodule)
--- 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 (file)
--- a/pom.xml
+++ b/pom.xml
 * ========================LICENSE_END===================================
 -->
 <project
-    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">
+        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">
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-parent</artifactId>
-        <version>3.2.5</version>
-        <relativePath />
+        <version>3.3.2</version>
+        <relativePath/>
     </parent>
     <groupId>org.o-ran-sc.nonrtric.plt</groupId>
     <artifactId>a1policymanagementservice</artifactId>
     </repositories>
     <properties>
         <java.version>17</java.version>
-        <software.amazon.awssdk.version>2.20.12</software.amazon.awssdk.version>
-        <json.version>20231013</json.version>
-        <commons-io.version>2.14.0</commons-io.version>
-        <guava.version>32.0.1-jre</guava.version>
+        <software.amazon.awssdk.version>2.27.8</software.amazon.awssdk.version>
+        <json.version>20240303</json.version>
+        <commons-io.version>2.16.1</commons-io.version>
+        <guava.version>33.3.0-jre</guava.version>
         <surefire-maven-plugin.version>3.0.0-M8</surefire-maven-plugin.version>
         <surefire-report-plugin.version>3.0.0-M8</surefire-report-plugin.version>
         <maven-compiler-plugin.version>3.10.0</maven-compiler-plugin.version>
         <sonar-maven-plugin.version>3.7.0.1746</sonar-maven-plugin.version>
         <jacoco-maven-plugin.version>0.8.8</jacoco-maven-plugin.version>
         <exec-maven-plugin.version>3.1.0</exec-maven-plugin.version>
+        <localstack.version>1.20.1</localstack.version>
+        <junit.jupiter.version>1.20.1</junit.jupiter.version>
+        <gson.version>2.10.1</gson.version>
+        <javax.annotation-api.version>1.3.2</javax.annotation-api.version>
+        <everit-json-schema.version>1.14.4</everit-json-schema.version>
+        <jackson-databind-nullable.version>0.2.6</jackson-databind-nullable.version>
+        <validation-api.version>2.0.1.Final</validation-api.version>
+        <swagger-annotations.version>2.2.15</swagger-annotations.version>
+        <spring-boot-actuator-autoconfigure.version>3.3.2</spring-boot-actuator-autoconfigure.version>
+        <formatter-maven-plugin.version>2.22.0</formatter-maven-plugin.version>
+        <spotless-maven-plugin.version>2.35.0</spotless-maven-plugin.version>
+        <springdoc.version>2.0.2</springdoc.version>
+        <docker-maven-plugin>0.30.0</docker-maven-plugin>
+        <ccsdk.project.version>${project.version}</ccsdk.project.version>
+        <mapstruct.version>1.6.0</mapstruct.version>
+        <allowskiptests>false</allowskiptests>
     </properties>
     <dependencies>
         <dependency>
             <groupId>javax.validation</groupId>
             <artifactId>validation-api</artifactId>
-            <version>2.0.1.Final</version>
+            <version>${validation-api.version}</version>
         </dependency>
         <dependency>
             <groupId>javax.annotation</groupId>
             <artifactId>javax.annotation-api</artifactId>
-            <version>1.3.2</version>
+            <version>${javax.annotation-api.version}</version>
         </dependency>
         <dependency>
             <groupId>io.swagger.core.v3</groupId>
             <artifactId>swagger-annotations</artifactId>
-            <version>2.2.15</version>
+            <version>${swagger-annotations.version}</version>
         </dependency>
         <dependency>
             <groupId>org.openapitools</groupId>
             <artifactId>jackson-databind-nullable</artifactId>
-            <version>0.2.4</version>
+            <version>${jackson-databind-nullable.version}</version>
         </dependency>
         <dependency>
             <groupId>org.springframework.boot</groupId>
         <dependency>
             <groupId>org.mapstruct</groupId>
             <artifactId>mapstruct</artifactId>
-            <version>1.5.5.Final</version>
+            <version>${mapstruct.version}</version>
         </dependency>
         <dependency>
             <groupId>org.mapstruct</groupId>
             <artifactId>mapstruct-processor</artifactId>
-            <version>1.5.5.Final</version>
+            <version>${mapstruct.version}</version>
         </dependency>
         <!-- Actuator dependencies -->
         <dependency>
             <optional>true</optional>
             <scope>runtime</scope>
         </dependency>
+        <dependency>
+            <groupId>org.testcontainers</groupId>
+            <artifactId>junit-jupiter</artifactId>
+            <version>${junit.jupiter.version}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.testcontainers</groupId>
+            <artifactId>localstack</artifactId>
+            <version>${localstack.version}</version>
+            <scope>test</scope>
+        </dependency>
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-test</artifactId>
         <dependency>
             <groupId>com.github.erosb</groupId>
             <artifactId>everit-json-schema</artifactId>
-            <version>1.14.0</version>
+            <version>${everit-json-schema.version}</version>
         </dependency>
-       <!-- For Tracing -->
+        <!-- For Tracing -->
         <dependency>
             <groupId>io.micrometer</groupId>
             <artifactId>micrometer-tracing-bridge-otel</artifactId>
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-actuator-autoconfigure</artifactId>
+            <version>3.3.0</version>
         </dependency>
     </dependencies>
     <dependencyManagement>
             <dependency>
                 <groupId>io.opentelemetry</groupId>
                 <artifactId>opentelemetry-bom</artifactId>
-                <version>1.38.0</version>
+                <version>1.41.0</version>
                 <type>pom</type>
                 <scope>import</scope>
             </dependency>
             <dependency>
                 <groupId>io.opentelemetry.instrumentation</groupId>
                 <artifactId>opentelemetry-instrumentation-bom-alpha</artifactId>
-                <version>2.4.0-alpha</version>
+                <version>2.7.0-alpha</version>
                 <type>pom</type>
                 <scope>import</scope>
             </dependency>
                 <artifactId>maven-surefire-plugin</artifactId>
                 <version>${surefire-maven-plugin.version}</version>
                 <configuration>
-                    <skipTests>false</skipTests>
+                    <skipTests>${allowskiptests}</skipTests>
                 </configuration>
             </plugin>
             <plugin>
                     </execution>
                     <execution>
                         <id>generate-openapi-policy-api</id>
-                        <phase>generate-sources</phase>
+                        <phase>generate-sources        </phase>
                         <goals>
                             <goal>generate</goal>
                         </goals>
                             </configOptions>
                         </configuration>
                     </execution>
-                 </executions>
+                </executions>
             </plugin>
             <plugin>
                 <artifactId>maven-resources-plugin</artifactId>