diff options
40 files changed, 579 insertions, 28 deletions
diff --git a/checkstyle/pom.xml b/checkstyle/pom.xml index d2b08dec44..9a3896899c 100644 --- a/checkstyle/pom.xml +++ b/checkstyle/pom.xml @@ -26,7 +26,7 @@ <modelVersion>4.0.0</modelVersion> <groupId>org.onap.cps</groupId> <artifactId>checkstyle</artifactId> - <version>3.1.1-SNAPSHOT</version> + <version>3.1.5-SNAPSHOT</version> <profiles> <profile> diff --git a/cps-application/pom.xml b/cps-application/pom.xml index abc9ac755e..20bfb0dc4d 100755 --- a/cps-application/pom.xml +++ b/cps-application/pom.xml @@ -27,7 +27,7 @@ <parent> <groupId>org.onap.cps</groupId> <artifactId>cps-parent</artifactId> - <version>3.1.1-SNAPSHOT</version> + <version>3.1.5-SNAPSHOT</version> <relativePath>../cps-parent/pom.xml</relativePath> </parent> diff --git a/cps-bom/pom.xml b/cps-bom/pom.xml index 93eca48553..e80e6b4872 100644 --- a/cps-bom/pom.xml +++ b/cps-bom/pom.xml @@ -25,7 +25,7 @@ <modelVersion>4.0.0</modelVersion> <groupId>org.onap.cps</groupId> <artifactId>cps-bom</artifactId> - <version>3.1.1-SNAPSHOT</version> + <version>3.1.5-SNAPSHOT</version> <packaging>pom</packaging> <description>This artifact contains dependencyManagement declarations of all published CPS components.</description> diff --git a/cps-dependencies/pom.xml b/cps-dependencies/pom.xml index 4db0a3cd91..a3d42ddbd6 100755 --- a/cps-dependencies/pom.xml +++ b/cps-dependencies/pom.xml @@ -27,7 +27,7 @@ <modelVersion>4.0.0</modelVersion> <groupId>org.onap.cps</groupId> <artifactId>cps-dependencies</artifactId> - <version>3.1.1-SNAPSHOT</version> + <version>3.1.5-SNAPSHOT</version> <packaging>pom</packaging> <name>${project.groupId}:${project.artifactId}</name> diff --git a/cps-events/pom.xml b/cps-events/pom.xml index c75f465ff6..39f8e49765 100644 --- a/cps-events/pom.xml +++ b/cps-events/pom.xml @@ -24,7 +24,7 @@ <parent> <groupId>org.onap.cps</groupId> <artifactId>cps-parent</artifactId> - <version>3.1.1-SNAPSHOT</version> + <version>3.1.5-SNAPSHOT</version> <relativePath>../cps-parent/pom.xml</relativePath> </parent> diff --git a/cps-ncmp-events/pom.xml b/cps-ncmp-events/pom.xml index d423e910d5..4658894858 100644 --- a/cps-ncmp-events/pom.xml +++ b/cps-ncmp-events/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.onap.cps</groupId> <artifactId>cps-parent</artifactId> - <version>3.1.1-SNAPSHOT</version> + <version>3.1.5-SNAPSHOT</version> <relativePath>../cps-parent/pom.xml</relativePath> </parent> diff --git a/cps-ncmp-rest-stub/pom.xml b/cps-ncmp-rest-stub/pom.xml index 5b4da8b2bc..2a4979a331 100644 --- a/cps-ncmp-rest-stub/pom.xml +++ b/cps-ncmp-rest-stub/pom.xml @@ -26,7 +26,7 @@ <parent> <groupId>org.onap.cps</groupId> <artifactId>cps-parent</artifactId> - <version>3.1.1-SNAPSHOT</version> + <version>3.1.5-SNAPSHOT</version> <relativePath>../cps-parent/pom.xml</relativePath> </parent> diff --git a/cps-ncmp-rest/pom.xml b/cps-ncmp-rest/pom.xml index 7202101831..a4c44ba769 100644 --- a/cps-ncmp-rest/pom.xml +++ b/cps-ncmp-rest/pom.xml @@ -27,7 +27,7 @@ <parent> <groupId>org.onap.cps</groupId> <artifactId>cps-parent</artifactId> - <version>3.1.1-SNAPSHOT</version> + <version>3.1.5-SNAPSHOT</version> <relativePath>../cps-parent/pom.xml</relativePath> </parent> diff --git a/cps-ncmp-service/pom.xml b/cps-ncmp-service/pom.xml index 0e192bd8a3..6a9d9485c4 100644 --- a/cps-ncmp-service/pom.xml +++ b/cps-ncmp-service/pom.xml @@ -27,7 +27,7 @@ <parent> <groupId>org.onap.cps</groupId> <artifactId>cps-parent</artifactId> - <version>3.1.1-SNAPSHOT</version> + <version>3.1.5-SNAPSHOT</version> <relativePath>../cps-parent/pom.xml</relativePath> </parent> diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/impl/event/lcm/LcmEventsService.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/impl/event/lcm/LcmEventsService.java index 762b21ef34..d6857d36ae 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/impl/event/lcm/LcmEventsService.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/impl/event/lcm/LcmEventsService.java @@ -24,6 +24,7 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.onap.ncmp.cmhandle.event.lcm.LcmEvent; import org.springframework.beans.factory.annotation.Value; +import org.springframework.kafka.KafkaException; import org.springframework.stereotype.Service; /** @@ -51,7 +52,11 @@ public class LcmEventsService { */ public void publishLcmEvent(final String cmHandleId, final LcmEvent lcmEvent) { if (notificationsEnabled) { - lcmEventsPublisher.publishEvent(topicName, cmHandleId, lcmEvent); + try { + lcmEventsPublisher.publishEvent(topicName, cmHandleId, lcmEvent); + } catch (final KafkaException e) { + log.error("Unable to publish message to topic : {} and cause : {}", topicName, e.getMessage()); + } } else { log.debug("Notifications disabled."); } diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/impl/event/lcm/LcmEventsServiceSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/impl/event/lcm/LcmEventsServiceSpec.groovy index 1eae357bb6..ef399e1c65 100644 --- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/impl/event/lcm/LcmEventsServiceSpec.groovy +++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/impl/event/lcm/LcmEventsServiceSpec.groovy @@ -21,6 +21,7 @@ package org.onap.cps.ncmp.api.impl.event.lcm import org.onap.ncmp.cmhandle.event.lcm.LcmEvent +import org.springframework.kafka.KafkaException import spock.lang.Specification class LcmEventsServiceSpec extends Specification { @@ -45,4 +46,17 @@ class LcmEventsServiceSpec extends Specification { 'disabled' | false || 0 } + def 'Unable to send message'(){ + given: 'a cm handle id and Lcm Event and notification enabled' + def cmHandleId = 'test-cm-handle-id' + def lcmEvent = new LcmEvent(eventId: UUID.randomUUID().toString(), eventCorrelationId: cmHandleId) + objectUnderTest.notificationsEnabled = true + when: 'publisher set to throw an exception' + mockLcmEventsPublisher.publishEvent(*_) >> { throw new KafkaException('publishing failed')} + and: 'an event is publised' + objectUnderTest.publishLcmEvent(cmHandleId, lcmEvent) + then: 'the exception is just logged and not bubbled up' + noExceptionThrown() + } + } diff --git a/cps-parent/pom.xml b/cps-parent/pom.xml index 9779b92352..8739e2ce3e 100755 --- a/cps-parent/pom.xml +++ b/cps-parent/pom.xml @@ -32,7 +32,7 @@ <groupId>org.onap.cps</groupId> <artifactId>cps-parent</artifactId> - <version>3.1.1-SNAPSHOT</version> + <version>3.1.5-SNAPSHOT</version> <packaging>pom</packaging> <properties> diff --git a/cps-path-parser/pom.xml b/cps-path-parser/pom.xml index d68d6db3d8..ffac3b02a1 100644 --- a/cps-path-parser/pom.xml +++ b/cps-path-parser/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.onap.cps</groupId> <artifactId>cps-parent</artifactId> - <version>3.1.1-SNAPSHOT</version> + <version>3.1.5-SNAPSHOT</version> <relativePath>../cps-parent/pom.xml</relativePath> </parent> diff --git a/cps-rest/pom.xml b/cps-rest/pom.xml index 47f45e3812..37b3e46247 100755 --- a/cps-rest/pom.xml +++ b/cps-rest/pom.xml @@ -28,7 +28,7 @@ <parent> <groupId>org.onap.cps</groupId> <artifactId>cps-parent</artifactId> - <version>3.1.1-SNAPSHOT</version> + <version>3.1.5-SNAPSHOT</version> <relativePath>../cps-parent/pom.xml</relativePath> </parent> diff --git a/cps-ri/pom.xml b/cps-ri/pom.xml index f00a5953f9..5cdbf90c48 100644 --- a/cps-ri/pom.xml +++ b/cps-ri/pom.xml @@ -26,7 +26,7 @@ <parent>
<groupId>org.onap.cps</groupId>
<artifactId>cps-parent</artifactId>
- <version>3.1.1-SNAPSHOT</version>
+ <version>3.1.5-SNAPSHOT</version>
<relativePath>../cps-parent/pom.xml</relativePath>
</parent>
diff --git a/cps-ri/src/main/java/org/onap/cps/spi/entities/YangResourceEntity.java b/cps-ri/src/main/java/org/onap/cps/spi/entities/YangResourceEntity.java index 7a864a9216..53ae820262 100644 --- a/cps-ri/src/main/java/org/onap/cps/spi/entities/YangResourceEntity.java +++ b/cps-ri/src/main/java/org/onap/cps/spi/entities/YangResourceEntity.java @@ -66,7 +66,6 @@ public class YangResourceEntity implements Serializable { @Column private String moduleName; - @NotNull @Column private String revision; diff --git a/cps-ri/src/main/resources/changelog/changelog-master.yaml b/cps-ri/src/main/resources/changelog/changelog-master.yaml index 218e78b85c..cb5392ba57 100644 --- a/cps-ri/src/main/resources/changelog/changelog-master.yaml +++ b/cps-ri/src/main/resources/changelog/changelog-master.yaml @@ -45,4 +45,6 @@ databaseChangeLog: - include: file: changelog/db/changes/14-loadData-dmi-registry-2022-05-10-schema-set.yaml - include: - file: changelog/db/changes/15-rename-column-yang-resource-table.yaml
\ No newline at end of file + file: changelog/db/changes/15-rename-column-yang-resource-table.yaml + - include: + file: changelog/db/changes/16-insert-cm-handle-state.yaml
\ No newline at end of file diff --git a/cps-ri/src/main/resources/changelog/db/changes/16-insert-cm-handle-state-forward.sql b/cps-ri/src/main/resources/changelog/db/changes/16-insert-cm-handle-state-forward.sql new file mode 100644 index 0000000000..64b185f3b2 --- /dev/null +++ b/cps-ri/src/main/resources/changelog/db/changes/16-insert-cm-handle-state-forward.sql @@ -0,0 +1,3 @@ +create view cmHandles as select * from fragment where xpath ~* '^/dmi-registry/cm-handles\[@id=''[\w\-]+''\]$'; +insert into fragment(xpath, attributes, anchor_id, parent_id, dataspace_id, schema_node_id) select concat(xpath, '/state'), to_jsonb(concat('{"cm-handle-state": "ADVISED", "last-update-time": "', to_char(now(), 'YYYY-MM-DD"T"HH24:MI:SS.MSTZHTZM'), '"}')::json), anchor_id, id, dataspace_id, schema_node_id from cmHandles; +drop view cmHandles;
\ No newline at end of file diff --git a/cps-ri/src/main/resources/changelog/db/changes/16-insert-cm-handle-state-rollback.sql b/cps-ri/src/main/resources/changelog/db/changes/16-insert-cm-handle-state-rollback.sql new file mode 100644 index 0000000000..aaf05a24cb --- /dev/null +++ b/cps-ri/src/main/resources/changelog/db/changes/16-insert-cm-handle-state-rollback.sql @@ -0,0 +1,4 @@ +delete from fragment where xpath ~* '^/dmi-registry/cm-handles\[@id=''[\w\-]+''\]/state/lock-reason$'; +delete from fragment where xpath ~* '^/dmi-registry/cm-handles\[@id=''[\w\-]+''\]/state/datastores/operational$'; +delete from fragment where xpath ~* '^/dmi-registry/cm-handles\[@id=''[\w\-]+''\]/state/datastores$'; +delete from fragment where xpath ~* '^/dmi-registry/cm-handles\[@id=''[\w\-]+''\]/state$';
\ No newline at end of file diff --git a/cps-ri/src/main/resources/changelog/db/changes/16-insert-cm-handle-state.yaml b/cps-ri/src/main/resources/changelog/db/changes/16-insert-cm-handle-state.yaml new file mode 100644 index 0000000000..0f8c429f4a --- /dev/null +++ b/cps-ri/src/main/resources/changelog/db/changes/16-insert-cm-handle-state.yaml @@ -0,0 +1,11 @@ +databaseChangeLog: + - changeSet: + author: cps + label: insert-cm-handle-state + id: 16 + changes: + - sqlFile: + path: changelog/db/changes/16-insert-cm-handle-state-forward.sql + rollback: + - sqlFile: + path: changelog/db/changes/16-insert-cm-handle-state-rollback.sql
\ No newline at end of file diff --git a/cps-service/pom.xml b/cps-service/pom.xml index 56082f9e03..51cf32475c 100644 --- a/cps-service/pom.xml +++ b/cps-service/pom.xml @@ -28,7 +28,7 @@ <parent> <groupId>org.onap.cps</groupId> <artifactId>cps-parent</artifactId> - <version>3.1.1-SNAPSHOT</version> + <version>3.1.5-SNAPSHOT</version> <relativePath>../cps-parent/pom.xml</relativePath> </parent> diff --git a/cps-service/src/test/groovy/org/onap/cps/utils/GsonSpec.groovy b/cps-service/src/test/groovy/org/onap/cps/utils/GsonSpec.groovy new file mode 100644 index 0000000000..c100ea31d5 --- /dev/null +++ b/cps-service/src/test/groovy/org/onap/cps/utils/GsonSpec.groovy @@ -0,0 +1,40 @@ +package org.onap.cps.utils + +import com.google.gson.stream.JsonReader +import org.onap.cps.TestUtils +import spock.lang.Specification + + +class GsonSpec extends Specification{ + + def 'Iterate over JSON data with gson JsonReader'(){ + given: 'json data with two objects and JSON reader' + def jsonData = TestUtils.getResourceFileContent('multiple-object-data.json') + def objectUnderTest = new JsonReader(new StringReader(jsonData)); + when: 'data is iterated over with JsonReader methods' + iterateWithJsonReader(objectUnderTest) + then: 'no exception is thrown' + noExceptionThrown() + } + + def iterateWithJsonReader(JsonReader jsonReader){ + switch(jsonReader.peek()) { + case "STRING": + print(jsonReader.nextString() + " ") + break; + case "BEGIN_OBJECT": + jsonReader.beginObject(); + while (jsonReader.hasNext()) { + print(jsonReader.nextName() + " ") + iterateWithJsonReader(jsonReader) + } + jsonReader.endObject(); + println("") + break; + default: + break; + } + } + + +} diff --git a/cps-service/src/test/groovy/org/onap/cps/utils/JsonParserStreamSpec.groovy b/cps-service/src/test/groovy/org/onap/cps/utils/JsonParserStreamSpec.groovy new file mode 100644 index 0000000000..68f9251eb9 --- /dev/null +++ b/cps-service/src/test/groovy/org/onap/cps/utils/JsonParserStreamSpec.groovy @@ -0,0 +1,51 @@ +package org.onap.cps.utils + +import com.google.gson.stream.JsonReader +import org.onap.cps.yang.YangTextSchemaSourceSetBuilder +import org.opendaylight.yangtools.yang.common.QName +import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier +import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode +import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode +import org.opendaylight.yangtools.yang.data.codec.gson.JSONCodecFactorySupplier +import org.opendaylight.yangtools.yang.data.codec.gson.JsonParserStream +import org.opendaylight.yangtools.yang.data.impl.schema.Builders +import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNormalizedNodeStreamWriter +import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.DataContainerNodeBuilder +import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; +import spock.lang.Specification +import org.onap.cps.TestUtils + +class JsonParserStreamSpec extends Specification{ + + def 'Multiple data tree parsing with ODL JsonStreamParser'(){ + given: 'json data with two objects and JSON reader' + def jsonData = TestUtils.getResourceFileContent('multiple-object-data.json') + def jsonReader = new JsonReader(new StringReader(jsonData)) + def yangResourcesMap = TestUtils.getYangResourcesAsMap('multipleDataTree.yang') + and: 'schema context' + def schemaContext = YangTextSchemaSourceSetBuilder.of(yangResourcesMap).getSchemaContext() + and: 'variable to store the result of parsing' + DataContainerNodeBuilder<YangInstanceIdentifier.NodeIdentifier, ContainerNode> builder = + Builders.containerBuilder().withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(schemaContext.getQName())); + def normalizedNodeStreamWriter = ImmutableNormalizedNodeStreamWriter.from(builder); + def jsonCodecFactory = JSONCodecFactorySupplier.DRAFT_LHOTKA_NETMOD_YANG_JSON_02 + .getShared((EffectiveModelContext) schemaContext); + and: 'JSON parser stream' + def jsonParserStream = JsonParserStream.create(normalizedNodeStreamWriter, jsonCodecFactory) + when: 'parsing is invoked with the given JSON reader' + jsonParserStream.parse(jsonReader) + def result = builder.build() + then: 'result is the correct size' + result.size() == 2 + then: 'data container child is a type of normalized node' + def dataContainerChild = result.getValue()[index] + dataContainerChild instanceof NormalizedNode == true + then: 'qualified name created is as expected' + dataContainerChild.nodeType == QName.create('org:onap:ccsdk:multiDataTree', '2020-09-15', nodeName) + where: + index | nodeName + 0 | 'first-container' + 1 | 'last-container' + + } +}
\ No newline at end of file diff --git a/cps-service/src/test/resources/multiple-object-data.json b/cps-service/src/test/resources/multiple-object-data.json new file mode 100644 index 0000000000..a3c46763a7 --- /dev/null +++ b/cps-service/src/test/resources/multiple-object-data.json @@ -0,0 +1,8 @@ +{ + "first-container": { + "a-leaf": "a-Value" + }, + "last-container": { + "x-leaf": "x-value" + } +}
\ No newline at end of file diff --git a/cps-service/src/test/resources/multipleDataTree.yang b/cps-service/src/test/resources/multipleDataTree.yang new file mode 100644 index 0000000000..15fd04246a --- /dev/null +++ b/cps-service/src/test/resources/multipleDataTree.yang @@ -0,0 +1,23 @@ +module multipleDataTree { + yang-version 1.1; + namespace "org:onap:ccsdk:multiDataTree"; + + prefix multiple-data-tree; + + revision "2020-09-15" { + description + "Sample Model for multiple data tree"; + } + + container first-container { + leaf a-leaf { + type string; + } + } + + container last-container { + leaf x-leaf { + type string; + } + } +} diff --git a/docs/cps-events.rst b/docs/cps-events.rst index dce1a30feb..df37de3632 100644 --- a/docs/cps-events.rst +++ b/docs/cps-events.rst @@ -11,6 +11,45 @@ CPS Events CPS-NCMP ******** +Async events are triggered when a valid topic has been detected in a passthrough operation. + +:download:`NCMP request response event schema <schemas/ncmp-async-request-response-event-schema-v1.json>` + +Event header +^^^^^^^^^^^^^ + +.. code-block:: json + + { + "eventId" : "001", + "eventCorrelationId" : "cps-001", + "eventTime" : "2022-09-28T12:24:21.003+0000", + "eventTarget" : "test-topic", + "eventType" : "org.onap.cps.ncmp.event.model.DmiAsyncRequestResponseEvent", + "eventSchema" : "urn:cps:org.onap.cps.ncmp.event.model.DmiAsyncRequestResponseEvent:v1", + "forwarded-Event" : { ... } + } + +Forwarded-Event Payload +^^^^^^^^^^^^^^^^^^^^^^^ + +.. code-block:: json + + "Forwarded-Event": { + "eventId" : "002", + "eventCorrelationId" : "cps-001", + "eventTime" : "2022-09-28T12:24:18.340+0000", + "eventTarget" : "test-topic", + "eventType" : "org.onap.cps.ncmp.event.model.DmiAsyncRequestResponseEvent", + "eventSchema" : "urn:cps:org.onap.cps.ncmp.event.model.DmiAsyncRequestResponseEvent:v1", + "eventSource" : "org.onap.cps.ncmp.dmi", + "response-data-schema" : "urn:cps:org.onap.cps.ncmp.event.model.DmiAsyncRequestResponseEvent:v1", + "response-status" : "OK", + "response-code" : "200", + "response-data" : { ... } + } + + Lifecycle Management (LCM) Event ================================ diff --git a/docs/release-notes.rst b/docs/release-notes.rst index 5d3aa9205e..aec3f3b1f2 100755 --- a/docs/release-notes.rst +++ b/docs/release-notes.rst @@ -12,9 +12,120 @@ CPS Release Notes :depth: 2 .. -.. ==================== -.. * * * KOHN * * * -.. ==================== +.. ====================== +.. * * * LONDON * * * +.. ====================== + +Version: 3.2.0 (not yet released) +================================= + +Release Data +------------ + ++--------------------------------------+--------------------------------------------------------+ +| **CPS Project** | | +| | | ++--------------------------------------+--------------------------------------------------------+ +| **Docker images** | onap/cps-and-ncmp:3.2.0 | +| | | ++--------------------------------------+--------------------------------------------------------+ +| **Release designation** | 3.2.0 London | +| | | ++--------------------------------------+--------------------------------------------------------+ +| **Release date** | (not yet released) | +| | | ++--------------------------------------+--------------------------------------------------------+ +Features +-------- + - `CPS-1185 <https://jira.onap.org/browse/CPS-1185>`_ Get all dataspaces + - `CPS-1186 <https://jira.onap.org/browse/CPS-1186>`_ Get all schema sets for a dataspace + - `CPS-1187 <https://jira.onap.org/browse/CPS-1187>`_ Get single dataspace + - `CPS-1189 <https://jira.onap.org/browse/CPS-1189>`_ Various create endpoints should return 201 response with empty body + +Bug Fixes +--------- + - `CPS-1312 <https://jira.onap.org/browse/CPS-1312>`_ CPS(/NCMP) does not have version control + +Known Limitations, Issues and Workarounds +----------------------------------------- + +*System Limitations* + +For upgrading, CPS uses Liquibase for database upgrades. CPS currently only supports upgrading from Liquibase changelog 11 to Liquibase changelog 16. +This is from commit CPS-506: List all known modules and revision to CPS-1312: Default CMHandles to READY during upgrade or from ONAP release Honolulu to London. + +Version: 3.1.4 +============== + +Release Data +------------ + ++--------------------------------------+--------------------------------------------------------+ +| **CPS Project** | | +| | | ++--------------------------------------+--------------------------------------------------------+ +| **Docker images** | onap/cps-and-ncmp:3.1.4 | +| | | ++--------------------------------------+--------------------------------------------------------+ +| **Release designation** | 3.1.4 Kohn | +| | | ++--------------------------------------+--------------------------------------------------------+ +| **Release date** | 2022 October 5 | +| | | ++--------------------------------------+--------------------------------------------------------+ + +Bug Fixes +--------- + - `CPS-1265 <https://jira.onap.org/browse/CPS-1265>`_ Revision field should not be required (NotNull) on cps-ri YangResourceEntity + - `CPS-1294 <https://jira.onap.org/browse/CPS-1294>`_ Kafka communication fault caused cmHandle registration error + +Version: 3.1.3 +============== + +Release Data +------------ + ++--------------------------------------+--------------------------------------------------------+ +| **CPS Project** | | +| | | ++--------------------------------------+--------------------------------------------------------+ +| **Docker images** | onap/cps-and-ncmp:3.1.3 | +| | | ++--------------------------------------+--------------------------------------------------------+ +| **Release designation** | 3.1.3 Kohn | +| | | ++--------------------------------------+--------------------------------------------------------+ +| **Release date** | 2022 September 29 | +| | | ++--------------------------------------+--------------------------------------------------------+ + +Bug Fixes +--------- + - None + +Version: 3.1.2 +============== + +Release Data +------------ + ++--------------------------------------+--------------------------------------------------------+ +| **CPS Project** | | +| | | ++--------------------------------------+--------------------------------------------------------+ +| **Docker images** | onap/cps-and-ncmp:3.1.2 | +| | | ++--------------------------------------+--------------------------------------------------------+ +| **Release designation** | 3.1.2 Kohn | +| | | ++--------------------------------------+--------------------------------------------------------+ +| **Release date** | 2022 September 28 | +| | | ++--------------------------------------+--------------------------------------------------------+ + +Bug Fixes +--------- + - None Version: 3.1.1 ============== @@ -32,7 +143,7 @@ Release Data | **Release designation** | 3.1.1 Kohn | | | | +--------------------------------------+--------------------------------------------------------+ -| **Release date** | (yet to release) | +| **Release date** | 2022 September 28 | | | | +--------------------------------------+--------------------------------------------------------+ diff --git a/docs/schemas/ncmp-async-request-response-event-schema-v1.json b/docs/schemas/ncmp-async-request-response-event-schema-v1.json new file mode 100644 index 0000000000..51c2cf4d40 --- /dev/null +++ b/docs/schemas/ncmp-async-request-response-event-schema-v1.json @@ -0,0 +1,197 @@ +{ + "$schema": "https://json-schema.org/draft/2019-09/schema", + "$id": "urn:cps:org.onap.cps.ncmp.events:ncmp-async-request-response-event-schema:v1", + "$ref": "#/definitions/NcmpAsyncRequestResponseEvent", + "definitions": { + "NcmpAsyncRequestResponseEvent": { + "description": "The payload for CPS async request response event.", + "type": "object", + "properties": { + "eventId": { + "description": "The unique id identifying the event generated by DMI.", + "type": "string" + }, + "eventCorrelationId": { + "description": "The request id passed by NCMP.", + "type": "string" + }, + "eventTime": { + "description": "The time of the event. The expected format is 'yyyy-MM-dd'T'HH:mm:ss.SSSZ'.", + "type": "string" + }, + "eventTarget": { + "description": "The target of the event.", + "type": "string" + }, + "eventType": { + "description": "The type of the event.", + "type": "string" + }, + "eventSchema": { + "description": "The event schema for async request response events.", + "type": "string" + }, + "eventSchemaVersion": { + "description": "The event schema version for async request response events.", + "type": "string" + }, + "event": { + "$ref": "#/definitions/Event" + }, + "forwardedEvent": { + "$ref": "#/definitions/Forwarded-Event" + } + }, + "required": [ + "eventId", + "eventCorrelationId", + "eventTime", + "eventTarget", + "eventType", + "eventSchema", + "eventSchemaVersion" + ] + }, + "Forwarded-Event": { + "description": "The event content.", + "type": "object", + "properties": { + "eventId": { + "description": "The unique id identifying the event generated by DMI.", + "type": "string" + }, + "eventCorrelationId": { + "description": "The request id passed by NCMP.", + "type": "string" + }, + "eventTime": { + "description": "The time of the event. The expected format is 'yyyy-MM-dd'T'HH:mm:ss.SSSZ'.", + "type": "string" + }, + "eventTarget": { + "description": "The target of the event.", + "type": "string" + }, + "eventType": { + "description": "The type of the event.", + "type": "string" + }, + "eventSchema": { + "description": "The event schema for async request response events.", + "type": "string" + }, + "eventSchemaVersion": { + "description": "The event schema version for async request response events.", + "type": "string" + }, + "eventSource": { + "description": "The source of the event.", + "type": "string" + }, + "response-data-schema": { + "description": "The received schema of response data", + "type": "string" + }, + "response-status": { + "description": "The received status of the response.", + "type": "string" + }, + "response-code": { + "description": "The received code of the response.", + "type": "string" + }, + "forwardedEventData": { + "description": "The data payload", + "type": "object", + "properties": { + "forwardedEventPayload": { + "type": "object" + } + } + }, + "required": [ + "eventId", + "eventCorrelationId", + "eventTime", + "eventTarget", + "eventType", + "eventSchema", + "eventSchemaVersion", + "eventSource", + "response-data-schema", + "response-status", + "response-code", + "forwardedEventData" + ] + } + }, + "Event": { + "description": "The event content.", + "type": "object", + "properties": { + "eventId": { + "description": "The unique id identifying the event generated by DMI", + "type": "string" + }, + "eventCorrelationId": { + "description": "The request id passed by NCMP.", + "type": "string" + }, + "eventTime": { + "description": "The time of the event. The expected format is 'yyyy-MM-dd'T'HH:mm:ss.SSSZ'.", + "type": "string" + }, + "eventTarget": { + "description": "The target of the event.", + "type": "string" + }, + "eventType": { + "description": "The type of the event.", + "type": "string" + }, + "eventSchema": { + "description": "The event schema for async request response events.", + "type": "string" + }, + "eventSource": { + "description": "The source of the event.", + "type": "string" + }, + "response-data-schema": { + "description": "The received schema of response data", + "type": "string" + }, + "response-status": { + "description": "The received status of the response.", + "type": "string" + }, + "response-code": { + "description": "The received code of the response.", + "type": "string" + }, + "response-data": { + "description": "The data payload", + "type": "object", + "properties": { + "payload": { + "type": "object" + } + } + }, + "required": [ + "eventId", + "eventCorrelationId", + "eventTarget", + "eventTime", + "eventType", + "eventSchema", + "eventSource", + "response-data-schema", + "response-status", + "response-code", + "event-data" + ] + } + } + } +}
\ No newline at end of file diff --git a/jacoco-report/pom.xml b/jacoco-report/pom.xml index 1173bbd640..a78399872c 100644 --- a/jacoco-report/pom.xml +++ b/jacoco-report/pom.xml @@ -5,7 +5,7 @@ <parent> <groupId>org.onap.cps</groupId> <artifactId>cps-parent</artifactId> - <version>3.1.1-SNAPSHOT</version> + <version>3.1.5-SNAPSHOT</version> <relativePath>../cps-parent/pom.xml</relativePath> </parent> <modelVersion>4.0.0</modelVersion> @@ -32,7 +32,7 @@ <groupId>org.onap.cps</groupId>
<artifactId>cps-aggregator</artifactId>
- <version>3.1.1-SNAPSHOT</version>
+ <version>3.1.5-SNAPSHOT</version>
<packaging>pom</packaging>
<name>cps</name>
@@ -44,8 +44,8 @@ </organization>
<properties>
- <maven.deploy.skip>true</maven.deploy.skip>
- <maven.install.skip>true</maven.install.skip>
+ <maven.deploy.skip>false</maven.deploy.skip>
+ <maven.install.skip>false</maven.install.skip>
</properties>
<modules>
diff --git a/releases/3.1.1-container.yaml b/releases/3.1.1-container.yaml new file mode 100644 index 0000000000..ed8caae353 --- /dev/null +++ b/releases/3.1.1-container.yaml @@ -0,0 +1,8 @@ +distribution_type: container +container_release_tag: 3.1.1 +project: cps +log_dir: cps-maven-docker-stage-master/707/ +ref: c9ec915d7d16b88f53493c85928d463d070df472 +containers: + - name: 'cps-and-ncmp' + version: '3.1.1-20220928T083436Z' diff --git a/releases/3.1.1.yaml b/releases/3.1.1.yaml index 51c6b1d7ac..13b83e9d2d 100644 --- a/releases/3.1.1.yaml +++ b/releases/3.1.1.yaml @@ -1,4 +1,4 @@ distribution_type: maven -log_dir: cps-maven-stage-master/707/ +log_dir: cps-maven-stage-master/713/ project: cps version: 3.1.1 diff --git a/releases/3.1.2-container.yaml b/releases/3.1.2-container.yaml new file mode 100644 index 0000000000..21fdacdd31 --- /dev/null +++ b/releases/3.1.2-container.yaml @@ -0,0 +1,8 @@ +distribution_type: container +container_release_tag: 3.1.2 +project: cps +log_dir: cps-maven-docker-stage-master/708/ +ref: ef0ddfc3e80ad3c2d7fdd884f83c739bf3a80734 +containers: + - name: 'cps-and-ncmp' + version: '3.1.2-20220928T115509Z' diff --git a/releases/3.1.2.yaml b/releases/3.1.2.yaml new file mode 100644 index 0000000000..d4e6f42d16 --- /dev/null +++ b/releases/3.1.2.yaml @@ -0,0 +1,4 @@ +distribution_type: maven +log_dir: cps-maven-stage-master/714/ +project: cps +version: 3.1.2 diff --git a/releases/3.1.3-container.yaml b/releases/3.1.3-container.yaml new file mode 100644 index 0000000000..d814433b10 --- /dev/null +++ b/releases/3.1.3-container.yaml @@ -0,0 +1,8 @@ +distribution_type: container +container_release_tag: 3.1.3 +project: cps +log_dir: cps-maven-docker-stage-master/710/ +ref: 06736cb733a8bfa1a5c19b36ce26b0f7a394db31 +containers: + - name: 'cps-and-ncmp' + version: '3.1.3-20220929T153732Z' diff --git a/releases/3.1.3.yaml b/releases/3.1.3.yaml new file mode 100644 index 0000000000..7e34f08243 --- /dev/null +++ b/releases/3.1.3.yaml @@ -0,0 +1,4 @@ +distribution_type: maven +log_dir: cps-maven-stage-master/716/ +project: cps +version: 3.1.3
\ No newline at end of file diff --git a/releases/3.1.4-container.yaml b/releases/3.1.4-container.yaml new file mode 100644 index 0000000000..beb1df3753 --- /dev/null +++ b/releases/3.1.4-container.yaml @@ -0,0 +1,8 @@ +distribution_type: container +container_release_tag: 3.1.4 +project: cps +log_dir: cps-maven-docker-stage-master/716/ +ref: 52950bd82f680261458c082bd6d592fb4a14de12 +containers: + - name: 'cps-and-ncmp' + version: '3.1.4-20221004T160344Z' diff --git a/releases/3.1.4.yaml b/releases/3.1.4.yaml new file mode 100644 index 0000000000..96ee6d4153 --- /dev/null +++ b/releases/3.1.4.yaml @@ -0,0 +1,4 @@ +distribution_type: maven +log_dir: cps-maven-stage-master/722/ +project: cps +version: 3.1.4
\ No newline at end of file diff --git a/spotbugs/pom.xml b/spotbugs/pom.xml index 243144e2a5..c04f89f3e9 100644 --- a/spotbugs/pom.xml +++ b/spotbugs/pom.xml @@ -25,7 +25,7 @@ <modelVersion>4.0.0</modelVersion> <groupId>org.onap.cps</groupId> <artifactId>spotbugs</artifactId> - <version>3.1.1-SNAPSHOT</version> + <version>3.1.5-SNAPSHOT</version> <properties> <nexusproxy>https://nexus.onap.org</nexusproxy> diff --git a/version.properties b/version.properties index 833a042227..00839db8e5 100755 --- a/version.properties +++ b/version.properties @@ -22,7 +22,7 @@ major=3 minor=1 -patch=1 +patch=5 base_version=${major}.${minor}.${patch} |