cps.git
3 weeks agoUpdate data producer id and send LCM event 49/141849/3
mpriyank [Wed, 13 Aug 2025 16:39:06 +0000 (17:39 +0100)]
Update data producer id and send LCM event

- Logic updated for setting the data producer id
   * null to value is allowed
   * some-value to other-value allowed
   * other-value to null is not allowed and ignored
   * some-value to some-value is not allowed and ignored
- LCM event is raised only when the data producer identifier is updated
- added testware for the same

Issue-ID: CPS-2935
Change-Id: I0c194ed5da37affd3f82889520685bb9c1d4cdae
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
3 weeks agoDisabling NCMP CSIT execution 81/141881/2
mpriyank [Wed, 20 Aug 2025 22:05:27 +0000 (23:05 +0100)]
Disabling NCMP CSIT execution

- temporarily disabling the NCMP CSIT execution as they are unstable at
  the moment

Issue-ID: CPS-2959
Change-Id: Ic60adcdbad98899de0b6c56623717ccdc4f8fc37
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
3 weeks agoMerge "REST operations using Delta Report"
Priyank Maheshwari [Wed, 20 Aug 2025 15:02:30 +0000 (15:02 +0000)]
Merge "REST operations using Delta Report"

3 weeks agoREST operations using Delta Report 84/140584/33
Arpit Singh [Fri, 28 Mar 2025 13:24:30 +0000 (18:54 +0530)]
REST operations using Delta Report

- Feature that uses the delta report to perform REST operations.
- The code uses underlying CPS data java interface logic to perform the
  REST operations.
- The REST operations are executed based on the 'action' identified in the
  delta report.
- The supported operations are: create, delete and update.
- Fixed indentation error in CpsDataServiceImpl

Issue-ID: CPS-2614
Change-Id: Ic1c9f5d2320afd8e4fb49b638e6636291124ea75
Signed-off-by: Arpit Singh <AS00745003@techmahindra.com>
3 weeks agoMerge "Modify methods in CmSubscriptionPersistenceService"
Priyank Maheshwari [Tue, 19 Aug 2025 18:16:07 +0000 (18:16 +0000)]
Merge "Modify methods in CmSubscriptionPersistenceService"

3 weeks agoMerge "JEX expression parser"
Priyank Maheshwari [Tue, 19 Aug 2025 16:03:07 +0000 (16:03 +0000)]
Merge "JEX expression parser"

3 weeks agoJEX expression parser 82/141682/11
shikha0203 [Tue, 12 Aug 2025 11:17:37 +0000 (12:17 +0100)]
JEX expression parser

-Splits a multiline selector string into individual lines
-Resolves the nearest alternate ID from a single selector
-Returns a list of alternate IDs

Issue-ID: CPS-2892
Change-Id: I067c99c81d5ad8da9c582537e7fcf2d8d22e7dc9
Signed-off-by: shikha0203 <shivani.khare@est.tech>
3 weeks agoModify methods in CmSubscriptionPersistenceService 71/141671/6
emaclee [Fri, 8 Aug 2025 16:36:11 +0000 (17:36 +0100)]
Modify methods in CmSubscriptionPersistenceService

- existing methods of CmSubscriptionPersistenceService to fit the new cm subscription model
- unit tests updated, not used tests removed
- DmiCacheHandler, DmiCacheHandlerSpec, CmSubscriptionComparator, CmSubscriptionComparatorSpec was only modified to pass tests due to changes on persistence service methods - these classes will be changed as part of CPS-2166 development

Issue-ID: CPS-2919
Change-Id: Ic0e470a9993b8a9d7414e301a199564490d0a044
Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech>
3 weeks agoMerge "Knowledge Sharing: Groovy/Spock best practices refactoring"
Lee Anjella Macabuhay [Mon, 18 Aug 2025 10:25:23 +0000 (10:25 +0000)]
Merge "Knowledge Sharing: Groovy/Spock best practices refactoring"

3 weeks agoKnowledge Sharing: Groovy/Spock best practices refactoring 35/141835/4
ToineSiebelink [Thu, 14 Aug 2025 15:04:55 +0000 (16:04 +0100)]
Knowledge Sharing: Groovy/Spock best practices refactoring

This commit shows many bad (before)/good (after) practises with Spock/Groovy Unit test like
- Mocking behavior and checking invocation (don't do both normally)
- When to use the word 'some' or 'my' for test variables/strings
- Remove scenarios that only apply to helper classes i.e. no branching in object under test
- Groovy 'magic' instead of java code
- Correct use of GString
- Update descriptions to refer to current (helper) classes an not old ones
- Use of assert keyword
- Consistent check of status code using 3pp constants
- Use 1 line when it is not too long (I don't mind up to 100-120 characters but it is just personal preference)
- Use Static imports where it does not reduce readability

Issue-ID: CPS-2922
Change-Id: If3a803ba3138193fdb75aa0236f9b9875e09ff6c
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
4 weeks agoChore: Add dependabot config 12/141812/1
Kevin Sandi [Wed, 13 Aug 2025 17:57:54 +0000 (11:57 -0600)]
Chore: Add dependabot config

Issue-ID: CIMAN-33
Change-Id: I09a0df4e370c636ea8b26e85a5cdd00c8e5363d0
Signed-off-by: Kevin Sandi <ksandi@contractor.linuxfoundation.org>
4 weeks agoMerge "RTD update for CM stack use case"
Toine Siebelink [Wed, 13 Aug 2025 14:00:56 +0000 (14:00 +0000)]
Merge "RTD update for CM stack use case"

4 weeks agoChore: Add dependabot config 04/141704/1
Kevin Sandi [Wed, 13 Aug 2025 01:44:50 +0000 (19:44 -0600)]
Chore: Add dependabot config

Issue-ID: CIMAN-33
Change-Id: Ie682a0ba6b80dfa0c5f18a1141e95a3c113a7233
Signed-off-by: Kevin Sandi <ksandi@contractor.linuxfoundation.org>
4 weeks agoMerge "Update schema for NCMP to DMI on datajob subscription"
Priyank Maheshwari [Tue, 12 Aug 2025 11:09:48 +0000 (11:09 +0000)]
Merge "Update schema for NCMP to DMI on datajob subscription"

4 weeks agoRTD update for CM stack use case 60/141660/2
mpriyank [Thu, 7 Aug 2025 15:36:00 +0000 (16:36 +0100)]
RTD update for CM stack use case

- added support for operational datastore in CPS
- note to process the CM Data Notifications from ONAP DMI PLUGIN which
  is configured for data synchronization

Issue-ID: CPS-2918
Change-Id: I808681a1fd14f9d69085439cad15fa315d7ceadf
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
5 weeks agoUpdate schema for NCMP to DMI on datajob subscription 55/141655/2
emaclee [Thu, 7 Aug 2025 08:47:20 +0000 (09:47 +0100)]
Update schema for NCMP to DMI on datajob subscription

- based on agreed with E// outlined in https://lf-onap.atlassian.net/wiki/spaces/DW/pages/87984624/CPS-2166+Forwarding+CM+Data+Notification+to+Topic+Defined+in+Subscription#Schema-Definitions
- added target folder structure by adding 'from_to_destination'
  prefix on the new schema and existing datajob operation in
  event schema

Issue-ID: CPS-2920
Change-Id: I03a94ff01fc9bd85953fce2d6bb6757ca84a14e2
Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech>
5 weeks agoSplit the data sync request using module and root references 53/141653/4
mpriyank [Wed, 6 Aug 2025 12:48:07 +0000 (13:48 +0100)]
Split the data sync request using module and root references

- Introduced a method to get concatenated module and root node for a
  given cm handle(using already synched modules) to use options field
- The request is splitted as some devices dont support fetching the data
  using root url and the devices that support that can in turn return
  huge amount of data in one go.
- Updated the data sync logic to make multiple calls for the initial
  data sync
- The failing requests are ignored and the algorithm works on best
  effort basis
- Testware to support all the above use cases

Issue-ID: CPS-2758
Change-Id: I3d50ef8448705efdd004c6a1ee039e9691f14815
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
5 weeks agoMerge "Use new model on subscription model loader"
Priyank Maheshwari [Wed, 6 Aug 2025 08:23:20 +0000 (08:23 +0000)]
Merge "Use new model on subscription model loader"

5 weeks agoMerge "SONARQUBE ISSUES: 'equals' is deprecated"
Priyank Maheshwari [Tue, 5 Aug 2025 12:41:52 +0000 (12:41 +0000)]
Merge "SONARQUBE ISSUES: 'equals' is deprecated"

5 weeks agoUse new model on subscription model loader 50/141650/2
emaclee [Tue, 5 Aug 2025 09:34:10 +0000 (10:34 +0100)]
Use new model on subscription model loader

- remove integration test (notification related) for subscription as it is now invalid
  due to development
- modify unit tests with use of new model on onboarding
- onboard new model
- remove old model from repo

Issue-ID: CPS-2890
Change-Id: I47656abb45f8f8c55b1c9d60787510a41dc90f7f
Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech>
5 weeks agoMerge "New schema for creation/deletion datajob subscription event"
Priyank Maheshwari [Tue, 5 Aug 2025 08:52:37 +0000 (08:52 +0000)]
Merge "New schema for creation/deletion datajob subscription event"

5 weeks agoSONARQUBE ISSUES: 'equals' is deprecated 49/141649/1
emaclee [Mon, 4 Aug 2025 19:35:23 +0000 (20:35 +0100)]
SONARQUBE ISSUES: 'equals' is deprecated

- equals by StringUtils is deprecated (see https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/StringUtils.html#equals(java.lang.CharSequence,java.lang.CharSequence)
- replaced deprecated based on recommended (See https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/Strings.html#equals(java.lang.CharSequence,java.lang.CharSequence)
- modified import org.apache.logging.log4j.util.Strings to
  import org.apache.commons.lang3.StringUtils for use of
  .isNotBlank to avoid conflict

Issue-ID: CPS-475
Change-Id: I581f839fa48221c3a75e5b23c76ca8d8108adbbc
Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech>
6 weeks agoAllow get operation on the non-passthrough datastore 33/141633/3
mpriyank [Thu, 31 Jul 2025 11:50:48 +0000 (12:50 +0100)]
Allow get operation on the non-passthrough datastore

- Now that the data can be cached when the data sync is enabled , this
  patch allows to query that data using ncmp-passthrough-operational
  datastore
- Added testware to support the above feature
- Updated outstanding copyright from the last patch

Issue-ID: CPS-2912
Change-Id: I6b62c4b3e83b3cc1616e0dc353a4736f0815b50b
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
6 weeks agoBump CPS to 3.7.1 42/141642/3
egernug [Fri, 1 Aug 2025 12:55:17 +0000 (13:55 +0100)]
Bump CPS to 3.7.1

Issue-ID: CPS-2917

Change-Id: If98809f9aa3bdbc8dcf61a76a4e502ece448eadb
Signed-off-by: egernug <gerard.nugent@est.tech>
6 weeks agoAdded 3.7.0-container.yaml 40/141640/1
egernug [Fri, 1 Aug 2025 12:30:20 +0000 (13:30 +0100)]
Added 3.7.0-container.yaml

Issue-ID: CPS-2917

Change-Id: Iff2f30a313b28806d9f94761822f1d7c8ef706b8
Signed-off-by: egernug <gerard.nugent@est.tech>
6 weeks agoAdd maven stage yaml 3.7.0 39/141639/1
egernug [Fri, 1 Aug 2025 11:54:32 +0000 (12:54 +0100)]
Add maven stage yaml 3.7.0

Issue-ID: CPS-2917

Change-Id: I3ebf128fbdd4cab07c80d5e65a39ad06cfede703
Signed-off-by: egernug <gerard.nugent@est.tech>
6 weeks agoUpdate Release Notes for Release 3.7.0 36/141636/3
egernug [Fri, 1 Aug 2025 09:22:18 +0000 (10:22 +0100)]
Update Release Notes for Release 3.7.0

Issue-ID: CPS-2917

Change-Id: I31bd0627df8ccbf19fe8439c1b7a6b1cb30e4c9d
Signed-off-by: egernug <gerard.nugent@est.tech>
6 weeks agoMerge "Process Cm Avc Event in NCMP"
Lee Anjella Macabuhay [Thu, 31 Jul 2025 09:36:42 +0000 (09:36 +0000)]
Merge "Process Cm Avc Event in NCMP"

6 weeks agoProcess Cm Avc Event in NCMP 96/141596/9
mpriyank [Mon, 21 Jul 2025 11:21:46 +0000 (12:21 +0100)]
Process Cm Avc Event in NCMP

- process the cm avc event when the source system is set as ONAP DMI
  Plugin in the header
- handle the create , update , patch and delete operation to the CPS
  Cache.
- Testware to support the write operation
- Usage of the RestConf to Cps Path utility in this patch

Issue-ID: CPS-2777
Change-Id: I43233cf52f411a5d3cc20b03d0ef6e6e50399aa7
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
6 weeks agoIgnore SonarQube Deprecation Warnings 07/141607/2
ToineSiebelink [Wed, 30 Jul 2025 14:29:55 +0000 (15:29 +0100)]
Ignore SonarQube Deprecation Warnings

- Supressed warning for DeprecationHelper#mapOldConditionProperties
- Actual removal will be done later as part of CPS-2914

Issue-Id: CPS-2914
Change-Id: I3ca9a6f1754af5c34e7925ab76484aaceb482474
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
6 weeks agoNew schema for creation/deletion datajob subscription event 02/141602/1
emaclee [Wed, 30 Jul 2025 09:24:23 +0000 (10:24 +0100)]
New schema for creation/deletion datajob subscription event

- schema is based on analysis and proposal in https://lf-onap.atlassian.net/wiki/spaces/DW/pages/87984624/CPS-2166+Forwarding+CM+Data+Notification+to+Topic+Defined+in+Subscription#Comparison-Subscription-Legacy-Create-Event-and-R1-DataJob-Event

Issue-ID: CPS-2713
Change-Id: I8b9b674720b4b8fdf8cd2153f46e47a8d587e7a8
Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech>
6 weeks agoMerge "Replaced parameter includeCmHandlePropertiesInQuery by outputDmiProperties"
Toine Siebelink [Wed, 30 Jul 2025 09:31:48 +0000 (09:31 +0000)]
Merge "Replaced parameter includeCmHandlePropertiesInQuery by outputDmiProperties"

6 weeks agoUplift Springboot to version 3.5.4 97/141597/1
egernug [Tue, 29 Jul 2025 13:45:52 +0000 (14:45 +0100)]
Uplift Springboot to version 3.5.4

- Moved to Springboot 3.5.4 to eliminate vulnerability in netty

Issue-ID: CPS-2747

Change-Id: Id7d2592ccee8624f1ffcbfe77d7f09012e043610
Signed-off-by: egernug <gerard.nugent@est.tech>
6 weeks agoReplaced parameter includeCmHandlePropertiesInQuery by outputDmiProperties 93/141593/3
shikha0203 [Mon, 28 Jul 2025 14:54:04 +0000 (15:54 +0100)]
Replaced parameter includeCmHandlePropertiesInQuery by outputDmiProperties

Replaced includeCmHandlePropertiesInQuery query parameter in search CM  handle api by outputDmiProperties

Issue-ID: CPS-2908
Change-Id: I4c26ed66c7fbc2ddb58c0f36b6834d5ddb4c993f
Signed-off-by: shikha0203 <shivani.khare@est.tech>
6 weeks agoMerge "Remove old subscription documentation"
Toine Siebelink [Mon, 28 Jul 2025 12:58:44 +0000 (12:58 +0000)]
Merge "Remove old subscription documentation"

6 weeks agoRemove old subscription documentation 90/141590/2
emaclee [Mon, 28 Jul 2025 09:27:07 +0000 (10:27 +0100)]
Remove old subscription documentation

- removing old subscription documentation as part of new
  implementation of datajob subscriptions

Issue-ID: CPS-2910
Change-Id: I9eaca0ad685b8d8eb9c8ad0624eb248d09b55b1e
Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech>
6 weeks agoMerge "Utility to convert restconf style path to cps path"
Lee Anjella Macabuhay [Mon, 28 Jul 2025 12:42:58 +0000 (12:42 +0000)]
Merge "Utility to convert restconf style path to cps path"

6 weeks agoUtility to convert restconf style path to cps path 75/141575/5
mpriyank [Fri, 18 Jul 2025 13:38:15 +0000 (14:38 +0100)]
Utility to convert restconf style path to cps path

- resource-identifier in passthrough request has restconf style path for
  the devices
- when listening cm avc event on successfull write operation , ncmp has
  to update the cache, hence the path needs to be converted to cps path
  to reuse cps-core services
- added testware to support this
- actual usage of this utility is in the next patch
- for simplicity, utility supports just one key in the path

Issue-ID: CPS-2759
Change-Id: Id3b6e629d134abc0c6b21117f5f157da90248dee
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
6 weeks agoCPS local Helm charts 09/141509/11
mpriyank [Tue, 8 Jul 2025 16:28:45 +0000 (18:28 +0200)]
CPS local Helm charts

  - added helm chart
  - added required services (cps, dmi etc)
  - added headless service to access hazelcast service
  - added README

Issue-Id: CPS-2783
Change-Id: I11f0b07b80625a80b414490d630407a262495867
Signed-off-by: leventecsanyi <levente.csanyi@est.tech>
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
6 weeks agoMerge "Create new data job subscription model"
Priyank Maheshwari [Mon, 28 Jul 2025 09:17:50 +0000 (09:17 +0000)]
Merge "Create new data job subscription model"

7 weeks agoMerge "Make Groovy Performance Test Stable"
Lee Anjella Macabuhay [Wed, 23 Jul 2025 12:30:55 +0000 (12:30 +0000)]
Merge "Make Groovy Performance Test Stable"

7 weeks agoFix Vulnerabities 73/141573/3
egernug [Wed, 23 Jul 2025 09:21:26 +0000 (10:21 +0100)]
Fix Vulnerabities

- Upgraded commons-lang to 3.18.0

Issue-ID: CPS-2747

Change-Id: I138a6549da1858302500580a7dd09cd9150edd3a
Signed-off-by: egernug <gerard.nugent@est.tech>
7 weeks agoMerge "Part 3: Refactor CPS Delta code to utility class"
Toine Siebelink [Wed, 23 Jul 2025 08:32:20 +0000 (08:32 +0000)]
Merge "Part 3: Refactor CPS Delta code to utility class"

7 weeks agoMake Groovy Performance Test Stable 72/141572/1
ToineSiebelink [Wed, 23 Jul 2025 07:33:12 +0000 (08:33 +0100)]
Make Groovy Performance Test Stable

- Overload assert method to apply custom margin
- Increase margin to 3x (+200%) for tests
  Chosen based on last 2 failures and graph data

Issue-ID: CPS-2799
Change-Id: I5767d529ed86c6a57f2213639834fec3fb0be0b8
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
7 weeks agoMerge "SonarQube Violation: fields() deprecated"
Priyank Maheshwari [Tue, 22 Jul 2025 09:07:31 +0000 (09:07 +0000)]
Merge "SonarQube Violation: fields() deprecated"

7 weeks agoPart 3: Refactor CPS Delta code to utility class 24/141424/10
Arpit Singh [Thu, 3 Jul 2025 06:33:08 +0000 (12:03 +0530)]
Part 3: Refactor CPS Delta code to utility class

- Condensed Delta Report format refactored to a utils class

Issue-ID:CPS-2838
Change-Id: I0ffaf26701f9ab297ca66c5bd1c52dfeefff077e
Signed-off-by: Arpit Singh <AS00745003@techmahindra.com>
7 weeks agoMerge "Part 2: Refactor CPS Delta code to utility class"
Priyank Maheshwari [Mon, 21 Jul 2025 12:30:03 +0000 (12:30 +0000)]
Merge "Part 2: Refactor CPS Delta code to utility class"

7 weeks agotest RTD change to verify python and os upgrade 57/141557/1
mpriyank [Mon, 21 Jul 2025 11:27:43 +0000 (12:27 +0100)]
test RTD change to verify python and os upgrade

Issue-ID: CPS-2864
Change-Id: I9aee4bae0437c88b4837a0f2b4c2462761422897
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
7 weeks agoMerge "Upgrade OS, Python and Sphinx for RTD build Config"
Priyank Maheshwari [Mon, 21 Jul 2025 08:50:55 +0000 (08:50 +0000)]
Merge "Upgrade OS, Python and Sphinx for RTD build Config"

7 weeks agoUpgrade OS, Python and Sphinx for RTD build Config 36/141536/8
ToineSiebelink [Tue, 15 Jul 2025 16:05:28 +0000 (17:05 +0100)]
Upgrade OS, Python and Sphinx for RTD build Config

- Updated .readthedocs.yaml (build config) to use
OS: ubuntu-24.04
Python 3.12 (as this is what Ubunut-24 includes)
- tox.ini basepython to 3 (will use whatever release OS has)
- tox.ini Removed all python dependency constraints as they prevented using newer sphinx version)
- requirement-docs: Sphinx to version 8.2.0 (to work with python 3.12 or higher)
- conf.py add required extension and exclusion patterns for unused files

Issue-ID:CPS-2864
Change-Id: Ieba43ec84f1f1397b1c2bd2358b2dd65e2c7143f
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
8 weeks agoMerge "Create controller for ProvMnS interface on NCMP"
Priyank Maheshwari [Thu, 17 Jul 2025 09:53:14 +0000 (09:53 +0000)]
Merge "Create controller for ProvMnS interface on NCMP"

8 weeks agoPart 2: Refactor CPS Delta code to utility class 90/141290/12
Arpit Singh [Fri, 27 Jun 2025 13:05:27 +0000 (18:35 +0530)]
Part 2: Refactor CPS Delta code to utility class

- Refactoring code for original delta report format to a utility class

Issue-ID:CPS-2838
Change-Id: I071c6e191c0ed5b718bd6a0e19117b2c76db44d2
Signed-off-by: Arpit Singh <AS00745003@techmahindra.com>
8 weeks agoSonarQube Violation: fields() deprecated 41/141541/2
emaclee [Wed, 16 Jul 2025 13:34:10 +0000 (14:34 +0100)]
SonarQube Violation: fields() deprecated

- change use of fields() to properties() as documented https://www.javadoc.io/doc/com.fasterxml.jackson.core/jackson-databind/latest/com/fasterxml/jackson/databind/JsonNode.html#fields--

Issue-ID: CPS-475
Change-Id: I17c9d08c3b753103cfe0a07addf175df59c9a082
Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech>
8 weeks agoMerge "Refactor K6 test script to use template based code generation"
Lee Anjella Macabuhay [Wed, 16 Jul 2025 16:08:35 +0000 (16:08 +0000)]
Merge "Refactor K6 test script to use template based code generation"

8 weeks agoMerge "Upgrade SDNC image"
Toine Siebelink [Wed, 16 Jul 2025 14:49:16 +0000 (14:49 +0000)]
Merge "Upgrade SDNC image"

8 weeks agoCreate new data job subscription model 40/141540/1
emaclee [Wed, 16 Jul 2025 13:12:14 +0000 (14:12 +0100)]
Create new data job subscription model

Issue-ID: CPS-2890
Change-Id: I9ee477b8d90c5f7cf69439de9b9438dd5947fedc
Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech>
8 weeks agoRefactor K6 test script to use template based code generation 75/141475/8
sourabh_sourabh [Mon, 7 Jul 2025 12:40:51 +0000 (13:40 +0100)]
Refactor K6 test script to use template based code generation

- Introduced templates for kpi config and scenario config.
- Used these templates to generate thresholds and trends.

Issue-ID: CPS-2867
Change-Id: Ia6b6627950ca61c602eef34a08b87e5ab2e9d3c7
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
8 weeks agoMerge "Part 1: Refactor CPS Delta code to utility class"
Priyank Maheshwari [Tue, 15 Jul 2025 13:00:42 +0000 (13:00 +0000)]
Merge "Part 1: Refactor CPS Delta code to utility class"

8 weeks agoUpgrade SDNC image 57/141257/6
mpriyank [Thu, 12 Jun 2025 11:05:47 +0000 (12:05 +0100)]
Upgrade SDNC image

- upgrade SDNC image from 2.2.3 to 3.0.2
- upgraded SDNC image doesnt have support of application/yang.patch+json
  so converted the request to equivalent application/json patch which is
  supported
- updates to healthcheck url and node mount url as per the upgraded
  version

Issue-ID: CPS-2849
Change-Id: Ia7c5f1a99955c61d5fd07b8f0a40293b40a4ffed
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
8 weeks agoCreate controller for ProvMnS interface on NCMP 30/141530/3
seanbeirne [Tue, 8 Jul 2025 08:55:56 +0000 (09:55 +0100)]
Create controller for ProvMnS interface on NCMP

- New endpoints return 501 Not Implemented. Full implementation to be
  completed in later patch
- Parameter descriptions pulled from 3GPP documentation (ref to wiki)
- TODO: implement southbound interface forwarding in NCMP

Issue-ID: CPS-2702
Change-Id: I38e1c518e166991ee1f78858edbcbea63ba744cc
Signed-off-by: seanbeirne <sean.beirne@est.tech>
8 weeks agoUpdate CM Handle API Query Performance Test Title and Expectation 31/141531/1
ToineSiebelink [Tue, 15 Jul 2025 07:56:58 +0000 (08:56 +0100)]
Update CM Handle API Query Performance Test Title and Expectation

Issue-ID: CPS-2840
Change-Id: Ia815bdbb8931fff7aba8cb2d8036d688e300c86a
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
2 months agoPart 1: Refactor CPS Delta code to utility class 88/141288/11
Arpit Singh [Thu, 26 Jun 2025 14:47:11 +0000 (20:17 +0530)]
Part 1: Refactor CPS Delta code to utility class

 - Refactoring Delta code to separate utility class for a more granular
   and manageble code.
 - Patch 1 refactors code for 'update' action as the code is shared
   between old and new delta report formats.

Issue-ID: CPS-2838
Change-Id: I74425817f1b21a1b369986f65f12dba8a501f3ea
Signed-off-by: Arpit Singh <AS00745003@techmahindra.com>
2 months agoMerge "Fix: Update OpenSSF Scorecard to RelEng reusable"
Toine Siebelink [Wed, 9 Jul 2025 07:35:52 +0000 (07:35 +0000)]
Merge "Fix: Update OpenSSF Scorecard to RelEng reusable"

2 months agoFix: Update OpenSSF Scorecard to RelEng reusable 01/141501/1
Matthew Watkins [Tue, 8 Jul 2025 21:14:07 +0000 (22:14 +0100)]
Fix: Update OpenSSF Scorecard to RelEng reusable

Change-Id: I99dbf9a6f6f439ada445d96ae3a63fdb4237cef5
Signed-off-by: Matthew Watkins <mwatkins@linuxfoundation.org>
2 months agoRevert RTD (docs) tooling to Python 3.10, Sphinx 4.2.0 95/141495/1
ToineSiebelink [Tue, 8 Jul 2025 14:22:26 +0000 (15:22 +0100)]
Revert RTD (docs) tooling to Python 3.10, Sphinx 4.2.0

- Also restored dependency constraints
- Temporary, will request LNF IT to support new toolchain

Issue-ID: CPS-2864
Change-Id: Iacc5a4366356ea0914de32166a219ddf5b2391a3
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
2 months agoUpdate RTD Cm Handle Queries, Upgrade Sphinx build tools 79/141479/7
ToineSiebelink [Tue, 8 Jul 2025 07:07:08 +0000 (08:07 +0100)]
Update RTD Cm Handle Queries, Upgrade Sphinx build tools

- Combined all cm handle query documentation into 1 page (for both interfaces) because of overlap
- Upgraded basepython to 3.12.3
- Upgraded sphinx to version 8.2.0 (to work with python 3.12.3
- Removed all python dependency constraints as the prevented using newer sphinx version)

Issue-ID: CPS-2864
Change-Id: Ib0f006fded8ac8877befb6cc00046f3b13f359fa
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
2 months agoMerge "Fix endurance failures"
Toine Siebelink [Tue, 8 Jul 2025 11:00:35 +0000 (11:00 +0000)]
Merge "Fix endurance failures"

2 months agoMerge "Uplift Springboot to 3.5.3"
Toine Siebelink [Tue, 8 Jul 2025 10:48:15 +0000 (10:48 +0000)]
Merge "Uplift Springboot to 3.5.3"

2 months agoFix endurance failures 77/141477/2
halil.cakal [Mon, 7 Jul 2025 11:03:06 +0000 (12:03 +0100)]
Fix endurance failures

- endurance test failed since it exited with 'Unsucessful' termination
  because teardown.sh  was not able to remove CPS images (cps-and-nmcp,
policy-executor-stub). The tag 'latest' was used for both pipelines at
the same time: Regular KPI and Endurance
- teardown algorithm changed: it only remove cps images having 'Snapshot' tag.
- dmi-stub removed from the image list since it should always use the
  Snapshot version in the deployment!

Issue-ID: CPS-2870

Change-Id: I1a7d6dbf717e2686c70d845e6f44c7efb1171dae
Signed-off-by: halil.cakal <halil.cakal@est.tech>
2 months agoUplift Springboot to 3.5.3 76/141476/2
egernug [Mon, 7 Jul 2025 13:58:57 +0000 (14:58 +0100)]
Uplift Springboot to 3.5.3

-Uplifted Springboot to 3.5.3
-Uplifted JAckson to 2.19.1

Issue-ID: CPS-2871

Change-Id: If4b5e53ebaa1ef966b00cd94e2c1dc808e61ce25
Signed-off-by: egernug <gerard.nugent@est.tech>
2 months agoClearly separate North- and Southbound interface in Postman collection 74/141474/3
ToineSiebelink [Mon, 7 Jul 2025 11:07:56 +0000 (12:07 +0100)]
Clearly separate North- and Southbound interface in Postman collection

- Move relevant test into new North- and Southbound subfolders
- Add more Cm Handle (id) Query examples
- Cleaned up example names (more concise and consistent)

Issue-ID: CPS-2864
Change-Id: I73e67d8f0d9e6f8383f2a33bd4ec1b21f05c0151
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
2 months agoAdd Groovy Perf. Tests CM Handle Query REST API 71/141471/2
ToineSiebelink [Mon, 7 Jul 2025 07:49:32 +0000 (08:49 +0100)]
Add Groovy Perf. Tests CM Handle Query REST API

Issue-ID:CPS-2840
Change-Id: I941fe2e45840b2d49ef9cd33343c954ebb218f3e
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
2 months agoUpdate documentation 73/141473/1
halil.cakal [Mon, 7 Jul 2025 09:44:06 +0000 (10:44 +0100)]
Update documentation

- after merging commit for clean-up, documentation should be updated to
  reflect docker-compose.yml changes

Issue-ID: CPS-2861

Change-Id: Ia29777a252cd79e5d038ef45fbc8923e46c01e01
Signed-off-by: halil.cakal <halil.cakal@est.tech>
2 months agoClean up setup and teardown processes for k6 tests 97/141397/9
halil.cakal [Thu, 26 Jun 2025 13:37:49 +0000 (14:37 +0100)]
Clean up setup and teardown processes for k6 tests

- rename cps-base.yml to docker-compose.yml to use minimum
  docker-compose commands efficiently
- rename confusing file names:
  - run-k6-tests.sh to k6-main.sh
  - run-all-tests.sh to execute-k6-scenarios.sh
  - ncmp-test-runner.js to scenarios-config.js
- cleanup teardown.sh
  - not only endurance but also kpi should remove all ONAP docker images
    since setup function always builds them!
  - Don't remove any other images (they don't belong ONAP) because it
    bring extra pulling time during the setup, and make the pipeline
slower.
  - combine relevant methods into one
- add cm avc event and v3 data node get metrics to metrics.csv file to
  prevent them commit always
- add missing import for crypto

Issue-ID: CPS-2861

Change-Id: If3d5cc8e33e5a5baa34834aaa178be7803dd5f7d
Signed-off-by: halil.cakal <halil.cakal@est.tech>
2 months agoMerge "Refactor WriteSubJobSpec to make use of test REST endpoint of write job"
Lee Anjella Macabuhay [Thu, 26 Jun 2025 09:06:23 +0000 (09:06 +0000)]
Merge "Refactor WriteSubJobSpec to make use of test REST endpoint of write job"

2 months agoFix validation northbound cm handle searches 85/141385/2
ToineSiebelink [Wed, 25 Jun 2025 12:22:38 +0000 (13:22 +0100)]
Fix validation northbound cm handle searches

- Renamed related methods and Enum using terms north (client facing) and southbound (dmi) for more clarity
- Northbound Cm Handle search was using the wrong Enum for validation (this caused the issue)
- Grouped and ordered renamed methods in facade impl
- Enums also had the wrong values: unsupported values in one and missing values in the other
  (southbound can/should support all possible queries, no reason not too)
TODO (separate subtasks and commits)
- Update RTD documentation to properly describe options in each ifc
- Update Postman collection to have cleared separation between north and southbound interfaces

Issue-ID: CPS-2864
Change-Id: I6523b368e504b5e99dde794e7e716193d2cadf23
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
2 months agoMerge "Add dm-service-name cm-handle searches to integration tests"
Sourabh Sourabh [Wed, 25 Jun 2025 13:18:25 +0000 (13:18 +0000)]
Merge "Add dm-service-name cm-handle searches to  integration tests"

2 months agoMerge "Refactor: Improve PolicyExecutor WebClient error logging"
Toine Siebelink [Wed, 25 Jun 2025 12:56:33 +0000 (12:56 +0000)]
Merge "Refactor: Improve PolicyExecutor WebClient error logging"

2 months agoRefactor WriteSubJobSpec to make use of test REST endpoint of write job 40/141340/4
sourabh_sourabh [Wed, 18 Jun 2025 15:43:38 +0000 (16:43 +0100)]
Refactor WriteSubJobSpec to make use of test REST endpoint of write job

- Replaced internal service-layer test with REST-based integration test for writeDataJob

Change-Id: Ia999e8062452587432e1d6e790c942da32343039
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
Issue-ID: CPS-2833

2 months agoAdd dm-service-name cm-handle searches to integration tests 73/141373/1
ToineSiebelink [Tue, 24 Jun 2025 15:50:01 +0000 (16:50 +0100)]
Add dm-service-name cm-handle searches to  integration tests

- Split cm handle search tests in North- and Southbound test classes
- Added test variations with and without (additional) cm handle properties
- Too many functional NCMP test: grouped them in folder by feature names
  (semi-automatically updated copyright to all moved files even if not strictly necessary
- Reformatted and cleaned up (descriptions) northbound tests
- Minor reformatting of production code
- Increase margin on performance timer accuracy test (unrelated but caused test to fail sometimes)

Issue-ID:CPS-1872

Change-Id: I3bbf3b2b6b4301bbed0eb72d76ec7125e89f0217
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
2 months agoRemove private properties from the response whem the value is null 70/141370/5
leventecsanyi [Tue, 24 Jun 2025 07:33:11 +0000 (08:33 +0100)]
Remove private properties from the response whem the value is null

- Fixed openapi and unit test

Issue-ID:CPS-1872
Change-Id: I6c4465fd79249861814a56c6fb02e4d5cf854928
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
Signed-off-by: leventecsanyi <levente.csanyi@est.tech>
2 months agoRefactor: Improve PolicyExecutor WebClient error logging 62/141362/5
sourabh_sourabh [Fri, 20 Jun 2025 14:31:27 +0000 (15:31 +0100)]
Refactor: Improve PolicyExecutor WebClient error logging

- Improved logging and ensured consistency with processFallbackResponse().

Issue-ID: CPS-2859
Change-Id: Ia74226e0aab79bc0542eff6869ccbcbd3995276d
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
2 months agoMerge "Unify dmi/private/additional/cmhandle properties naming to additional properties"
Sourabh Sourabh [Mon, 23 Jun 2025 15:24:50 +0000 (15:24 +0000)]
Merge "Unify dmi/private/additional/cmhandle properties naming to additional properties"

2 months agoUnify dmi/private/additional/cmhandle properties naming to additional 13/141313/4
seanbeirne [Tue, 17 Jun 2025 10:58:21 +0000 (11:58 +0100)]
Unify dmi/private/additional/cmhandle properties naming to additional
properties

Issue-ID: CPS-2855
Change-Id: Iba5923ed7e1dd454ef1657b6b8dc41c35d74f9b7
Signed-off-by: seanbeirne <sean.beirne@est.tech>
2 months agoMerge "Fix vulnerabilities"
Toine Siebelink [Mon, 23 Jun 2025 09:24:47 +0000 (09:24 +0000)]
Merge "Fix vulnerabilities"

2 months agoFix K6 KPI Legacy Batch Reporting issues II 25/141325/3
ToineSiebelink [Tue, 17 Jun 2025 08:09:22 +0000 (09:09 +0100)]
Fix K6 KPI Legacy Batch Reporting issues II

- Changed legacy batch consume to ran once per second (constant-arrival-rate) rather then only 1 big loop
- Updated k6 install to version 1.0.0 ! (old version cause most of the issue this patch took so long)
- Removed import of crypto as it is now part of k6 standard install
- No more checks on total messages, just recording message consumed every second
- Fixed 'timeout' configuration parameter, it is 'maxWait' !
- Fixed some incorrect casing on variables
- Added (now debug level) logging for troubleshooting produce/consume legacy batch events
- Improved name of config parameter: containerUpTime to containerCoolDownTime
- Reduce cool down time for kpi to 10s (its really only needed for endurance)
- Improved several variable names (consistency!)
- Reduced scope of data be passed on (to what is used) e.g. "data.metrics" instead of "data"
- Some formatting changes
TODO remove small test config

Issue-ID: CPS-2716
Change-Id: If95645f3eb90ff035a1add07b1e2117b7f944317
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
2 months agoFix vulnerabilities 47/141347/1
egernug [Fri, 20 Jun 2025 11:31:58 +0000 (12:31 +0100)]
Fix vulnerabilities

-Upgraded postgres to 42.7.7
-Upgraded springboot to 3.4.7
-Upgraded httpclient to 5.4.4

Issue-ID: CPS-89

Change-Id: I26c967eb305335fe7c36924122c28369d786503f
Signed-off-by: egernug <gerard.nugent@est.tech>
2 months agoEnsure teardown.sh is alwasy executed 35/141335/2
halil.cakal [Wed, 18 Jun 2025 13:39:38 +0000 (14:39 +0100)]
Ensure teardown.sh is alwasy executed

- Currently, on_exit() is advised to run by only 'EXIT' signal that is
  for gracefull termination
- Thus, on_exit() function might not run in cases where job terminates
  abruptly
- To guarantee on_exit() alwasy being called, then add other common
  termination signals: SIGINT, SIGTERM, and SIGQUIT
- This will allow the trap command to catch these signals and execute
  on_exit() before it terminates.

Definition of the signals:
- SIGINT: Interrupt signal
- SIGTERM: Termination signal, a generic signal used to request a
  process to terminate.
- SIGQUIT: Quit signal

Issue-ID: CPS-2821

Change-Id: I96e5d3d42fb26d5dbad75df63a23419914c44fa5
Signed-off-by: halil.cakal <halil.cakal@est.tech>
2 months agoMerge "Change DmiProperties class to DmiServiceAuthenicationProperties"
Toine Siebelink [Wed, 18 Jun 2025 13:05:27 +0000 (13:05 +0000)]
Merge "Change DmiProperties class to DmiServiceAuthenicationProperties"

2 months agoMinor improvements based on findings in PoC 11/141311/2
seanbeirne [Mon, 16 Jun 2025 09:13:29 +0000 (10:13 +0100)]
Minor improvements based on findings in PoC

Issue-ID: CPS-2840
Change-Id: I1aa414f98a432bb7cc0b2a1942694576971bbfb7
Signed-off-by: seanbeirne <sean.beirne@est.tech>
2 months agoChange DmiProperties class to DmiServiceAuthenicationProperties 15/141315/1
seanbeirne [Tue, 17 Jun 2025 12:45:30 +0000 (13:45 +0100)]
Change DmiProperties class to DmiServiceAuthenicationProperties

Issue-ID: CPS-2855
Change-Id: Iada453d996ca2ff27cdfa91c517175f3842393a3
Signed-off-by: seanbeirne <sean.beirne@est.tech>
3 months agoFix shell compatibility issue in run-all-tests.sh for endurance and kpi profile 85/141185/9
sourabh_sourabh [Tue, 10 Jun 2025 16:19:35 +0000 (17:19 +0100)]
Fix shell compatibility issue in run-all-tests.sh for endurance and kpi profile

- Added proper Bash shebang (`#!/bin/bash`) to ensure correct shell execution.
- Replaced Bash-specific arithmetic syntax `((...))` with POSIX-compliant `$((...))`.
- Fixed syntax error in `case` statement caused by unsupported token in `sh`.

Issue-ID: CPS-2844
Change-Id: Iaf8e225388f0e11223bed722fde72be5bf25bb0b
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
3 months agoMerge "Feature(setup): add Docker image digest verification before container startup"
Priyank Maheshwari [Fri, 13 Jun 2025 10:07:37 +0000 (10:07 +0000)]
Merge "Feature(setup): add Docker image digest verification before container startup"

3 months agoMerge "Improve naming conventions for RestOutputPublicCmHandleProperties"
Priyank Maheshwari [Thu, 12 Jun 2025 14:32:24 +0000 (14:32 +0000)]
Merge "Improve naming conventions for RestOutputPublicCmHandleProperties"

3 months agoFeature(setup): add Docker image digest verification before container startup 46/141246/2
sourabh_sourabh [Fri, 6 Jun 2025 16:31:16 +0000 (17:31 +0100)]
Feature(setup): add Docker image digest verification before container startup

- Integrated image validation into setup.sh using
  verify-docker-image-digests.sh
- Pre-checks Docker image digests before running docker-compose
- Logs detailed pull diagnostics, fallback to local images if pull fails

Issue-ID: CPS-2837
Change-Id: Iec5fb12091dcac853031fa8d083c51792f240eb4
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
3 months agoUpdate DMI demo stub version and container image configuration 43/141243/3
sourabh_sourabh [Wed, 11 Jun 2025 09:33:17 +0000 (10:33 +0100)]
Update DMI demo stub version and container image configuration

- Updated the DMI_DEMO_STUB_VERSION to `1.8.0-SNAPSHOT` in `.env` and `test.properties`.
- Modified `ncmp-dmi-plugin-demo-and-csit-stub` Docker Compose service to reference:
    - Custom container name using `${NCMP_DMI_PLUGIN_DEMO_AND_CSIT_STUB_CONTAINER_NAME}`.
    - Image from `${DOCKER_REPO}/onap/dmi-stub:${DMI_DEMO_STUB_VERSION}`.
- Ensures consistent version control and improved flexibility in image source and container naming.

Issue-ID: CPS-2837
Change-Id: Ic2951dee646b900294e019a4fee021bf5d875b01
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
3 months agoMerge "Optimize healthcheck parameters for dbpostgres"
Toine Siebelink [Thu, 12 Jun 2025 11:08:04 +0000 (11:08 +0000)]
Merge "Optimize healthcheck parameters for dbpostgres"

3 months agoImprove naming conventions for RestOutputPublicCmHandleProperties 56/141256/1
leventecsanyi [Thu, 12 Jun 2025 09:36:35 +0000 (11:36 +0200)]
Improve naming conventions for RestOutputPublicCmHandleProperties

  - renamed methods and classes

Issue-Id: CPS-2834
Change-Id: Ia54dd98ddcfdef0a1c1b9152e1a76c790fbda8b8
Signed-off-by: leventecsanyi <levente.csanyi@est.tech>
3 months agoOptimize healthcheck parameters for dbpostgres 83/141183/6
halil.cakal [Tue, 10 Jun 2025 12:27:40 +0000 (13:27 +0100)]
Optimize healthcheck parameters for dbpostgres

- provide db name and user to pg_isready in order to remove logs: FATAL:
  role "root" does not exist
- optimize the healthcheck parameters

Issue-ID: CPS-2694

Change-Id: I1aa6330909e3e4a1a0c0b486b2cd3603b743472c
Signed-off-by: halil.cakal <halil.cakal@est.tech>
3 months agoMerge "Part-2: Grouping of Data Nodes in Delta Report"
Priyank Maheshwari [Wed, 11 Jun 2025 11:09:02 +0000 (11:09 +0000)]
Merge "Part-2: Grouping of Data Nodes in Delta Report"