aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--checkstyle/pom.xml2
-rw-r--r--docs/development/devtools/smoke/clamp-ac-participant-protocol-smoke.rst6
-rw-r--r--docs/development/devtools/smoke/files/api-application.yaml23
-rw-r--r--docs/development/devtools/smoke/files/docker-compose-policy.yaml61
-rw-r--r--docs/development/devtools/smoke/files/pap-application.yaml91
-rw-r--r--docs/development/devtools/smoke/files/participant-policy-application.yaml41
-rw-r--r--docs/development/devtools/smoke/json/acm-instantiation.json4
-rw-r--r--docs/development/devtools/smoke/json/instantiation_pptnt_smoke.json1
-rw-r--r--docs/development/devtools/smoke/policy-participant-smoke.rst581
-rw-r--r--docs/development/devtools/testing/s3p/distribution-s3p-results/performance-monitor.pngbin199317 -> 173091 bytes
-rw-r--r--docs/development/devtools/testing/s3p/distribution-s3p-results/performance-statistics.pngbin79928 -> 56736 bytes
-rw-r--r--docs/development/devtools/testing/s3p/distribution-s3p-results/performance-threads.pngbin163004 -> 120014 bytes
-rw-r--r--docs/development/devtools/testing/s3p/distribution-s3p-results/performance-threshold.pngbin71656 -> 184094 bytes
-rw-r--r--docs/development/devtools/testing/s3p/distribution-s3p-results/stability-monitor.pngbin126910 -> 93084 bytes
-rw-r--r--docs/development/devtools/testing/s3p/distribution-s3p-results/stability-statistics.pngbin54210 -> 56211 bytes
-rw-r--r--docs/development/devtools/testing/s3p/distribution-s3p-results/stability-threads.pngbin167982 -> 124682 bytes
-rw-r--r--docs/development/devtools/testing/s3p/distribution-s3p-results/stability-threshold.pngbin72322 -> 202685 bytes
-rw-r--r--docs/development/devtools/testing/s3p/pap-s3p-results/pap_performance_jmeter_results.pngbin238867 -> 83914 bytes
-rw-r--r--docs/development/devtools/testing/s3p/pap-s3p-results/pap_stability_jmeter_results.pngbin285324 -> 272805 bytes
-rw-r--r--docs/development/devtools/testing/s3p/pap-s3p-results/pap_stats_after_72h.pngbin14816 -> 14546 bytes
-rw-r--r--docs/development/devtools/testing/s3p/pap-s3p-results/pap_stats_before_72h.pngbin5398 -> 5186 bytes
-rw-r--r--docs/development/devtools/testing/s3p/pap-s3p-results/pap_stats_during_72h.pngbin5613 -> 5182 bytes
-rw-r--r--docs/development/devtools/testing/s3p/pap-s3p.rst4
-rw-r--r--docs/pap/notification/kafka-pap-notif.json (renamed from docs/pap/notification/dmaap-pap-notif.json)0
-rw-r--r--docs/pap/pap.rst52
-rw-r--r--docs/pap/response/pdp-statistics-pap-resp.json45
-rw-r--r--docs/pap/response/statistics-pap-resp.json11
-rw-r--r--docs/system-attributes/policy-db-migrator.rst43
-rw-r--r--integration/pom.xml6
-rw-r--r--integration/src/main/resources/release/14.0.0-ONAP_pf_release_data.csv14
-rw-r--r--integration/src/main/resources/release/pf_release_data.csv26
-rwxr-xr-xintegration/src/main/scripts/release/updateRefs.sh6
-rw-r--r--pom.xml2
-rw-r--r--releases/4.1.3.yaml4
-rw-r--r--releases/4.1.4.yaml4
-rw-r--r--resources/pom.xml2
-rw-r--r--version.properties6
37 files changed, 629 insertions, 406 deletions
diff --git a/checkstyle/pom.xml b/checkstyle/pom.xml
index 313e4272..d2518ee0 100644
--- a/checkstyle/pom.xml
+++ b/checkstyle/pom.xml
@@ -23,7 +23,7 @@
<parent>
<groupId>org.onap.policy.parent</groupId>
<artifactId>policy-parent</artifactId>
- <version>4.1.3-SNAPSHOT</version>
+ <version>5.0.0-SNAPSHOT</version>
</parent>
<artifactId>checkstyle</artifactId>
<name>checkstyle</name>
diff --git a/docs/development/devtools/smoke/clamp-ac-participant-protocol-smoke.rst b/docs/development/devtools/smoke/clamp-ac-participant-protocol-smoke.rst
index 52275be5..95a27ee7 100644
--- a/docs/development/devtools/smoke/clamp-ac-participant-protocol-smoke.rst
+++ b/docs/development/devtools/smoke/clamp-ac-participant-protocol-smoke.rst
@@ -23,9 +23,9 @@ Linux user - although the majority of the steps show will be exactly the same in
2.1 Prerequisites
=================
-- Java 11
+- Java 17
- Docker
-- Maven 3
+- Maven 3.9
- Git
- Refer to this guide for basic environment setup `Setting up dev environment <https://wiki.onap.org/display/DW/Setting+Up+Your+Development+Environment>`_
@@ -34,7 +34,7 @@ Linux user - although the majority of the steps show will be exactly the same in
- Automation Composition runtime component docker image is started and running.
- Participant docker images policy-clamp-ac-pf-ppnt, policy-clamp-ac-http-ppnt, policy-clamp-ac-k8s-ppnt are started and running.
-- Dmaap simulator for communication between components.
+- Kafka/Zookeeper for communication between components.
- mariadb docker container for policy and clampacm database.
- policy-api for communication between policy participant and policy-framework
diff --git a/docs/development/devtools/smoke/files/api-application.yaml b/docs/development/devtools/smoke/files/api-application.yaml
new file mode 100644
index 00000000..39f1de5d
--- /dev/null
+++ b/docs/development/devtools/smoke/files/api-application.yaml
@@ -0,0 +1,23 @@
+spring:
+ profiles:
+ active: default
+ security.user:
+ name: policyadmin
+ password: zb!XztG34
+ mvc.converters.preferred-json-mapper: gson
+ datasource:
+ url: jdbc:mariadb://localhost:3306/policyadmin
+ driverClassName: org.mariadb.jdbc.Driver
+ username: policy_user
+ password: policy_user
+ jpa:
+ hibernate:
+ ddl-auto: none
+ naming:
+ physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
+ implicit-strategy: org.onap.policy.common.spring.utils.CustomImplicitNamingStrategy
+
+server:
+ port: 6968
+ servlet:
+ context-path: /policy/api/v1
diff --git a/docs/development/devtools/smoke/files/docker-compose-policy.yaml b/docs/development/devtools/smoke/files/docker-compose-policy.yaml
new file mode 100644
index 00000000..cdb50ebb
--- /dev/null
+++ b/docs/development/devtools/smoke/files/docker-compose-policy.yaml
@@ -0,0 +1,61 @@
+services:
+ mariadb:
+ image: mariadb:10.10.2
+ command: ['mysqld', '--lower_case_table_names=1']
+ volumes:
+ - type: bind
+ source: ./mariadb.sql
+ target: /docker-entrypoint-initdb.d/data.sql
+ environment:
+ - MYSQL_ROOT_PASSWORD=my-secret-pw
+ ports:
+ - "3306:3306"
+
+ policy-db-migrator:
+ image: nexus3.onap.org:10001/onap/policy-db-migrator:3.1.3-SNAPSHOT
+ container_name: policy-db-migrator
+ hostname: policy-db-migrator
+ depends_on:
+ - mariadb
+ expose:
+ - 6824
+ environment:
+ SQL_DB: policyadmin
+ SQL_HOST: mariadb
+ MYSQL_ROOT_PASSWORD: my-secret-pw
+ MYSQL_USER: policy_user
+ MYSQL_PASSWORD: policy_user
+ MYSQL_CMD: mysql
+ volumes:
+ - ./init.sh:/opt/app/policy/bin/db_migrator_policy_init.sh:ro
+ - ./wait_for_port.sh:/opt/app/policy/bin/wait_for_port.sh:ro
+ entrypoint: /opt/app/policy/bin/wait_for_port.sh
+ command: [
+ '-c',
+ '/opt/app/policy/bin/db_migrator_policy_init.sh',
+ 'mariadb', '3306'
+ ]
+
+ zookeeper:
+ image: confluentinc/cp-zookeeper:latest
+ environment:
+ ZOOKEEPER_CLIENT_PORT: 2181
+ ZOOKEEPER_TICK_TIME: 2000
+ ports:
+ - 2181:2181
+
+ kafka:
+ image: confluentinc/cp-kafka:latest
+ container_name: kafka
+ depends_on:
+ - zookeeper
+ ports:
+ - 29092:29092
+ - 9092:9092
+ environment:
+ KAFKA_BROKER_ID: 1
+ KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
+ KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092,PLAINTEXT_HOST://localhost:29092
+ KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
+ KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
+ KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
diff --git a/docs/development/devtools/smoke/files/pap-application.yaml b/docs/development/devtools/smoke/files/pap-application.yaml
new file mode 100644
index 00000000..8a03b1dd
--- /dev/null
+++ b/docs/development/devtools/smoke/files/pap-application.yaml
@@ -0,0 +1,91 @@
+spring:
+ security:
+ user:
+ name: policyadmin
+ password: zb!XztG34
+ datasource:
+ url: jdbc:mariadb://localhost:3306/policyadmin
+ driverClassName: org.mariadb.jdbc.Driver
+ username: policy_user
+ password: policy_user
+ jpa:
+ hibernate:
+ ddl-auto: none
+ naming:
+ physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
+ implicit-strategy: org.onap.policy.common.spring.utils.CustomImplicitNamingStrategy
+ mvc:
+ converters:
+ preferred-json-mapper: gson
+
+server:
+ port: 6970
+ servlet:
+ context-path: /policy/pap/v1
+pap:
+ name: PapGroup
+ topic:
+ pdp-pap.name: POLICY-PDP-PAP
+ notification.name: POLICY-NOTIFICATION
+ heartbeat.name: POLICY-HEARTBEAT
+ pdpParameters:
+ heartBeatMs: 120000
+ updateParameters:
+ maxRetryCount: 1
+ maxWaitMs: 30000
+ stateChangeParameters:
+ maxRetryCount: 1
+ maxWaitMs: 30000
+ topicParameterGroup:
+ topicSources:
+ - topic: ${pap.topic.pdp-pap.name}
+ servers:
+ - kafka
+ topicCommInfrastructure: NOOP
+ fetchTimeout: 15000
+ - topic: ${pap.topic.heartbeat.name}
+ effectiveTopic: ${pap.topic.pdp-pap.name}
+ consumerGroup: policy-pap
+ servers:
+ - kafka
+ topicCommInfrastructure: NOOP
+ fetchTimeout: 15000
+ topicSinks:
+ - topic: ${pap.topic.pdp-pap.name}
+ servers:
+ - kafka
+ topicCommInfrastructure: NOOP
+ - topic: ${pap.topic.notification.name}
+ servers:
+ - kafka
+ topicCommInfrastructure: NOOP
+ healthCheckRestClientParameters:
+ - clientName: api
+ hostname: localhost
+ port: 6968
+ userName: policyadmin
+ password: zb!XztG34
+ useHttps: false
+ basePath: policy/api/v1/healthcheck
+ - clientName: distribution
+ hostname: policy-distribution
+ port: 6969
+ userName: healthcheck
+ password: zb!XztG34
+ useHttps: true
+ basePath: healthcheck
+ - clientName: kafka
+ hostname: kafka
+ port: 3905
+ useHttps: true
+ basePath: topics
+
+management:
+ endpoints:
+ web:
+ base-path: /
+ exposure:
+ include: health, metrics, prometheus
+ path-mapping:
+ -metrics: plain-metrics
+ -prometheus: metrics
diff --git a/docs/development/devtools/smoke/files/participant-policy-application.yaml b/docs/development/devtools/smoke/files/participant-policy-application.yaml
new file mode 100644
index 00000000..5b87d1b3
--- /dev/null
+++ b/docs/development/devtools/smoke/files/participant-policy-application.yaml
@@ -0,0 +1,41 @@
+participant:
+ pdpGroup: defaultGroup
+ pdpType: apex
+ policyApiParameters:
+ clientName: api
+ hostname: localhost
+ port: 6968
+ userName: policyadmin
+ password: zb!XztG34
+ useHttps: false
+ allowSelfSignedCerts: false
+ policyPapParameters:
+ clientName: pap
+ hostname: localhost
+ port: 6970
+ userName: policyadmin
+ password: zb!XztG34
+ useHttps: false
+ allowSelfSignedCerts: false
+ intermediaryParameters:
+ reportingTimeIntervalMs: 120000
+ description: Participant Description
+ participantId: 101c62b3-8918-41b9-a747-d21eb79c6c03
+ clampAutomationCompositionTopics:
+ topicSources:
+ -
+ topic: policy-acruntime-participant
+ servers:
+ - ${topicServer:localhost:29092}
+ topicCommInfrastructure: kafka
+ fetchTimeout: 15000
+ topicSinks:
+ -
+ topic: policy-acruntime-participant
+ servers:
+ - ${topicServer:localhost:29092}
+ topicCommInfrastructure: kafka
+ participantSupportedElementTypes:
+ -
+ typeName: org.onap.policy.clamp.acm.PolicyAutomationCompositionElement
+ typeVersion: 1.0.0
diff --git a/docs/development/devtools/smoke/json/acm-instantiation.json b/docs/development/devtools/smoke/json/acm-instantiation.json
index 28eef7da..2cf009cd 100644
--- a/docs/development/devtools/smoke/json/acm-instantiation.json
+++ b/docs/development/devtools/smoke/json/acm-instantiation.json
@@ -10,7 +10,6 @@
"name": "org.onap.policy.clamp.Local_K8SMicroserviceAutomationCompositionElement",
"version": "1.2.3"
},
- "participantId": "101c62b3-8918-41b9-a747-d21eb79c6c02",
"description": "K8s Automation composition Element for the nginx-ingress microservice",
"properties": {
"chart": {
@@ -29,7 +28,6 @@
"name": "org.onap.policy.clamp.Http_AutomationCompositionElement",
"version": "1.2.3"
},
- "participantId": "101c62b3-8918-41b9-a747-d21eb79c6c01",
"description": "Http Automation composition Element",
"properties": {
"baseUrl": "http://httpbin.org",
@@ -59,4 +57,4 @@
}
}
}
-} \ No newline at end of file
+}
diff --git a/docs/development/devtools/smoke/json/instantiation_pptnt_smoke.json b/docs/development/devtools/smoke/json/instantiation_pptnt_smoke.json
index aa8ca23d..6346d76b 100644
--- a/docs/development/devtools/smoke/json/instantiation_pptnt_smoke.json
+++ b/docs/development/devtools/smoke/json/instantiation_pptnt_smoke.json
@@ -10,7 +10,6 @@
"name": "onap.policy.clamp.ac.element.Policy_AutomationCompositionElement",
"version": "1.2.3"
},
- "participantId": "101c62b3-8918-41b9-a747-d21eb79c6c03",
"description": "Starter Automation Composition Element for the Demo",
"properties": {
"policy_type_id": {
diff --git a/docs/development/devtools/smoke/policy-participant-smoke.rst b/docs/development/devtools/smoke/policy-participant-smoke.rst
index 58e34494..ba677e11 100644
--- a/docs/development/devtools/smoke/policy-participant-smoke.rst
+++ b/docs/development/devtools/smoke/policy-participant-smoke.rst
@@ -11,21 +11,23 @@ CLAMP Policy Participant Smoke Tests
The Smoke testing of the policy participant is executed in a local CLAMP/Policy environment. The CLAMP-ACM interfaces interact with the Policy Framework to perform actions based on the state of the policy participant. The goal of the Smoke tests is the ensure that CLAMP Policy Participant and Policy Framework work together as expected.
All applications will be running by console, so they need to run with different ports. Configuration files should be changed accordingly.
-+------------------------------+------+
-| Application | port |
-+==============================+======+
-| MariDB | 3306 |
-+------------------------------+------+
-| DMaaP simulator | 3904 |
-+------------------------------+------+
-| policy-api | 6968 |
-+------------------------------+------+
-| policy-pap | 6970 |
-+------------------------------+------+
-| policy-clamp-runtime-acm | 6969 |
-+------------------------------+------+
-| onap/policy-clamp-ac-pf-ppnt | 8085 |
-+------------------------------+------+
++------------------------------+-------+
+| Application | port |
++==============================+=======+
+| MariDB | 3306 |
++------------------------------+-------+
+| Zookeeper | 2181 |
++------------------------------+-------+
+| Kafka | 29092 |
++------------------------------+-------+
+| policy-api | 6968 |
++------------------------------+-------+
+| policy-pap | 6970 |
++------------------------------+-------+
+| policy-clamp-runtime-acm | 6969 |
++------------------------------+-------+
+| onap/policy-clamp-ac-pf-ppnt | 8085 |
++------------------------------+-------+
2. Setup Guide
@@ -36,301 +38,366 @@ This section will show the developer how to set up their environment to start te
2.1 Prerequisites
=================
-- Java 11
-- Maven 3
+- Java 17
+- Maven 3.9
- Git
- Refer to this guide for basic environment setup `Setting up dev environment <https://wiki.onap.org/display/DW/Setting+Up+Your+Development+Environment>`_
-2.2 Assumptions
-===============
+2.2 Cloning CLAMP automation composition and all dependency
+===========================================================
-- You are accessing the policy repositories through gerrit
-- You are using "git review".
+Run a script such as the script below to clone the required modules from the `ONAP git repository <https://gerrit.onap.org/r/admin/repos/q/filter:policy>`_. This script clones CLAMP automation composition and all dependency.
-The following repositories are required for development in this project. These repositories should be present on your machine and you should run "mvn clean install" on all of them so that the packages are present in your .m2 repository.
+.. code-block:: bash
+ :caption: Typical ONAP Policy Framework Clone Script
+ :linenos:
-- policy/parent
-- policy/common
-- policy/models
-- policy/clamp
-- policy/api
-- policy/pap
+ #!/usr/bin/env bash
-In this setup guide, we will be setting up all the components technically required for a working convenient dev environment.
+ ## script name for output
+ MOD_SCRIPT_NAME='basename $0'
-2.3 Setting up the components
-=============================
+ ## the ONAP clone directory, defaults to "onap"
+ clone_dir="onap"
-2.3.1 MariaDB Setup
-^^^^^^^^^^^^^^^^^^^
+ ## the ONAP repos to clone
+ onap_repos="\
+ policy/api \
+ policy/clamp \
+ policy/pap "
-We will be using Docker to run our mariadb instance. It will have a total of two databases running in it.
+ ##
+ ## Help screen and exit condition (i.e. too few arguments)
+ ##
+ Help()
+ {
+ echo ""
+ echo "$MOD_SCRIPT_NAME - clones all required ONAP git repositories"
+ echo ""
+ echo " Usage: $MOD_SCRIPT_NAME [-options]"
+ echo ""
+ echo " Options"
+ echo " -d - the ONAP clone directory, defaults to '.'"
+ echo " -h - this help screen"
+ echo ""
+ exit 255;
+ }
-- clampacm: the policy-clamp-runtime-acm db
-- policyadmin: the policy-api db
+ ##
+ ## read command line
+ ##
+ while [ $# -gt 0 ]
+ do
+ case $1 in
+ #-d ONAP clone directory
+ -d)
+ shift
+ if [ -z "$1" ]; then
+ echo "$MOD_SCRIPT_NAME: no clone directory"
+ exit 1
+ fi
+ clone_dir=$1
+ shift
+ ;;
-A sql such as the one below can be used to build the SQL initialization. Create the *mariadb.sql* file in a directory *PATH_DIRECTORY*.
+ #-h prints help and exists
+ -h)
+ Help;exit 0;;
- .. code-block:: SQL
+ *) echo "$MOD_SCRIPT_NAME: undefined CLI option - $1"; exit 255;;
+ esac
+ done
+
+ if [ -f "$clone_dir" ]; then
+ echo "$MOD_SCRIPT_NAME: requested clone directory '$clone_dir' exists as file"
+ exit 2
+ fi
+ if [ -d "$clone_dir" ]; then
+ echo "$MOD_SCRIPT_NAME: requested clone directory '$clone_dir' exists as directory"
+ exit 2
+ fi
+
+ mkdir $clone_dir
+ if [ $? != 0 ]
+ then
+ echo cannot clone ONAP repositories, could not create directory '"'$clone_dir'"'
+ exit 3
+ fi
+
+ for repo in $onap_repos
+ do
+ repoDir=`dirname "$repo"`
+ repoName=`basename "$repo"`
+
+ if [ ! -z $dirName ]
+ then
+ mkdir "$clone_dir/$repoDir"
+ if [ $? != 0 ]
+ then
+ echo cannot clone ONAP repositories, could not create directory '"'$clone_dir/repoDir'"'
+ exit 4
+ fi
+ fi
+
+ git clone https://gerrit.onap.org/r/${repo} $clone_dir/$repo
+ done
+
+ echo ONAP has been cloned into '"'$clone_dir'"'
+
+
+Execution of the script above results in the following directory hierarchy in your *~/git* directory:
+
+ * ~/git/onap
+ * ~/git/onap/policy
+ * ~/git/onap/policy/api
+ * ~/git/onap/policy/clamp
+ * ~/git/onap/policy/pap
+
+
+2.3 Building CLAMP automation composition and all dependency
+============================================================
+
+**Step 1:** Setting topicParameterGroup for kafka localhost in clamp and policy-participant.
+It needs to set 'kafka' as topicCommInfrastructure and 'localhost:29092' as server.
+In the clamp repo, you should find the file 'runtime-acm/src/main/resources/application.yaml'. This file (in the 'runtime' parameters section) may need to be altered as below:
+
+.. literalinclude:: files/runtime-application.yaml
+ :language: yaml
+
+Setting topicParameterGroup for kafka localhost and api/pap http client (in the 'participant' parameters section) may need to be apply into the file 'participant/participant-impl/participant-impl-policy/src/main/resources/config/application.yaml'.
+
+.. literalinclude:: files/participant-policy-application.yaml
+ :language: yaml
+
+
+**Step 2:** Setting datasource.url, hibernate.ddl-auto and server.port in policy-api.
+In the api repo, you should find the file 'main/src/main/resources/application.yaml'. This file may need to be altered as below:
+
+.. literalinclude:: files/api-application.yaml
+ :language: yaml
- create database clampacm;
- CREATE USER 'policy'@'%' IDENTIFIED BY 'P01icY';
- GRANT ALL PRIVILEGES ON clampacm.* TO 'policy'@'%';
- CREATE DATABASE `policyadmin`;
- CREATE USER 'policy_user'@'%' IDENTIFIED BY 'policy_user';
- GRANT ALL PRIVILEGES ON policyadmin.* to 'policy_user'@'%';
- FLUSH PRIVILEGES;
+**Step 3:** Setting datasource.url, server.port, and api http client in policy-pap.
+In the pap repo, you should find the file 'main/src/main/resources/application.yaml'. This file may need to be altered as below:
-Execution of the command above results in the creation and start of the *mariadb-smoke-test* container.
+.. literalinclude:: files/pap-application.yaml
+ :language: yaml
+
+
+**Step 4:** Optionally, for a completely clean build, remove the ONAP built modules from your local repository.
.. code-block:: bash
- docker run --name mariadb-smoke-test \
- -p 3306:3306 \
- -e MYSQL_ROOT_PASSWORD=my-secret-pw \
- --mount type=bind,source=PATH_DIRECTORY/mariadb.sql,target=/docker-entrypoint-initdb.d/data.sql \
- -d mariadb:10.10.2 \
- --lower-case-table-names=1
+ rm -fr ~/.m2/repository/org/onap
-This will setup the two databases needed. The database will be exposed locally on port 3306.
-2.3.2 DMAAP Simulator
-^^^^^^^^^^^^^^^^^^^^^
+**Step 5:** A pom such as the one below can be used to build the ONAP Policy Framework modules. Create the *pom.xml* file in the directory *~/git/onap/policy*.
-For convenience, a dmaap simulator has been provided in the policy/models repository. To start the simulator, you can do the following:
+.. code-block:: xml
+ :caption: Typical pom.xml to build the ONAP Policy Framework
+ :linenos:
-#. Navigate to models-sim/policy-models-simulators in the policy/models repository.
-#. Add a configuration file to src/test/resources with the following contents:
+ <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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.onap</groupId>
+ <artifactId>onap-policy</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <packaging>pom</packaging>
+ <name>${project.artifactId}</name>
+ <inceptionYear>2024</inceptionYear>
+ <organization>
+ <name>ONAP</name>
+ </organization>
-.. code-block:: json
+ <modules>
+ <module>api</module>
+ <module>clamp</module>
+ <module>pap</module>
+ </modules>
+ </project>
- {
- "dmaapProvider":{
- "name":"DMaaP simulator",
- "topicSweepSec":900
- },
- "restServers":[
- {
- "name":"DMaaP simulator",
- "providerClass":"org.onap.policy.models.sim.dmaap.rest.DmaapSimRestControllerV1",
- "host":"localhost",
- "port":3904,
- "https":false
- }
- ]
- }
-3. You can then start dmaap with:
+**Step 6:** You can now build the Policy framework.
-.. code-block:: bash
+Build java artifacts only:
+
+ .. code-block:: bash
+
+ cd ~/git/onap/policy
+ mvn clean install -DskipTests
+
+Build with docker images:
+
+ .. code-block:: bash
+
+ cd ~/git/onap/policy/clamp/packages/
+ mvn clean install -P docker
+
+ cd ~/git/onap/policy/api/packages/
+ mvn clean install -P docker
+
+ cd ~/git/onap/policy/pap/packages/
+ mvn clean install -P docker
+
+2.4 Setting up the components
+=============================
- mvn exec:java -Dexec.mainClass=org.onap.policy.models.simulators.Main -Dexec.args="src/test/resources/YOUR_CONF_FILE.json"
+2.4.1 MariaDB and Kafka Setup
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-At this stage the dmaap simulator should be running on your local machine on port 3904.
+We will be using Docker to run our mariadb instance`and Zookeeper/Kafka. It will have a total of two databases running in mariadb.
-2.3.3 Policy API
+- clampacm: the policy-clamp-runtime-acm db
+- policyadmin: the policy-api db
+
+**Step 1:** Create the *mariadb.sql* file in a directory *~/git*.
+
+ .. code-block:: SQL
+
+ create database clampacm;
+ CREATE USER 'policy'@'%' IDENTIFIED BY 'P01icY';
+ GRANT ALL PRIVILEGES ON clampacm.* TO 'policy'@'%';
+ CREATE DATABASE `policyadmin`;
+ CREATE USER 'policy_user'@'%' IDENTIFIED BY 'policy_user';
+ GRANT ALL PRIVILEGES ON policyadmin.* to 'policy_user'@'%';
+ CREATE DATABASE `migration`;
+ GRANT ALL PRIVILEGES ON migration.* to 'policy_user'@'%';
+ FLUSH PRIVILEGES;
+
+
+**Step 2:** Create the *init.sh* file in a directory *~/git* with execution permission.
+
+ .. code-block:: sh
+
+ #!/bin/sh
+
+ export POLICY_HOME=/opt/app/policy
+ export SQL_USER=${MYSQL_USER}
+ export SQL_PASSWORD=${MYSQL_PASSWORD}
+ export SCRIPT_DIRECTORY=sql
+
+ /opt/app/policy/bin/prepare_upgrade.sh ${SQL_DB}
+ /opt/app/policy/bin/db-migrator -s ${SQL_DB} -o report
+ /opt/app/policy/bin/db-migrator -s ${SQL_DB} -o upgrade
+ rc=$?
+ /opt/app/policy/bin/db-migrator -s ${SQL_DB} -o report
+ nc -l -p 6824
+ exit $rc
+
+
+**Step 3:** Create the *wait_for_port.sh* file in a directory *~/git* with execution permission.
+
+ .. code-block:: sh
+
+ #!/bin/sh
+
+ usage() {
+ echo args: [-t timeout] [-c command] hostname1 port1 hostname2 port2 ... >&2
+ exit 1
+ }
+ tmout=300
+ cmd=
+ while getopts c:t: opt
+ do
+ case "$opt" in
+ c)
+ cmd="$OPTARG"
+ ;;
+ t)
+ tmout="$OPTARG"
+ ;;
+ *)
+ usage
+ ;;
+ esac
+ done
+ nargs=$((OPTIND-1))
+ shift "$nargs"
+ even_args=$(($#%2))
+ if [ $# -lt 2 ] || [ "$even_args" -ne 0 ]
+ then
+ usage
+ fi
+ while [ $# -ge 2 ]
+ do
+ export host="$1"
+ export port="$2"
+ shift
+ shift
+ echo "Waiting for $host port $port..."
+
+ while [ "$tmout" -gt 0 ]
+ do
+ if command -v docker > /dev/null 2>&1
+ then
+ docker ps --format "table {{ .Names }}\t{{ .Status }}"
+ fi
+ nc -vz "$host" "$port"
+ rc=$?
+ if [ $rc -eq 0 ]
+ then
+ break
+ else
+ tmout=$((tmout-1))
+ sleep 1
+ fi
+ done
+ if [ $rc -ne 0 ]
+ then
+ echo "$host port $port cannot be reached"
+ exit $rc
+ fi
+ done
+ $cmd
+ exit 0
+
+
+**Step 4:** Create the '*docker-compose.yaml*' using following code:
+
+.. literalinclude:: files/docker-compose-policy.yaml
+ :language: yaml
+
+
+**Step 5:** Run the docker composition:
+
+ .. code-block:: bash
+
+ cd ~/git/
+ docker compose up
+
+
+2.4.2 Policy API
^^^^^^^^^^^^^^^^
-Navigate to the "/main" directory. You can then run the following command to start the policy api:
+In the policy-api repo, navigate to the "/main" directory. You can then run the following command to start the policy api:
.. code-block:: bash
- java -jar target/api-main-2.8.2-SNAPSHOT.jar --spring.datasource.url=jdbc:mariadb://localhost:3306/policyadmin --spring.jpa.hibernate.ddl-auto=update --server.port=6968
+ mvn spring-boot:run
-2.3.4 Policy PAP
+2.4.3 Policy PAP
^^^^^^^^^^^^^^^^
-In the policy-pap repo, you should find the file 'main\src\main\resources\application.yaml'. This file may need to be altered slightly as below:
-
-.. code-block:: yaml
-
- spring:
- security:
- user:
- name: policyadmin
- password: zb!XztG34
- http:
- converters:
- preferred-json-mapper: gson
- datasource:
- url: jdbc:mariadb://localhost:3306/policyadmin
- driverClassName: org.mariadb.jdbc.Driver
- username: policy_user
- password: policy_user
- jpa:
- properties:
- hibernate:
- dialect: org.hibernate.dialect.MariaDB103Dialect
- hibernate:
- ddl-auto: update
- naming:
- physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
- implicit-strategy: org.onap.policy.common.spring.utils.CustomImplicitNamingStrategy
-
- server:
- port: 6970
- servlet:
- context-path: /policy/pap/v1
- pap:
- name: PapGroup
- aaf: false
- topic:
- pdp-pap.name: POLICY-PDP-PAP
- notification.name: POLICY-NOTIFICATION
- heartbeat.name: POLICY-HEARTBEAT
- pdpParameters:
- heartBeatMs: 120000
- updateParameters:
- maxRetryCount: 1
- maxWaitMs: 30000
- stateChangeParameters:
- maxRetryCount: 1
- maxWaitMs: 30000
- savePdpStatisticsInDb: true
- topicParameterGroup:
- topicSources:
- - topic: ${pap.topic.pdp-pap.name}
- servers:
- - localhost
- topicCommInfrastructure: dmaap
- fetchTimeout: 15000
- - topic: ${pap.topic.heartbeat.name}
- effectiveTopic: ${pap.topic.pdp-pap.name}
- consumerGroup: policy-pap
- servers:
- - localhost
- topicCommInfrastructure: dmaap
- fetchTimeout: 15000
- topicSinks:
- - topic: ${pap.topic.pdp-pap.name}
- servers:
- - localhost
- topicCommInfrastructure: dmaap
- - topic: ${pap.topic.notification.name}
- servers:
- - localhost
- topicCommInfrastructure: dmaap
- healthCheckRestClientParameters:
- - clientName: api
- hostname: localhost
- port: 6968
- userName: policyadmin
- password: zb!XztG34
- useHttps: false
- basePath: policy/api/v1/healthcheck
- - clientName: distribution
- hostname: policy-distribution
- port: 6969
- userName: healthcheck
- password: zb!XztG34
- useHttps: false
- basePath: healthcheck
- - clientName: dmaap
- hostname: localhost
- port: 3904
- useHttps: false
- basePath: topics
-
- management:
- endpoints:
- web:
- base-path: /
- exposure:
- include: health, metrics, prometheus
- path-mapping.metrics: plain-metrics
- path-mapping.prometheus: metrics
-
-Next, navigate to the "/main" directory. You can then run the following command to start the policy pap
+In the policy-pap repo, navigate to the "/main" directory. You can then run the following command to start the policy pap:
.. code-block:: bash
mvn spring-boot:run
-2.3.5 ACM Runtime
+2.4.4 ACM Runtime
^^^^^^^^^^^^^^^^^
-To start the clampacm runtime we need to go the "runtime-acm" directory in the clamp repo. There is a config file that is used, by default, for the clampacm runtime. That config file is here: "src/main/resources/application.yaml". For development in your local environment, it shouldn't need any adjustment and we can just run the clampacm runtime with:
+To start the clampacm runtime we need to go the "runtime-acm" directory in the clamp repo. You can then run the following command to start the clampacm runtime:
.. code-block:: bash
mvn spring-boot:run
-2.3.6 ACM Policy Participant
+2.4.5 ACM Policy Participant
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-To start the policy participant we need to go to the "participant/participant-impl/participant-impl-policy" directory in the clamp repo. There is a config file under "src/main/resources/config/application.yaml". For development in your local environment, we will need to adjust this file slightly:
-
-.. code-block:: yaml
-
- spring:
- security:
- user:
- name: participantUser
- password: zb!XztG34
- autoconfigure:
- exclude:
- - org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration
- - org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
- - org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration
- - org.springframework.boot.autoconfigure.data.web.SpringDataWebAutoConfiguration
-
- participant:
- pdpGroup: defaultGroup
- pdpType: apex
- policyApiParameters:
- clientName: api
- hostname: localhost
- port: 6968
- userName: policyadmin
- password: zb!XztG34
- useHttps: false
- allowSelfSignedCerts: true
- policyPapParameters:
- clientName: pap
- hostname: localhost
- port: 6970
- userName: policyadmin
- password: zb!XztG34
- useHttps: false
- allowSelfSignedCerts: true
- intermediaryParameters:
- reportingTimeIntervalMs: 120000
- description: Participant Description
- participantId: 101c62b3-8918-41b9-a747-d21eb79c6c03
- clampAutomationCompositionTopics:
- topicSources:
- -
- topic: POLICY-ACRUNTIME-PARTICIPANT
- servers:
- - ${topicServer:localhost}
- topicCommInfrastructure: dmaap
- fetchTimeout: 15000
- topicSinks:
- -
- topic: POLICY-ACRUNTIME-PARTICIPANT
- servers:
- - ${topicServer:localhost}
- topicCommInfrastructure: dmaap
- participantSupportedElementTypes:
- -
- typeName: org.onap.policy.clamp.acm.PolicyAutomationCompositionElement
- typeVersion: 1.0.0
-
- management:
- endpoints:
- web:
- base-path: /
- exposure:
- include: health, metrics, prometheus
- server:
- port: 8085
- servlet:
- context-path: /onap/policy/clamp/acm/policyparticipant
-
-
-Navigate to the "participant/participant-impl/participant-impl-policy" directory. We can then run the policy-participant with the following command:
+To start the policy participant we need to go to the "participant/participant-impl/participant-impl-policy" directory in the clamp repo. You can then run the following command to start the policy-participant:
.. code-block:: bash
diff --git a/docs/development/devtools/testing/s3p/distribution-s3p-results/performance-monitor.png b/docs/development/devtools/testing/s3p/distribution-s3p-results/performance-monitor.png
index 98760e09..d535c4aa 100644
--- a/docs/development/devtools/testing/s3p/distribution-s3p-results/performance-monitor.png
+++ b/docs/development/devtools/testing/s3p/distribution-s3p-results/performance-monitor.png
Binary files differ
diff --git a/docs/development/devtools/testing/s3p/distribution-s3p-results/performance-statistics.png b/docs/development/devtools/testing/s3p/distribution-s3p-results/performance-statistics.png
index 440a177a..a2caab4e 100644
--- a/docs/development/devtools/testing/s3p/distribution-s3p-results/performance-statistics.png
+++ b/docs/development/devtools/testing/s3p/distribution-s3p-results/performance-statistics.png
Binary files differ
diff --git a/docs/development/devtools/testing/s3p/distribution-s3p-results/performance-threads.png b/docs/development/devtools/testing/s3p/distribution-s3p-results/performance-threads.png
index a04d98bc..9b6c3d23 100644
--- a/docs/development/devtools/testing/s3p/distribution-s3p-results/performance-threads.png
+++ b/docs/development/devtools/testing/s3p/distribution-s3p-results/performance-threads.png
Binary files differ
diff --git a/docs/development/devtools/testing/s3p/distribution-s3p-results/performance-threshold.png b/docs/development/devtools/testing/s3p/distribution-s3p-results/performance-threshold.png
index bf20cf32..6a26a09e 100644
--- a/docs/development/devtools/testing/s3p/distribution-s3p-results/performance-threshold.png
+++ b/docs/development/devtools/testing/s3p/distribution-s3p-results/performance-threshold.png
Binary files differ
diff --git a/docs/development/devtools/testing/s3p/distribution-s3p-results/stability-monitor.png b/docs/development/devtools/testing/s3p/distribution-s3p-results/stability-monitor.png
index 23030a42..cbb675ba 100644
--- a/docs/development/devtools/testing/s3p/distribution-s3p-results/stability-monitor.png
+++ b/docs/development/devtools/testing/s3p/distribution-s3p-results/stability-monitor.png
Binary files differ
diff --git a/docs/development/devtools/testing/s3p/distribution-s3p-results/stability-statistics.png b/docs/development/devtools/testing/s3p/distribution-s3p-results/stability-statistics.png
index f184a596..ae1853f9 100644
--- a/docs/development/devtools/testing/s3p/distribution-s3p-results/stability-statistics.png
+++ b/docs/development/devtools/testing/s3p/distribution-s3p-results/stability-statistics.png
Binary files differ
diff --git a/docs/development/devtools/testing/s3p/distribution-s3p-results/stability-threads.png b/docs/development/devtools/testing/s3p/distribution-s3p-results/stability-threads.png
index c7279d9c..67da4a62 100644
--- a/docs/development/devtools/testing/s3p/distribution-s3p-results/stability-threads.png
+++ b/docs/development/devtools/testing/s3p/distribution-s3p-results/stability-threads.png
Binary files differ
diff --git a/docs/development/devtools/testing/s3p/distribution-s3p-results/stability-threshold.png b/docs/development/devtools/testing/s3p/distribution-s3p-results/stability-threshold.png
index 37ad5c41..5aa6cc64 100644
--- a/docs/development/devtools/testing/s3p/distribution-s3p-results/stability-threshold.png
+++ b/docs/development/devtools/testing/s3p/distribution-s3p-results/stability-threshold.png
Binary files differ
diff --git a/docs/development/devtools/testing/s3p/pap-s3p-results/pap_performance_jmeter_results.png b/docs/development/devtools/testing/s3p/pap-s3p-results/pap_performance_jmeter_results.png
index 57746d3b..e061ba47 100644
--- a/docs/development/devtools/testing/s3p/pap-s3p-results/pap_performance_jmeter_results.png
+++ b/docs/development/devtools/testing/s3p/pap-s3p-results/pap_performance_jmeter_results.png
Binary files differ
diff --git a/docs/development/devtools/testing/s3p/pap-s3p-results/pap_stability_jmeter_results.png b/docs/development/devtools/testing/s3p/pap-s3p-results/pap_stability_jmeter_results.png
index 53f95fb2..c1c04f92 100644
--- a/docs/development/devtools/testing/s3p/pap-s3p-results/pap_stability_jmeter_results.png
+++ b/docs/development/devtools/testing/s3p/pap-s3p-results/pap_stability_jmeter_results.png
Binary files differ
diff --git a/docs/development/devtools/testing/s3p/pap-s3p-results/pap_stats_after_72h.png b/docs/development/devtools/testing/s3p/pap-s3p-results/pap_stats_after_72h.png
index b95b23f0..7c56f74a 100644
--- a/docs/development/devtools/testing/s3p/pap-s3p-results/pap_stats_after_72h.png
+++ b/docs/development/devtools/testing/s3p/pap-s3p-results/pap_stats_after_72h.png
Binary files differ
diff --git a/docs/development/devtools/testing/s3p/pap-s3p-results/pap_stats_before_72h.png b/docs/development/devtools/testing/s3p/pap-s3p-results/pap_stats_before_72h.png
index 49b05e96..0984521f 100644
--- a/docs/development/devtools/testing/s3p/pap-s3p-results/pap_stats_before_72h.png
+++ b/docs/development/devtools/testing/s3p/pap-s3p-results/pap_stats_before_72h.png
Binary files differ
diff --git a/docs/development/devtools/testing/s3p/pap-s3p-results/pap_stats_during_72h.png b/docs/development/devtools/testing/s3p/pap-s3p-results/pap_stats_during_72h.png
index e107864f..1d86b175 100644
--- a/docs/development/devtools/testing/s3p/pap-s3p-results/pap_stats_during_72h.png
+++ b/docs/development/devtools/testing/s3p/pap-s3p-results/pap_stats_during_72h.png
Binary files differ
diff --git a/docs/development/devtools/testing/s3p/pap-s3p.rst b/docs/development/devtools/testing/s3p/pap-s3p.rst
index 04a16e61..c658cbc5 100644
--- a/docs/development/devtools/testing/s3p/pap-s3p.rst
+++ b/docs/development/devtools/testing/s3p/pap-s3p.rst
@@ -114,7 +114,7 @@ Stability test plan was triggered for 72 hours. There were no failures during th
======================= ================= ================== ==================================
**Total # of requests** **Success %** **Error %** **Average time taken per request**
======================= ================= ================== ==================================
- 168997 100 % 0.00 % 425 ms
+ 170212 100 % 0.00 % 419 ms
======================= ================= ================== ==================================
@@ -190,7 +190,7 @@ Test results are shown as below.
======================= ================= ================== ==================================
**Total # of requests** **Success %** **Error %** **Average time taken per request**
======================= ================= ================== ==================================
-199400 100 % 0.00 % 397 ms
+48093 100 % 0.00 % 1116 ms
======================= ================= ================== ==================================
**JMeter Screenshot**
diff --git a/docs/pap/notification/dmaap-pap-notif.json b/docs/pap/notification/kafka-pap-notif.json
index 07d1ac20..07d1ac20 100644
--- a/docs/pap/notification/dmaap-pap-notif.json
+++ b/docs/pap/notification/kafka-pap-notif.json
diff --git a/docs/pap/pap.rst b/docs/pap/pap.rst
index c6da41b2..1515af53 100644
--- a/docs/pap/pap.rst
+++ b/docs/pap/pap.rst
@@ -122,14 +122,13 @@ PAP supports the operations listed in the following table, via its REST API:
"Undeploy policy", "Undeploys a policy from the PDPs"
"Policy Status", "Queries the status of all policies"
"Policy deployment status", "Queries the status of all deployed policies"
- "PDP statistics", "Queries the statistics of PDPs"
"Policy Audit", "Queries the audit records of policies"
-1.2 DMaaP API
+1.2 KAFKA API
-------------
-PAP interacts with the PDPs via the DMaaP Message Router. The messages listed
-in the following table are transmitted via DMaaP:
+PAP interacts with the PDPs via the kafka interface. The messages listed
+in the following table are transmitted via Kafka:
.. csv-table::
:header: "Message", "Direction", "Description"
@@ -139,12 +138,12 @@ in the following table are transmitted via DMaaP:
"PDP update", "Outgoing", "Assigns a PDP to a PDP Group and Subgroup; also deploys or undeploys policies from the PDP"
"PDP state change", "Outgoing", "Changes the state of a PDP or all PDPs within a PDP Group or Subgroup"
-In addition, PAP generates notifications via the DMaaP Message Router when policies are successfully or unsuccessfully
+In addition, PAP generates notifications via the Kafka when policies are successfully or unsuccessfully
deployed (or undeployed) from all relevant PDPs.
Here is a sample notification:
-.. literalinclude:: notification/dmaap-pap-notif.json
+.. literalinclude:: notification/kafka-pap-notif.json
:language: json
@@ -201,22 +200,6 @@ Here is a sample response:
.. literalinclude:: response/consolidated-healthcheck-pap-resp.json
:language: json
-.. csv-table::
- :header: "/statistics"
- :widths: 10
-
- `Statistics PAP Swagger <./local-swagger.html#tag/StatisticsRestControllerV1>`_
-
-This operation allows statistics for PDP groups, PDP subgroups, and individual PDPs to be retrieved.
-
-.. note::
- While this API is supported, most of the statistics are not currently updated; that work has been deferred to a later
- release.
-
-Here is a sample response:
-
-.. literalinclude:: response/statistics-pap-resp.json
- :language: json
.. csv-table::
:header: "/pdps/groups/{name}"
@@ -387,21 +370,6 @@ Here is a sample response:
:language: json
.. csv-table::
- :header: "/pdps/statistics"
- :widths: 10
-
- `Policy Statistics PAP Swagger <./local-swagger.html#tag/StatisticsRestControllerV1>`_
-
-This operation allows the PDP statistics to be retrieved for all registered PDPs.
-The result can be filtered based on PDP group, PDP subgroup & PDP instance.
-Along with record count, start time & end time as query parameters.
-
-Here is a sample response:
-
-.. literalinclude:: response/pdp-statistics-pap-resp.json
- :language: json
-
-.. csv-table::
:header: "/policies/audit"
:widths: 10
@@ -424,15 +392,5 @@ The *PolicyAdministration* component (PAP) is initialized using a configuration
The configuration file is a YAML file containing the relevant fields for configuring the REST server, Database and DMaaP connectivity and so on.
-3.1 Disable collection of PDP Statistics
-========================================
-
-This configuration is to inform PAP to not save the PDP statistics in the database.
-
-In *papParameters.yaml*, add or change the property savePdpStatisticsInDb to false.
-
-.. note::
- By default, if the property is not present, it will be considered as false and
- PDP statistics will not be saved in the database.
End of Document
diff --git a/docs/pap/response/pdp-statistics-pap-resp.json b/docs/pap/response/pdp-statistics-pap-resp.json
deleted file mode 100644
index 77b03444..00000000
--- a/docs/pap/response/pdp-statistics-pap-resp.json
+++ /dev/null
@@ -1,45 +0,0 @@
-{
- "defaultGroup": {
- "apex": [
- {
- "pdpInstanceId": "dev-policy-apex-pdp-0",
- "timeStamp": "Apr 29, 2020, 6:15:29 PM",
- "pdpGroupName": "defaultGroup",
- "pdpSubGroupName": "apex",
- "policyDeployCount": 0,
- "policyDeploySuccessCount": 0,
- "policyDeployFailCount": 0,
- "policyExecutedCount": 0,
- "policyExecutedSuccessCount": 0,
- "policyExecutedFailCount": 0,
- "engineStats": []
- },
- {
- "pdpInstanceId": "dev-policy-apex-pdp-0",
- "timeStamp": "Apr 29, 2020, 6:17:29 PM",
- "pdpGroupName": "defaultGroup",
- "pdpSubGroupName": "apex",
- "policyDeployCount": 0,
- "policyDeploySuccessCount": 0,
- "policyDeployFailCount": 0,
- "policyExecutedCount": 0,
- "policyExecutedSuccessCount": 0,
- "policyExecutedFailCount": 0,
- "engineStats": []
- },
- {
- "pdpInstanceId": "dev-policy-apex-pdp-0",
- "timeStamp": "Apr 29, 2020, 6:19:29 PM",
- "pdpGroupName": "defaultGroup",
- "pdpSubGroupName": "apex",
- "policyDeployCount": 0,
- "policyDeploySuccessCount": 0,
- "policyDeployFailCount": 0,
- "policyExecutedCount": 0,
- "policyExecutedSuccessCount": 0,
- "policyExecutedFailCount": 0,
- "engineStats": []
- }
- ]
- }
-} \ No newline at end of file
diff --git a/docs/pap/response/statistics-pap-resp.json b/docs/pap/response/statistics-pap-resp.json
deleted file mode 100644
index 836b5956..00000000
--- a/docs/pap/response/statistics-pap-resp.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "code": 200,
- "policyDeployFailureCount": 0,
- "policyDeploySuccessCount": 0,
- "policyDownloadFailureCount": 0,
- "policyDownloadSuccessCount": 0,
- "totalPdpCount": 0,
- "totalPdpGroupCount": 0,
- "totalPolicyDeployCount": 0,
- "totalPolicyDownloadCount": 0
-}
diff --git a/docs/system-attributes/policy-db-migrator.rst b/docs/system-attributes/policy-db-migrator.rst
index 840137e9..81019efe 100644
--- a/docs/system-attributes/policy-db-migrator.rst
+++ b/docs/system-attributes/policy-db-migrator.rst
@@ -8,7 +8,7 @@ Using Policy DB Migrator
########################
Policy DB Migrator is a set of shell scripts used to
-install the database tables required to run ONAP Policy Framework.
+install the database tables required to run ONAP Policy Framework and ACM.
.. note::
Currently the Istanbul versions of the PAP and API components require
@@ -53,7 +53,7 @@ These script can take up to four parameters:
- upgrade/downgrade/report
* - schema
- -s
- - policyadmin
+ - policyadmin/clampacm
* - to
- -t
- 0800/0900
@@ -76,7 +76,7 @@ to run and connect to the database.
* - SQL_HOST
- mariadb
* - SQL_DB
- - policyadmin
+ - policyadmin/clampacm
* - SQL_USER
- policy_user
* - SQL_PASSWORD
@@ -98,7 +98,7 @@ to run and connect to the database.
* - SQL_HOST
- postgres
* - SQL_DB
- - policyadmin
+ - policyadmin/clampacm
* - SQL_USER
- policy_user
* - SQL_PASSWORD
@@ -119,7 +119,7 @@ Prior to upgrading the following script is run:
/opt/app/policy/bin/prepare_upgrade.sh <SCHEMA NAME>
-This will copy the upgrade files from ``/home/policy/${SCRIPT_DIRECTORY}`` to ``$POLICY_HOME/etc/db/migration/<SCHEMA NAME>/${SCRIPT_DIRECTORY}/``
+This will copy the upgrade files from ``/home/${SCHEMA}/${SCRIPT_DIRECTORY}`` to ``$POLICY_HOME/etc/db/migration/<SCHEMA NAME>/${SCRIPT_DIRECTORY}/``
Each individual sql file that makes up that release will be run as part of the upgrade.
@@ -132,7 +132,7 @@ Prior to downgrading the following script is run:
/opt/app/policy/bin/prepare_downgrade.sh <SCHEMA NAME>
-This will copy the downgrade files from ``/home/policy/${SCRIPT_DIRECTORY}`` to ``$POLICY_HOME/etc/db/migration/<SCHEMA NAME>/${SCRIPT_DIRECTORY}/``
+This will copy the downgrade files from ``/home/${SCHEMA}/${SCRIPT_DIRECTORY}`` to ``$POLICY_HOME/etc/db/migration/<SCHEMA NAME>/${SCRIPT_DIRECTORY}/``
Each individual sql file that makes up that release will be run as part of the downgrade.
@@ -199,7 +199,7 @@ Console output will also show the sql script command as in the example below:
migration schema
================
-The migration schema contains two tables which belong to ``db-migrator``.
+The migration schema contains three tables which belong to ``db-migrator``.
* schema_versions - table to store the schema version currently installed by ``db-migrator``
@@ -210,7 +210,9 @@ The migration schema contains two tables which belong to ``db-migrator``.
* - name
- version
* - policyadmin
- - 0900
+ - 1400
+ * - clampacm
+ - 1400
* policyadmin_schema_changelog - table which stores a record of each sql file that has been run
@@ -235,6 +237,29 @@ The migration schema contains two tables which belong to ``db-migrator``.
- 1
- 2021-09-13 09:09:26
+* clampacm_schema_changelog - table which stores a record of each sql file that has been run
+
+.. list-table::
+ :widths: 10 40 10 10 10 20 10 20
+ :header-rows: 1
+
+ * - ID
+ - script
+ - operation
+ - from_version
+ - to_version
+ - tag
+ - success
+ - atTime
+ * - 1
+ - 0100-automationcomposition.sql
+ - upgrade
+ - 0
+ - 1400
+ - 1309210909250800u
+ - 1
+ - 2024-04-24 09:09:26
+
* ID: Sequence number of the operation
* script: name of the sql script which was run
* operation: operation type - upgrade/downgrade
@@ -340,7 +365,7 @@ If the target version of your upgrade or downgrade is the same as the current ve
no sql files are run.
If an upgrade is run on a database where tables already exist in the policy schema, the
-current schema version is set to 0800 and only sql scripts from later versions are run.
+current schema version is set to 1300 and only sql scripts from later versions are run.
.. note::
It is advisable to take a backup of your database prior to running this utility.
diff --git a/integration/pom.xml b/integration/pom.xml
index 7f5b1932..12656e2c 100644
--- a/integration/pom.xml
+++ b/integration/pom.xml
@@ -29,7 +29,7 @@
<parent>
<groupId>org.onap.policy.parent</groupId>
<artifactId>policy-parent</artifactId>
- <version>4.1.3-SNAPSHOT</version>
+ <version>5.0.0-SNAPSHOT</version>
</parent>
<artifactId>integration</artifactId>
<packaging>pom</packaging>
@@ -38,8 +38,8 @@
<properties>
<java.version>17</java.version>
<!-- Note Well: For RELEASE/SNAPSHOT always set to the project version -->
- <version.parent.resources>4.1.3-SNAPSHOT</version.parent.resources>
- <version.parent.checkstyle>4.1.3-SNAPSHOT</version.parent.checkstyle>
+ <version.parent.resources>5.0.0-SNAPSHOT</version.parent.resources>
+ <version.parent.checkstyle>[4.1.2,)</version.parent.checkstyle>
<jacoco.destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</jacoco.destFile>
<!-- Default Sonar configuration -->
<sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
diff --git a/integration/src/main/resources/release/14.0.0-ONAP_pf_release_data.csv b/integration/src/main/resources/release/14.0.0-ONAP_pf_release_data.csv
new file mode 100644
index 00000000..4322b176
--- /dev/null
+++ b/integration/src/main/resources/release/14.0.0-ONAP_pf_release_data.csv
@@ -0,0 +1,14 @@
+Repo, Last Tag Version,Snapshot Version,Changed Files,Docker Images
+policy/parent,4.1.4,4.1.5-SNAPSHOT,0,
+policy/docker,3.1.3,3.1.4-SNAPSHOT,1,'policy-jre-alpine':'policy-jdk-alpine':'policy-db-migrator'
+policy/common,2.1.3,2.1.4-SNAPSHOT,0,
+policy/models,3.1.3,3.1.4-SNAPSHOT,2,'policy-models-simulator'
+policy/api,3.1.3,3.1.4-SNAPSHOT,1,'policy-api'
+policy/pap,3.1.3,3.1.4-SNAPSHOT,1,'policy-pap'
+policy/apex-pdp,3.1.3,3.1.4-SNAPSHOT,1,'policy-apex-pdp'
+policy/drools-pdp,2.1.3,2.1.4-SNAPSHOT,1,'policy-drools'
+policy/xacml-pdp,3.1.3,3.1.4-SNAPSHOT,1,'policy-xacml-pdp'
+policy/distribution,3.1.3,3.1.4-SNAPSHOT,1,'policy-distribution'
+policy/clamp,7.1.3,7.1.4-SNAPSHOT,8,'policy-clamp-ac-pf-ppnt':'policy-clamp-ac-k8s-ppnt':'policy-clamp-ac-http-ppnt':'policy-clamp-ac-a1pms-ppnt':'policy-clamp-runtime-acm':'policy-clamp-acm-element-impl':'policy-clamp-ac-kserve-ppnt':'policy-clamp-ac-sim-ppnt'
+policy/gui,3.1.3,3.1.4-SNAPSHOT,2,'policy-gui'
+policy/drools-applications,2.1.3,2.1.4-SNAPSHOT,1,'policy-pdpd-cl'
diff --git a/integration/src/main/resources/release/pf_release_data.csv b/integration/src/main/resources/release/pf_release_data.csv
index d70991fb..ba380748 100644
--- a/integration/src/main/resources/release/pf_release_data.csv
+++ b/integration/src/main/resources/release/pf_release_data.csv
@@ -1,14 +1,14 @@
Repo, Last Tag Version,Snapshot Version,Changed Files,Docker Images
-policy/parent,4.1.2,4.1.3-SNAPSHOT,0,
-policy/docker,3.1.2,3.1.3-SNAPSHOT,7,'policy-jre-alpine':'policy-jdk-alpine':'policy-db-migrator'
-policy/common,2.1.2,2.1.3-SNAPSHOT,0,
-policy/models,3.1.2,3.1.3-SNAPSHOT,3,'policy-models-simulator'
-policy/api,3.1.2,3.1.3-SNAPSHOT,2,'policy-api'
-policy/pap,3.1.2,3.1.3-SNAPSHOT,2,'policy-pap'
-policy/apex-pdp,3.1.2,3.1.3-SNAPSHOT,3,'policy-apex-pdp'
-policy/drools-pdp,2.1.2,2.1.3-SNAPSHOT,2,'policy-drools'
-policy/xacml-pdp,3.1.2,3.1.3-SNAPSHOT,2,'policy-xacml-pdp'
-policy/distribution,3.1.2,3.1.3-SNAPSHOT,2,'policy-distribution'
-policy/clamp,7.1.2,7.1.3-SNAPSHOT,9,'policy-clamp-ac-pf-ppnt':'policy-clamp-ac-k8s-ppnt':'policy-clamp-ac-http-ppnt':'policy-clamp-ac-a1pms-ppnt':'policy-clamp-runtime-acm':'policy-clamp-acm-element-impl':'policy-clamp-ac-kserve-ppnt':'policy-clamp-ac-sim-ppnt'
-policy/gui,3.1.2,3.1.3-SNAPSHOT,1,'policy-gui'
-policy/drools-applications,2.1.2,2.1.3-SNAPSHOT,0,'policy-pdpd-cl'
+policy/parent,4.1.4,5.0.0-SNAPSHOT,0,
+policy/docker,3.1.3,4.0.0-SNAPSHOT,1,'policy-jre-alpine':'policy-jdk-alpine':'policy-db-migrator'
+policy/common,2.1.3,3.0.0-SNAPSHOT,0,
+policy/models,3.1.3,4.0.0-SNAPSHOT,2,'policy-models-simulator'
+policy/api,3.1.3,4.0.0-SNAPSHOT,1,'policy-api'
+policy/pap,3.1.3,4.0.0-SNAPSHOT,1,'policy-pap'
+policy/apex-pdp,3.1.3,4.0.0-SNAPSHOT,1,'policy-apex-pdp'
+policy/drools-pdp,2.1.3,3.0.0-SNAPSHOT,1,'policy-drools'
+policy/xacml-pdp,3.1.3,4.0.0-SNAPSHOT,1,'policy-xacml-pdp'
+policy/distribution,3.1.3,4.0.0-SNAPSHOT,1,'policy-distribution'
+policy/clamp,7.1.3,8.0.0-SNAPSHOT,8,'policy-clamp-ac-pf-ppnt':'policy-clamp-ac-k8s-ppnt':'policy-clamp-ac-http-ppnt':'policy-clamp-ac-a1pms-ppnt':'policy-clamp-runtime-acm':'policy-clamp-acm-element-impl':'policy-clamp-ac-kserve-ppnt':'policy-clamp-ac-sim-ppnt'
+policy/gui,3.1.3,4.0.0-SNAPSHOT,2,'policy-gui'
+policy/drools-applications,2.1.3,3.0.0-SNAPSHOT,1,'policy-pdpd-cl'
diff --git a/integration/src/main/scripts/release/updateRefs.sh b/integration/src/main/scripts/release/updateRefs.sh
index 47922063..22db3373 100755
--- a/integration/src/main/scripts/release/updateRefs.sh
+++ b/integration/src/main/scripts/release/updateRefs.sh
@@ -261,9 +261,6 @@ then
$SED -i \
"s/<version.parent.resources>.*<\/version.parent.resources>/<version.parent.resources>$new_snapshot_tag<\/version.parent.resources>/" \
"$repo_location/policy/parent/integration/pom.xml"
- $SED -i \
- "s/<version.parent.checkstyle>.*<\/version.parent.checkstyle>/<version.parent.checkstyle>$new_snapshot_tag<\/version.parent.checkstyle>/" \
- "$repo_location/policy/parent/integration/pom.xml"
result_code=$?
else
next_release_version=${parent_latest_snapshot_tag%-*}
@@ -272,9 +269,6 @@ then
$SED -i \
"s/<version.parent.resources>.*<\/version.parent.resources>/<version.parent.resources>$next_release_version<\/version.parent.resources>/" \
"$repo_location/policy/parent/integration/pom.xml"
- $SED -i \
- "s/<version.parent.checkstyle>.*<\/version.parent.checkstyle>/<version.parent.checkstyle>$next_release_version<\/version.parent.checkstyle>/" \
- "$repo_location/policy/parent/integration/pom.xml"
result_code=$?
fi
else
diff --git a/pom.xml b/pom.xml
index debd984d..511c6c1f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -24,7 +24,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.onap.policy.parent</groupId>
<artifactId>policy-parent</artifactId>
- <version>4.1.3-SNAPSHOT</version>
+ <version>5.0.0-SNAPSHOT</version>
<packaging>pom</packaging>
<properties>
diff --git a/releases/4.1.3.yaml b/releases/4.1.3.yaml
new file mode 100644
index 00000000..f7610d01
--- /dev/null
+++ b/releases/4.1.3.yaml
@@ -0,0 +1,4 @@
+distribution_type: 'maven'
+version: '4.1.3'
+project: 'policy-parent'
+log_dir: 'policy-parent-maven-stage-master/1415/'
diff --git a/releases/4.1.4.yaml b/releases/4.1.4.yaml
new file mode 100644
index 00000000..7f2402b2
--- /dev/null
+++ b/releases/4.1.4.yaml
@@ -0,0 +1,4 @@
+distribution_type: 'maven'
+version: '4.1.4'
+project: 'policy-parent'
+log_dir: 'policy-parent-maven-stage-master/1416/'
diff --git a/resources/pom.xml b/resources/pom.xml
index 873a85da..2648a57c 100644
--- a/resources/pom.xml
+++ b/resources/pom.xml
@@ -25,7 +25,7 @@
<parent>
<groupId>org.onap.policy.parent</groupId>
<artifactId>policy-parent</artifactId>
- <version>4.1.3-SNAPSHOT</version>
+ <version>5.0.0-SNAPSHOT</version>
</parent>
<artifactId>policy-parent-resources</artifactId>
diff --git a/version.properties b/version.properties
index 68aaed8b..295674ed 100644
--- a/version.properties
+++ b/version.properties
@@ -2,9 +2,9 @@
# Note that these variables cannot be structured (e.g. : version.release or version.snapshot etc... )
# because they are used in Jenkins, whose plug-in doesn't support
-major=4
-minor=1
-patch=3
+major=5
+minor=0
+patch=0
base_version=${major}.${minor}.${patch}