summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2017-09-22Merge "Addition of Active-Standby Feature"Jorge Hernandez29-13/+5014
2017-09-22Merge "Added junit for policy-management"Jorge Hernandez3-2/+407
2017-09-21Added junit for policy-managementMagnusen, Drew (dm741q)3-2/+407
Junits were added to cover the FileSystemPersistence and RestManager classes Patch 2: Merged some test functionality from FileSystemPersistenceTest class into SystemPersistenceTest class. Deleted FileSystemPersistenceTest class. Issue-ID: POLICY-109 Change-Id: Ifd058b9988db30f6b5bc49ae54e5060c67f4ad5e Signed-off-by: Magnusen, Drew (dm741q) <dm741q@att.com>
2017-09-21Addition of Active-Standby FeatureKevin McKiou29-13/+5014
Patch 1: Adds the active-standby feature to drools-pdp. This feature provides the state control of the drools-pdp nodes controlling failover with a site and across sites. Patch 2: Resolve merge conflict in packages/install/pom.xml and pom.xml. Patch 3: Resolved comments from Pamela Dragosh and Jorge Hernandez. Issue-ID: POLICY-156 Change-Id: I922b3d5d8a464006e9675924bcbc7409d68c08d5 Signed-off-by: Kevin McKiou <km097d@att.com>
2017-09-21Log exceptionPamela Dragosh1-0/+1
Logging as trace since it is an acceptable exception. Change-Id: Ie93e60aeb95ece9b142c87f20eeb21ef56507dc4 Issue-ID: POLICY-261 Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
2017-09-20load config files in ascending order by nameJorge Hernandez1-2/+12
adding predictibility for environment and controller files loading Change-Id: Id02ddca75dd0dc8da658b64b84e77bef9e82b37c Issue-ID: POLICY-162 Signed-off-by: Jorge Hernandez <jh1730@att.com>
2017-09-19Adding JUnits for Configuration ClassesPamela Dragosh4-19/+272
Also fixed some Sonar Major issues to help clean that up. Issue-ID: POLICY-109 Change-Id: Ic8a0b8d97f2be1cc1f8e8e4e8b319c6117b231a4 Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
2017-09-18feature-state-management failing junitsJorge Hernandez1-0/+5
because junit library is not part of the pom. Change-Id: I4e8c12edfe2e91dcdb90200b8d4f37e35109f448 Issue-ID: POLICY-155 Signed-off-by: Jorge Hernandez <jh1730@att.com>
2017-09-18Merge "Fix sonar blocker/critical"Jorge Hernandez10-114/+90
2017-09-18Add Junit tests to 'policy-core'Ralph Straubs10-1/+685
These tests focus on the following classes: - PolicyContainer - PolicySession - PolicySessionFeatureAPI 'maven-invoker-plugin' was used to compile and install artifacts for testing during the 'test-compile' phase. These aren't part of the Maven project hierarchy, so they aren't visible to Sonar and SonarQube, and they aren't deployed. Change-Id: I67c122debbe5280f0153e7330248dc5d13c5b2c0 Issue-ID: POLICY-236 Signed-off-by: Ralph Straubs <rs8887@att.com>
2017-09-18Fix sonar blocker/criticalPamela Dragosh10-114/+90
Also add back .gitignore Sonar blocker for change condition always true. Easier to re-write this using try-with-resources. Use synchronized static method to set a static variable. Don't use e.printStackTrace it causes sonar critical to log exception Log the bytes read. Ideally I would re-write this using Java 8 NIO Issue-ID: POLICY-195 Change-Id: I080d1ad4c8bea91f87c3eca109325700e1589558 Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
2017-09-15Merge "Added junit for feature-healthcheck"Jorge Hernandez3-21/+265
2017-09-15Added junit for feature-healthcheckMagnusen, Drew (dm741q)3-21/+265
Added a junit test increase coverage of the healthcheck feature. Issue-ID: POLICY-227 Change-Id: I3f37e7fab15f2f3072b442b43b79b8241c61e306 Signed-off-by: Magnusen, Drew (dm741q) <dm741q@att.com>
2017-09-15Merge "Addition of State Management Feature"Pamela Dragosh24-22/+2647
2017-09-15Fix sonar related to persistence-featurePamela Dragosh3-7/+8
Sonar blocker for catchable: I am not sure why this is wrapped with an exception. Changing try-catch to use Exception | LinkageError per Jorge/Ralph. Sonar critical for logging exceptions. Sonar critical for casting to Long and reinterrupting thread. Change-Id: I44d46f005d9aa30c434c22e479034107055277ce Issue-ID: POLICY-195 Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
2017-09-15Sonar MajorSwapnilPathak1-1/+1
Move the string literal on the left side of this string comparison. Change-Id: I8086a6fc1dc24719c3ffd3785a12c086ab453ae7 Issue-ID: POLICY-230 Signed-off-by: SwapnilPathak <SP00494485@techmahindra.com>
2017-09-14Addition of State Management FeatureMagnusen, Drew (dm741q)24-22/+2647
Patch 1:This commit adds the feature to provide node state management. There are also a couple of very minor cleanup items in feature-session-persistence which came up during review and testing. Patch 2: Cleaned up some logging statements and exceptions per comments by Pam Dragosh. Patch 3: Clean up per comments from Jorge Hernandez. Patch4: Added a default to ignoreErrors in RepositoryAudit. Patch 5: Rebase. Patch 6: Removed api-state-management/.gitignore Issue-ID: POLICY-155 Change-Id: I4fbfa33314d488ff46764931ca965f802b6a26d5 Signed-off-by: Kevin McKiou <km097d@att.com>
2017-09-14Merge "Eliminate hanging when updating Drools containers"Jorge Hernandez1-1/+10
2017-09-14Eliminate hanging when updating Drools containersRalph Straubs1-1/+10
'PolicyContainer.updateToVersion(...)' now hangs unless the Drools session threads are stopped prior to the update. This wasn't an issue in the past, and it isn't clear what causes it to happen now. It also happened in the Junit tests I am currently working on. In any case, the 'updateToVersion' method has now been changed to stop the threads prior to an update attempt, do the update, and then restart the threads. Change-Id: I577a67c6e99a68bcbe3c2f476f93c0a72b93451a Issue-ID: POLICY-234 Signed-off-by: Ralph Straubs <rs8887@att.com>
2017-09-14added "fetch timeout" backoff for UEB endpointsJorge Hernandez4-417/+453
this prevents high frequency fruitless attempts to connect to an unreachable (perhaps temporarily) UEB server. added additional management apis for noop endpoints. bump versions of jackson parsers so through snakeyaml library throughtransitive dependencies is bump up from 1.15 as it is resolved in the classpath at runtime to > 1.17 otherwise causes incompatibilities with the one used in controlloops under their own classloaders, as they expect 1.17. Change-Id: I936348c4b93a2c409c22568868c44ed330dc18f7 Issue-ID: POLICY-119 Signed-off-by: Jorge Hernandez <jh1730@att.com>
2017-09-13wait until port is open in HttpClient junit testsJorge Hernandez2-186/+206
As a note, HttpServer tests have retries at the http level. Hopefully this will resolve some timing issues and intermittent junits failures in LF jenkins environment. Issue-ID: POLICY-109 Change-Id: I44628b60d4912be5fc4639e0048791f5655bbd01 Signed-off-by: Jorge Hernandez <jh1730@att.com>
2017-09-12Merge "missing check for noop sinks"Jorge Hernandez2-776/+796
2017-09-12Merge "Added junits for policy-util classes"Jorge Hernandez2-0/+127
2017-09-12Added junits for policy-util classesMagnusen, Drew (dm741q)2-0/+127
Added junits to increase coverage of the policy-util module. Patch 1: Moved Parent and Child class to within ReflectionUtilTest class. Issue-ID: POLICY-214 Change-Id: Ic5882c02a65ba1c924ec1381901a2a971fe72911 Signed-off-by: Magnusen, Drew (dm741q) <dm741q@att.com>
2017-09-12missing check for noop sinksJorge Hernandez2-776/+796
Change-Id: If7167415c361fad2478809ac6c41981beaadacd6 Issue-ID: POLICY-119 Signed-off-by: Jorge Hernandez <jh1730@att.com>
2017-09-08Cleanup project's name in SonarJessica Wagantall1-1/+1
The name parameter in the root pom.xml should match the project name in gerrit to reflect consistency in Sonar. Change-Id: Ic266276a2cc9537897dba90b4887b38cd0efed4d Issue-id: CIMAN-65 Signed-off-by: Jessica Wagantall <jwagantall@linuxfoundation.org>
2017-09-07Small change to please sonarMagnusen, Drew (dm741q)1-2/+3
Added a 'Thread.currentThread().interrupt()' in a catch of the run method of TTControllerTask at the direction of sonar. Added dump of exception to logger. Issue-ID: POLICY-213 Change-Id: I2bdd74eacedb6d1950c5c730430d7f723ce494bc Signed-off-by: Magnusen, Drew (dm741q) <dm741q@att.com>
2017-09-07Support environment configurationsJorge Hernandez12-4488/+4532
This enables PDP-D to have knowledge of any installation property or else configured via OS environment variable or as an environment file. This allows the user to query or set via REST API of programmatically through PolicyEngine any environment variable. It also provides a means to make data globally available to all drools applications. For example: http://localhost:9696/policy/pdp/engine/environment> get HTTP/1.1 200 OK Content-Length: 749 Content-Type: application/json Date: Wed, 06 Sep 2017 23:53:57 GMT Server: Jetty(9.3.14.v20161028) { "DCAE_SERVERS": "", "DCAE_TOPIC": "", "DMAAP_SERVERS": "", "ENGINE_MANAGEMENT_HOST": "0.0.0.0", "ENGINE_MANAGEMENT_PASSWORD": "", "ENGINE_MANAGEMENT_PORT": "9696", "ENGINE_MANAGEMENT_USER": "", "HEALTHCHECK_PASSWORD": "", "HEALTHCHECK_USER": "", "JAVA_HOME": "/usr/lib/jvm/java-8-oracle", "M2_HOME": "/usr/share/maven", "PAP_HOST": "", "PAP_PASSWORD": "", "PAP_USERNAME": "", "PDPD_CONFIGURATION_API_KEY": "", "PDPD_CONFIGURATION_API_SECRET": "", "PDPD_CONFIGURATION_CONSUMER_GROUP": "", "PDPD_CONFIGURATION_CONSUMER_INSTANCE": "", "PDPD_CONFIGURATION_PARTITION_KEY": "", "PDPD_CONFIGURATION_SERVERS": "", "PDPD_CONFIGURATION_TOPIC": "PDPD-CONFIGURATION", "PDP_HOST": "", "PDP_PASSWORD": "", "PDP_USERNAME": "", "POLICY_HOME": "/home/policy/snapshot", "SQL_HOST": "", "SQL_PASSWORD": "", "SQL_USER": "" } policy@newton:~/snapshot/config$ echo -n "http://one.com/aai" | http --verbose PUT :9696/policy/pdp/engine/environment/AAI_URL Content-Type:text/plain Accept:text/plain PUT /policy/pdp/engine/environment/AAI_URL HTTP/1.1 Accept: text/plain Accept-Encoding: gzip, deflate Connection: keep-alive Content-Length: 18 Content-Type: text/plain Host: localhost:9696 User-Agent: HTTPie/0.9.2 http://one.com/aai HTTP/1.1 200 OK Content-Length: 0 Content-Type: text/plain Date: Thu, 07 Sep 2017 00:05:05 GMT Server: Jetty(9.3.14.v20161028) policy@newton:~/snapshot/config$ echo -n "http://one.com/aai2" | http --verbose PUT :9696/policy/pdp/engine/environment/AAI_URL Content-Type:text/plain Accept:text/plain PUT /policy/pdp/engine/environment/AAI_URL HTTP/1.1 Accept: text/plain Accept-Encoding: gzip, deflate Connection: keep-alive Content-Length: 19 Content-Type: text/plain Host: localhost:9696 User-Agent: HTTPie/0.9.2 http://one.com/aai2 HTTP/1.1 200 OK Content-Length: 18 Content-Type: text/plain Date: Thu, 07 Sep 2017 00:05:45 GMT Server: Jetty(9.3.14.v20161028) http://one.com/aai policy@newton:~/snapshot/config$ http :9696/policy/pdp/engine/environment/AAI_URL HTTP/1.1 200 OK Content-Length: 19 Content-Type: application/json Date: Thu, 07 Sep 2017 05:14:57 GMT Server: Jetty(9.3.14.v20161028) http://one.com/aai2 Change-Id: I1fcd610938af751977bb2db925b57b4e5b3f7ba4 Issue-ID: POLICY-162 Signed-off-by: Jorge Hernandez <jh1730@att.com>
2017-09-06Added junit for test-transaction featureMagnusen, Drew (dm741q)3-40/+191
Single junit was added for test-transaction feature. Junit does not test full functionality of the feature, but does test some of the peripheral methods. Also fixed small indentation error in assemble_zip.xml. Issue-ID: POLICY-198 Change-Id: Iad7a98be45eb8ef6701bf8381aa764d2dd1ca9c7 Signed-off-by: Magnusen, Drew (dm741q) <dm741q@att.com>
2017-08-31Support Utils Libraries for CL Lab IntegrationJorge Hernandez6-16/+64
There is a companion review in the drools-applications repo. This also includes workarounds to the recent oparent dependency introduction that breaks runtime (with the version-check-maven-plugin). It manifested by loading control loops and failing to load some classes due to different versions (in a lab environment). The issue was that underlying drools libraries use 3.2.5 and oparent has included a had dependency with transitive dependencies for some maven libraries in 3.2.3 and lower version xml parsers. Bottomoline, the classpath at runtime was formed by the union of both, with some libraries being resolved to the oparent one, and others to the drools one. These errors are very obscured to debug. Additional clean up of dependencies versions and order of build was introduced to avoid issues loading dependencies at runtime in a lab environment (non-junit).. Change-Id: If4f4201e08f7e6e1f3619f557434c1b2e23e47a5 Issue-ID: POLICY-162 Signed-off-by: Jorge Hernandez <jh1730@att.com>
2017-08-30Added new test transaction featureMagnusen, Drew (dm741q)7-0/+534
Added test transaction feature which is used to test the health of policy controllers. Issue-ID: POLICY-177 Change-Id: I9a966be73f040c01e208bffd1dd67e8d858c1d37 Signed-off-by: Magnusen, Drew (dm741q) <dm741q@att.com>
2017-08-28junits in policy-managementJorge Hernandez9-163/+354
- add additional junits for policy-management module - allow for no configuration pdp-d start up. - minor changes junits for policy-endpoints to avoid race conditions in jenkins environment, starting up, and shutting down servers. Issue-ID: POLICY-109 Change-Id: Ibccefeb5d7cf762da27fe3282887df18d79db5df Signed-off-by: Jorge Hernandez <jh1730@att.com>
2017-08-24rename scripts and clean up eclipse warningsJorge Hernandez5-5/+1
rename scripts to follow convention that executable scripts should not have file extensions. clean up some warnings in eclipse Issue-ID: POLICY-162 Change-Id: I82be87925c3a8264381795535d33cee04924ae92 Signed-off-by: Jorge Hernandez <jh1730@att.com>
2017-08-23Add access.log to jetty serverjrh34-3/+58
Added a single line to the code that creates the jetty server so that it will log messages in access.log format. Also added lines to various logback.xml files to actually write the output from the jetty server to the access.log. Made some revisions per comments: - removed spaces around parameters - added "Out" suffix - changed suffix of archived files - changed size to 1MB Modified logback*.xml files to include jetty "access log" content in the already-existing network.log. Issue-Id: POLICY-161 Change-Id: I3e3769c06a22aaffea0e09abbec3387cc62f246f Signed-off-by: jrh3 <jrh3@att.com>
2017-08-22Add feature-session-persistenceKevin McKiou30-5/+4077
This commit adds the feature-session-persistence module which will persist drools session data to allow stateful transactions which can persist across node restarts and failovers. It also picks up recent changes to the master branch to avoid merge conflicts. Issue-ID: POLICY-133 Change-Id: Ifdcd8280ea6df07db79562f1b01fa90296a8b878 Signed-off-by: Kevin McKiou <km097d@att.com>
2017-08-22Adding changes to resolve pom.xmlViswanath Kumar Skand Priya1-37/+0
Issue-ID: POLICY-175 Change-Id: I3be1db6fdc1e070aff98c99fa9089a946ef7d6a3 Signed-off-by: Viswanath KSP <viswanath.kumarskandpriya@verizon.com>
2017-08-20sonar criticals and some majorsJorge Hernandez21-700/+450
Issue-ID: POLICY-114 Change-Id: I5fe12b6538379a4d018bb76173247fe53fba21d7 Signed-off-by: Jorge Hernandez <jh1730@att.com>
2017-08-18Expand acces dependencies to ONAP repos.Jorge Hernandez2-82/+211
Make public ONAP drools-applications repos at runtime or during development testing to ensure that no dependencies are missed, nor all of them need to be published in the private nexus repository. This will be benefitial at runtime and also during control loop development as control loops archetypes could be used from anywhere. Change-Id: I787b5afaf5c525f83326e924d6b9bcf85f9a7662 Issue-ID: POLICY-159 Signed-off-by: Jorge Hernandez <jh1730@att.com>
2017-08-17Remove MojoHaus Maven plug-in from pom fileTemoc Rodriguez1-55/+6
Remove MojoHaus License Maven plug-in from main pom.xml file. Issue-ID: POLICY-116 Change-Id: I3acfba5a998733006e04c8109ba9821c0c0c9573 Signed-off-by: Temoc Rodriguez <cr056n@att.com>
2017-08-16Merge "Fix "critical" Sonar issue"Jorge Hernandez1-1/+1
2017-08-16add hibernate JPA libraries in baseJorge Hernandez2-1/+23
To make feature development easier for DB-enabled features Change-Id: I7f69ecfbbfb9eaac92f698bdb787ce881eec39f0 Issue-ID: POLICY-96 Signed-off-by: Jorge Hernandez <jh1730@att.com>
2017-08-16Fix "critical" Sonar issueRalph Straubs1-1/+1
Change-Id: I46e59d9a017722370cff4112250bcdfa0f0d0b23 Issue-ID: POLICY-160 Signed-off-by: Ralph Straubs <rs8887@att.com>
2017-08-15add persistence libraries in the installation baseJorge Hernandez8-23/+42
to make db-enabled features to not worry about their packaging in the copy-dependencies plugin in the pom.xml Change-Id: Ie20a61978f75d4dbe82ac7aba5f6d259fb412f22 Issue-ID: POLICY-96 Signed-off-by: Jorge Hernandez <jh1730@att.com>
2017-08-15Merge "Support of DB-enabled features"Jorge Hernandez3-179/+959
2017-08-14Support of DB-enabled featuresJorge Hernandez3-179/+959
Isolation and data migration support overall and on a per feature basis. policy@drools:/opt/app/policy$ policy.sh status [drools-pdp-controllers] L []: Policy Management (no pidfile) is NOT running 1 cron jobs installed. [features] name version status ---- ------- ------ eelf 1.1.0 disabled healthcheck 1.1.0 disabled session-persistence 1.1.0 enabled [migration] session-persistence: upgrade out-of-sync: 0 -> 201702 policy@drools:/opt/app/policy$ features enable session-persistence session-persistence: upgrade out-of-sync: 0 -> 201702 name version status ---- ------- ------ eelf 1.1.0 disabled healthcheck 1.1.0 disabled session-persistence 1.1.0 enabled policy@drools:/opt/app/policy$ db-migrator -s session-persistence -o upgrade upgrade: 0 -> 201702 > upgrade 201701-blah.upgrade.sql -------------- create table blah (a varchar(15), b varchar(20)) -------------- > upgrade 201702-blah2.upgrade.sql -------------- create table blah2 (a varchar(15), b varchar(20)) -------------- session-persistence: OK: upgrade (201702) policy@drools:/opt/app/policy$ db-migrator -s ALL -o report +---------------------+---------+ | name | version | +---------------------+---------+ | session-persistence | 201702 | +---------------------+---------+ +--------------------------+-----------+---------+---------------------+ | script | operation | success | atTime | +--------------------------+-----------+---------+---------------------+ | 201701-blah.upgrade.sql | upgrade | 1 | 2017-08-14 16:01:32 | | 201702-blah2.upgrade.sql | upgrade | 1 | 2017-08-14 16:01:32 | +--------------------------+-----------+---------+---------------------+ policy@drools:/opt/app/policy$ features disable session-persistence name version status ---- ------- ------ eelf 1.1.0 disabled healthcheck 1.1.0 disabled session-persistence 1.1.0 disabled policy@drools:/opt/app/policy$ db-migrator -s ALL -o downgrade downgrade: 201702 -> 0 > downgrade 201702-blah2.downgrade.sql -------------- drop table if exists blah2 -------------- > downgrade 201701-blah.downgrade.sql -------------- drop table if exists blah -------------- session-persistence: OK: downgrade (0) policy@drools:/opt/app/policy$ db-migrator -s ALL -o report +---------------------+---------+ | name | version | +---------------------+---------+ | session-persistence | 0 | +---------------------+---------+ +----------------------------+-----------+---------+---------------------+ | script | operation | success | atTime | +----------------------------+-----------+---------+---------------------+ | 201701-blah.upgrade.sql | upgrade | 1 | 2017-08-14 16:01:32 | | 201702-blah2.upgrade.sql | upgrade | 1 | 2017-08-14 16:01:32 | | 201701-blah.downgrade.sql | downgrade | 1 | 2017-08-14 16:13:49 | | 201702-blah2.downgrade.sql | downgrade | 1 | 2017-08-14 16:13:49 | +----------------------------+-----------+---------+---------------------+ session-persistence: OK @ 0 Change-Id: Ie185f5d7a8463cb349ac452d8c2b4b05928b3e56 Issue-ID: POLICY-96 Signed-off-by: Jorge Hernandez <jh1730@att.com>
2017-08-14Remove eclipse checkstyle warningsPamela Dragosh1-0/+24
Add this should remove Eclipse warnings: Plugin execution not covered by lifecycle configuration: org.apache.maven.plugins:maven-checkstyle-plugin:2.17:check (execution: check-style, phase: process-sources) Issue-Id: POLICY-166 Change-Id: I609ebced831458e1fa56c57a30bceb3512c0dc7f Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
2017-08-10Add 'install' and 'uninstall' to 'features' scriptRalph Straubs1-10/+177
Note that the 'install' option looks for a 'base.conf' script in the current directory, as well as the '${POLICY_HOME}/config' directory. The assumption is 'base.conf' is saved here when the initial DroolsPDP install is complete. Issue-ID: POLICY-163 Change-Id: I995c685ca8ff896f3d8a027324e30673075e0c1f Signed-off-by: Ralph Straubs <rs8887@att.com>
2017-08-08Merge "placement of sql files during feature operations"Jorge Hernandez1-17/+228
2017-08-08placement of sql files during feature operationsJorge Hernandez1-17/+228
This commit only takes care of enabling disabling global visibility of sql files on a per database basis, when a feature is enabled/disabled. Performing the actual databases upgrade operations will be provided in a subsequent commit. Issue-ID: POLICY-66 Change-Id: Ia82e5ccb3a9f02e9d937ce4791fdca4204b8f9e8 Signed-off-by: Jorge Hernandez <jh1730@att.com>
2017-08-07Merge "[POLICY-151] drools-pdp integration with oparent"Jorge Hernandez2-24/+12