31b056a243ae0a9a1d725504742921171eec5e49
[policy/parent.git] / docs / release-notes.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2
3 .. DO NOT CHANGE THIS LABEL FOR RELEASE NOTES - EVEN THOUGH IT GIVES A WARNING
4 .. _release_notes:
5
6 Policy Release Notes
7 ====================
8
9 .. note
10 ..      * This Release Notes must be updated each time the team decides to Release new artifacts.
11 ..      * The scope of these Release Notes are for ONAP POLICY. In other words, each ONAP component has its Release Notes.
12 ..      * This Release Notes is cumulative, the most recently Released artifact is made visible in the top of
13 ..      * this Release Notes.
14 ..      * Except the date and the version number, all the other sections are optional but there must be at least
15 ..      * one section describing the purpose of this new release.
16 ..      * This note must be removed after content has been added.
17
18 ..      ===========================
19 ..      * * *    FRANKFURT    * * *
20 ..      ===========================
21
22 Abstract
23 ========
24
25 This document provides the release notes for the Policy Framework Project's Frankfurt release.
26
27 Summary
28 =======
29
30 New features include policy update notifications, native policy support, streamlined health check for the Policy Administration Point (PAP),
31 configurable pre-loading/pre-deployment of policies, new APIs (e.g. to create one or more Policies with a single call), new experimental PDP monitoring GUI, and enhancements to all three PDPs: XACML, Drools, APEX.
32
33 Release Data
34 ============
35
36 +--------------------------------------+--------------------------------------+
37 | **Policy Project**                   |                                      |
38 |                                      |                                      |
39 +--------------------------------------+--------------------------------------+
40 | **Docker images**                    | - policy-api 2.2.4                   |
41 |                                      | - policy-pap 2.2.3                   |
42 |                                      | - policy-pdpd-cl 1.6.4               |
43 |                                      | - policy-xacml-pdp 2.2.2             |
44 |                                      | - policy-apex-pdp 2.3.2              |
45 |                                      | - policy-distribution 2.3.2          |
46 |                                      | - policy-pe 1.6.4                    |
47 |                                      |                                      |
48 +--------------------------------------+--------------------------------------+
49 | **Release designation**              | 6.0.0 frankfurt                      |
50 |                                      |                                      |
51 +--------------------------------------+--------------------------------------+
52 | **Release date**                     | 2020-06-04                           |
53 |                                      |                                      |
54 +--------------------------------------+--------------------------------------+
55
56
57 New features
58 ------------
59
60 Common changes in all policy components
61 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
62 * Upgraded all policy components to Java 11.
63 * Logback file can be now loaded using OOM configmap.
64   - If needed, logback file can be loaded as a configmap during the OOM deployment. For this, just put the logback.xml file in corresponding config directory in OOM charts.
65
66 * TOSCA changes:
67   - “tosca_definitions_version” is now “tosca_simple_yaml_1_1_0”
68   - typeVersion→ type_version, int→integer, bool→boolean, String→string, Map→map, List→list
69 * SupportedPolicyTypes now removed from pdp status message.
70   - All PDPs now send PdpGroup to which they belong to in the registration message.
71   - SupportedPolicyTypes are not sent anymore.
72
73 * Native Policy Support
74   - Each PDP engine has its own native policy language. A new Policy Type **onap.policies.Native** was created and supported for each PDP
75   engine to support native policy types.
76
77
78 POLICY-PAP
79 ~~~~~~~~~~
80 * Policy Update Notifications
81   - PAP now generates notifications  via the DMaaP Message Router when policies are successfully or unsuccessfully deployed (or undeployed) from all relevant PDPs.
82
83 * PAP API to fetch Policy deployment status
84   - Clients will be able to poll the PAP API to find out when policies have been successfully or unsuccessfully deployed to the PDP's.
85
86 * Removing supportedPolicyTypes from PdpStatus
87   - PDPs are assigned to a PdpGroup based on what group is mentioned in the heartbeat. Earlier this was done based on the supportedPolicyTypes.
88
89 * Support policy types with wild-cards, Preload wildcard supported type in PAP
90
91 * PAP should NOT make a PDP passive if it cannot deploy a policy.
92   - If a PDP fails to deploy one or more policies specified in a PDP-UPDATE message, PAP will undeploy those policies that failed to deploy to the PDP.  This entails removing the policies from the Pdp Group(s), issuing new PDP-UPDATE requests, and updating the notification tracking data.
93   - Also, re-register pdp if not found in the DB during heartbeat processing.
94
95 * Consolidated health check in PAP
96   - PAP can report the health check for ALL the policy components now. The PDP’s health is tracked based on heartbeats, and other component’s REST API is used for healthcheck.
97   - “healthCheckRestClientParameters” (REST parameters for API and Distribution healthcheck) are added to the startup config file in PAP.
98
99 * PDP statistics from PAP
100  - All PDPs send statistics data as part of the heartbeat. PAP reads this and saves this data to the database, and this statistics data can be accessed from the monitoring GUI.
101
102 * PAP API for Create or Update PdpGroups
103  - A new API is now available just for creating/updating PDP Groups. Policies cannot be added/updated during PDP Group create/update operations. There is another API for this. So, if provided in the create/update group request, they are ignored. Supported policy types are defined during PDP Group creation. They cannot be updated once they are created. Refer to this for details: https://github.com/onap/policy-parent/blob/master/docs/pap/pap.rst#id8
104
105 * PAP API to deploy policies to PdpGroups
106  - A new API is introduced to deploy policies on specific PDPGroups. Each subgroup includes an "action" property, which is used to indicate that the policies are being added (POST) to the subgroup, deleted (DELETE) from the subgroup, or that the subgroup's entire set of policies is being replaced (PATCH) by a new set of policies.
107
108 POLICY-API
109 ~~~~~~~~~~
110
111 * A new simplified API to create one or more policies in one call.
112   - This simplified API doesn’t require policy type id & policy type version to be part of the URL.
113   - The simple URI “policy/api/v1/policies” with a POST input body takes in a ToscaServiceTemplate with the policies in it.
114
115 * List of Preloaded policy types are made configurable
116   - Until El Alto, the list of pre-loaded policy types are hardcoded in the code. Now, this is made configurable, and the list can be specified in the startup config file for the API component under “preloadPolicyTypes”. The list is ignored if the DB already contains one or more policy types.
117
118 * Preload default policies for ONAP components
119   - The ability to configure the preloading of initial default policies into the system upon startup.
120
121 * A lot of improvements to the API code and validations corresponding to the changes in policy-models.
122   - Creating same policyType/policy repeatedly without any change in request body will always be successful with 200 response
123   - If there is any change in the request body, then that should be a new version. If any change is posted without a version change, then 406 error response is returned.
124
125 * Known versioning issues are there in Policy Types handling.
126   - https://jira.onap.org/browse/POLICY-2377 covers the versioning issues in Policy. Basically, multiple versions of a Policy Type cannot be handled in TOSCA. So, in Frankfurt, the latest version of the policy type is examined. This will be further looked into in Guilin.
127
128 * Cascaded GET of PolicyTypes and Policies
129   - Fetching/GET PolicyType now returns all of the referenced/parent policyTypes and dataTypes as well.
130   - Fetching/GET Policy allows specifying mode now.
131   - By default the mode is “BARE”, which returns only the requested Policy in response. If mode is specified as “REFERENCED”, all of the referenced/parent policyTypes and dataTypes are returned as well.
132
133 * The /deployed API is removed from policy/api
134   - This run time administration job to see the deployment status of a policy is now possible via PAP.
135
136 * Changes related to design and support of TOSCA Compliant Policy Types for the operational and guard policy models.
137
138 POLICY-DISTRIBUTION
139 ~~~~~~~~~~~~~~~~~~~
140
141 * From Frankfurt release, policy-distribution component uses APIs provided by Policy-API and Policy-PAP for creation of policy types and policies, and deployment of policies.
142   - Note: If “deployPolicies” field in the startup config file is true, then only the policies are deployed using PAP endpoint.
143
144 * Policy/engine & apex-pdp dependencies are removed from policy-distribution.
145
146
147 APEX-PDP
148 ~~~~~~~~
149
150 * Changed the JavaScript executor from Nashorn to Rhino as part of Java 11 upgrade.
151   - There are minor changes in the JavaScript task logic files associated with this Rhino migration. An example for this change can be seen here: https://gerrit.onap.org/r/c/policy/apex-pdp/+/103546/2/examples/examples-onap-bbs/src/main/resources/logic/SdncResourceUpdateTask.js
152
153   - There is a known issue in Rhino javascript related to the usage of JSON.stringify. This is captured in this JIRA https://jira.onap.org/browse/POLICY-2463.
154
155 * APEX supports multiple policy deployment in Frankfurt.
156   - Up through El Alto APEX-PDP had the capability to take in only a single ToscaPolicy. When PAP sends a list of Tosca Policies in PdpUpdate, only the first one is taken and only that single Policy is deployed in APEX. This is fixed in Frankfurt. Now, APEX can deploy a list of Tosca Policies altogether into the engine.
157
158   - Note: There shouldn’t be any duplicates in the deployed policies (for e.g. same input/output parameter names, or same event/task names etc).
159
160   - For example, when 3 policies are deployed and one has duplicates, say same input/task or any such concept is used in the 2nd and 3rd policy, then APEX-PDP ignores the 3rd policy and executes only the 1st and 2nd policies. APEX-PDP also respond back to PAP with the message saying that “only Policy 1 and 2 are deployed. Others failed due to duplicate concept”.
161
162 * Context retainment during policy upgrade.
163   - In APEX-PDP, context is referred by the apex concept ‘contextAlbum’. When there is no major version change in the upgraded policy to be deployed, the existing context of the currently running policy is retained. When the upgraded policy starts running, it will have access to this context as well.
164
165   - For example, Policy A v1.1 is currently deployed to APEX. It has a contextAlbum named HeartbeatContext and heartbeats are currently added to the HeartbeatContext based on events coming in to the policy execution. Now, when Policy A v1.2 (with some other changes and same HeartbeatContext) is deployed, Policy Av1.1 is replaced by Policy A1.2 in the APEX engine, but the content in HeartbeatContext is retained for Policy A1.2.
166
167 * APEX-PDP now specifies which PdpGroup it belongs to.
168   - Up through El Alto, PAP assigned each PDP to a PDP group based on the supportedPolicyTypes it sends in the heartbeat. But in Frankfurt, each PDP comes up saying which PdpGroup they belong to, and this is sent to PAP in the heartbeat. PAP then registers the PDP the PdpGroup specified by the PDP. If no group name is specified like this, then PAP assigns the PDP to defaultGroup by default. SupportedPolicyTypes are not sent to PAP by the PDP now.
169
170   - In APEX-PDP, this can be specified in the startup config file(OnapPfConfig.json). "pdpGroup": "<groupName>" is added under “pdpStatusParameters” in the config file.
171
172 * APEX-PDP now sends PdpStatistics data in heartbeat.
173   - Apex now sends the PdpStatistics data in every heartbeat sent to PAP. PAP saves this data to the database, and this statistics data can be accessed from the monitoring GUI.
174
175 * Removed “content” section from ToscaPolicy properties in APEX.
176   - Up through El Alto, APEX specific policy information was placed under properties|content in ToscaPolicy. Avoid placing under "content" and keep the information directly under properties. So, the ToscaPolicy structure will have apex specific policy information in properties|engineServiceParameters, properties|eventInputParameters, properties|eventOutputParameters.
177
178 * Passing parameters from ApexConfig to policy logic.
179   - TaskParameters can be used to pass parameters from ApexConfig to the policy logic. Consider a scenario where from CLAMP, serviceId or closedLoopId has to be passed to the policy, and this should be available to perform some logic or action within the policy. In the CLAMP UI, while configuring the APEX Policy, specifying taskParameters with these will enable this.
180
181   - More information about the usage of Task Parameters can be found here: https://onap.readthedocs.io/en/latest/submodules/policy/parent.git/docs/apex/APEX-User-Manual.html#configure-task-parameters
182
183   - In the taskLogic, taskParameters can be accessed as  executor.parameters.get("ParameterKey1"))
184
185   - More information can be found here: https://onap.readthedocs.io/en/latest/submodules/policy/parent.git/docs/apex/APEX-Policy-Guide.html#accessing-taskparameters
186
187 * GRPC support for APEX-CDS interaction.
188   - APEX-PDP now supports interaction with CDS over gRPC. Up through El Alto, CDS interaction was possible over REST only. A new plugin was developed in APEX for this feature. Refer the link for more details. https://onap.readthedocs.io/en/latest/submodules/policy/parent.git/docs/apex/APEX-User-Manual.html#grpc-io
189
190 POLICY-XACML
191 ~~~~~~~~~~~~
192
193 * Added optional Decision API param to Decision API for monitor decisions that returns abbreviated results.
194   - Return only an abbreviated list of policies (e.g. metadata Policy Id and Version) without the actual contents of the policies (e.g. the Properties).
195
196 * XACML PDP now support PASSIVE_MODE.
197 * Added support to return status and error if pdp-x failed to load a policy.
198 * Changed optimization Decision API application to support "closest matches" algorithm.
199 * Changed Xacml-pdp to report the pdp group defined in XacmlPdpParameters config file as part of heartbeat. Also, removed supportedPolicyType from pdpStatus message.
200 * Design the TOSCA policy model for SDNC naming policies and implement an application that translates it to a working policy and is available for decision API.
201 * XACML pdp support for Control Loop Coordination
202   - Added policies for SON and PCI to support each blocking the other, with test cases and appropriate requests
203
204 * Extend PDP-X capabilities so that it can load in and enforce the native XACML policies deployed from PAP.
205
206 POLICY-DROOLS-PDP
207 ~~~~~~~~~~~~~~~~~
208
209 * Support for PDP-D in offline mode to support locked deployments.   This is the default ONAP installation.
210 * Parameterize maven repository URLs for easier CI/CD integration.
211 * Support for Tosca Compliant Operational Policies.
212 * Support for TOSCA Compliant Native Policies that allows creation and deployment of new drools-applications.
213 * Validation of Operational and Native Policies against their policy type.
214 * Support for a generic Drools-PDP docker image to host any type of application.
215 * Experimental Server Pool feature that supports multiple active Drools PDP hosts.
216
217 POLICY-DROOLS-APPLICATIONS
218 ~~~~~~~~~~~~~~~~~~~~~~~~~~
219
220 * Removal of DCAE ONSET alarm duplicates (with different request IDs).
221 * Support of a new controller (frankfurt) that supports the ONAP use cases under the new actor architecture.
222 * Deprecated the "usecases" controller supporting the use cases under the legacy actor architecture.
223 * Deleted the unsupported "amsterdam" controller related projects.
224
225 Known Limitations, Issues and Workarounds
226 =========================================
227
228 System Limitations
229 ------------------
230
231 The policy API component requires a fresh new database when migrating to the frankfurt release.
232 Therefore, upgrades require a fresh new database installation.
233 Please see the
234 `Installing or Upgrading Policy <https://onap.readthedocs.io/en/frankfurt/submodules/policy/parent.git/docs/installation/oom.html#installing-or-upgrading-policy>`__ section for appropriate procedures.
235
236 Known Vulnerabilities
237 ---------------------
238
239 * `POLICY-2463 <https://jira.onap.org/browse/POLICY-2463>`_ - In APEX Policy javascript task logic, JSON.stringify causing stackoverflow exceptions
240 * `POLICY-2487 <https://jira.onap.org/browse/POLICY-2487>`_ - policy/api hangs in loop if preload policy does not exist
241
242 Workarounds
243 -----------
244 * `POLICY-2463 <https://jira.onap.org/browse/POLICY-2463>`_ - Parse incoming object using JSON.Parse() or cast the object to a String
245
246 Security Notes
247 --------------
248
249 * `POLICY-2221 <https://jira.onap.org/browse/POLICY-2221>`_ - Password removal from helm charts
250 * `POLICY-2064 <https://jira.onap.org/browse/POLICY-2064>`_ - Allow overriding of keystore and truststore in policy helm charts
251 * `POLICY-2381 <https://jira.onap.org/browse/POLICY-2381>`_ - Dependency upgrades
252     - Upgrade drools 7.33.0
253     - Upgrade jquery to 3.4.1 in jquery-ui
254     - Upgrade snakeyaml to 1.26
255     - Upgrade org.infinispan infinispan-core 10.1.5.Final
256     - upgrade io.netty 4.1.48.Final
257     - exclude org.glassfish.jersey.media jersey-media-jaxb artifact
258     - Upgrade com.fasterxml.jackson.core 2.10.0.pr3
259     - Upgrade org.org.jgroups 4.1.5.Final
260     - Upgrade commons-codec 20041127.091804
261     - Upgrade com.github.ben-manes.caffeine 2.8.0
262
263
264 References
265 ==========
266
267 For more information on the ONAP Frankfurt release, please see:
268
269 #. `ONAP Home Page`_
270 #. `ONAP Documentation`_
271 #. `ONAP Release Downloads`_
272 #. `ONAP Wiki Page`_
273
274
275 .. _`ONAP Home Page`: https://www.onap.org
276 .. _`ONAP Wiki Page`: https://wiki.onap.org
277 .. _`ONAP Documentation`: https://docs.onap.org
278 .. _`ONAP Release Downloads`: https://git.onap.org
279
280 Quick Links:
281     - `POLICY project page`_
282     - `Passing Badge information for POLICY`_
283
284 ..      ==========================
285 ..      * * *     EL ALTO    * * *
286 ..      ==========================
287
288 Version: 5.0.1
289 --------------
290
291 :Release Date: 2019-10-24 (El Alto Release)
292
293 **New Features**
294
295 Artifacts released:
296
297 .. csv-table::
298    :header: "Repository", "Java Artifact", "Docker Image (if applicable)"
299    :widths: 15,10,10
300
301    "policy/parent", "3.0.1", ""
302    "policy/common", "1.5.2", ""
303    "policy/models", "2.1.4", ""
304    "policy/api", "2.1.2", "onap/policy-api:2.1.2"
305    "policy/pap", "2.1.2", "onap/policy-pap:2.1.2"
306    "policy/drools-pdp", "1.5.2", "onap/policy-drools:1.5.2"
307    "policy/apex-pdp", "2.2.1", "onap/policy-apex-pdp:2.2.1"
308    "policy/xacml-pdp", "2.1.2", "onap/policy-xacml-pdp:2.1.2"
309    "policy/drools-applications", "1.5.3", "onap/policy-pdpd-cl:1.5.3"
310    "policy/engine", "1.5.2", "onap/policy-pe:1.5.2"
311    "policy/distribution", "2.2.1", "onap/policy-distribution:2.2.1"
312    "policy/docker", "1.4.0", "onap/policy-common-alpine:1.4.0 onap/policy/base-alpine:1.4.0"
313
314 The El Alto release for POLICY delivered the following Epics. For a full list of stories and tasks delivered in the El Alto release, refer to `JiraPolicyElAlto`_.
315
316     * [POLICY-1727] - This epic covers technical debt left over from Dublin
317         - POLICY-969    Docker improvement in policy framwork modules
318         - POLICY-1074   Fix checkstyle warnings in every repository
319         - POLICY-1121   RPM build for Apex
320         - POLICY-1223   CII Silver Badging Requirements
321         - POLICY-1600   Clean up hash code equality checks, cloning and copying in policy-models
322         - POLICY-1646   Replace uses of getCanonicalName() with getName()
323         - POLICY-1652   Move PapRestServer to policy/common
324         - POLICY-1732   Enable maven-checkstyle-plugin in apex-pdp
325         - POLICY-1737   Upgrade oParent 2.0.0 - change daily jobs to staging jobs
326         - POLICY-1742   Make HTTP return code handling configurable in APEX
327         - POLICY-1743   Make URL configurable in REST Requestor and REST Client
328         - POLICY-1744   Remove topic.properties and incorporate into overall properties
329         - POLICY-1770   PAP REST API for PDPGroup Healthcheck
330         - POLICY-1771   Boost policy/api JUnit code coverage
331         - POLICY-1772   Boost policy/xacml-pdp JUnit code coverage
332         - POLICY-1773   Enhance the policy/xacml-pdp S3P Stability and Performance tests
333         - POLICY-1784   Better Handling of "version" field value with clients
334         - POLICY-1785   Deploy same policy with a new version simply adds to the list
335         - POLICY-1786   Create a simple way to populate the guard database for testing
336         - POLICY-1791   Address Sonar issues in new policy repos
337         - POLICY-1795   PAP: bounced apex and xacml pdps show deleted instance in pdp status through APIs. 
338         - POLICY-1800   API|PAP components use different version formats
339         - POLICY-1805   Build up stability test for api component to follow S3P requirements
340         - POLICY-1806   Build up S3P performance test for api component
341         - POLICY-1847   Add control loop coordination as a preloaded policy type
342         - POLICY-1871   Change policy/distribution to support ToscaPolicyType & ToscaPolicy
343         - POLICY-1881   Upgrade policy/distribution to latest SDC artifacts
344         - POLICY-1885   Apex-pdp: Extend CLIEditor to generate policy in ToscaServiceTemplate format
345         - POLICY-1898   Move apex-pdp & distribution documents to policy/parent
346         - POLICY-1942   Boost policy/apex-pdp JUnit code coverage
347         - POLICY-1953   Create addTopic taking BusTopicParams instead of Properties in policy/endpoints
348
349     * Additional items delivered with the release.
350         - POLICY-1637   Remove "version" from PdpGroup
351         - POLICY-1653   Remove isNullVersion() method
352         - POLICY-1966   Fix more sonar issues in policy drools
353         - POLICY-1988   Generate El Alto AAF Certificates
354
355     * [POLICY-1823] - This epic covers the work to develop features that will be deployed dark in El Alto.
356         - POLICY-1762   Create CDS API model implementation
357         - POLICY-1763   Create CDS Actor
358         - POLICY-1899   Update optimization xacml application to support more flexible Decision API
359         - POLICY-1911   XACML PDP must be able to retrieve Policy Type from API
360
361
362 **Bug Fixes**
363
364 The following bug fixes have been deployed with this release:
365
366     * `[POLICY-1671] <https://jira.onap.org/browse/POLICY-1671>`_ - policy/engine JUnit tests now take over 30 minutes to run
367     * `[POLICY-1725] <https://jira.onap.org/browse/POLICY-1725>`_ - XACML PDP returns 500 vs 400 for bad syntax JSON
368     * `[POLICY-1793] <https://jira.onap.org/browse/POLICY-1793>`_ - API|MODELS: Retrieving Legacy Operational Policy as a Tosca Policy with wrong version
369     * `[POLICY-1795] <https://jira.onap.org/browse/POLICY-1795>`_ - PAP: bounced apex and xacml pdps show deleted instance in pdp status through APIs. 
370     * `[POLICY-1800] <https://jira.onap.org/browse/POLICY-1800>`_ - API|PAP components use different version formats
371     * `[POLICY-1802] <https://jira.onap.org/browse/POLICY-1802>`_ - Apex-pdp: context album is mandatory for policy model to compile
372     * `[POLICY-1803] <https://jira.onap.org/browse/POLICY-1803>`_ - PAP should undeploy policies when subgroup is deleted
373     * `[POLICY-1807] <https://jira.onap.org/browse/POLICY-1807>`_ - Latest version is always returned when using the endpoint to retrieve all versions of a particular policy 
374     * `[POLICY-1808] <https://jira.onap.org/browse/POLICY-1808>`_ - API|PAP|PDP-X [new] should publish docker images with the following tag X.Y-SNAPSHOT-latest 
375     * `[POLICY-1810] <https://jira.onap.org/browse/POLICY-1810>`_ - API: support "../deployed" REST API (URLs) for legacy policies
376     * `[POLICY-1811] <https://jira.onap.org/browse/POLICY-1811>`_ - The endpoint of retrieving the latest version of TOSCA policy does not return the latest one, especially when there are double-digit versions
377     * `[POLICY-1818] <https://jira.onap.org/browse/POLICY-1818>`_ - APEX does not allow arbitrary Kafka parameters to be specified
378     * `[POLICY-1838] <https://jira.onap.org/browse/POLICY-1838>`_ - Drools-pdp error log is missing data in ErrorDescription field
379     * `[POLICY-1839] <https://jira.onap.org/browse/POLICY-1839>`_ - Policy Model  currently needs to be escaped
380     * `[POLICY-1843] <https://jira.onap.org/browse/POLICY-1843>`_ - Decision API not returning monitoring policies when calling api with policy-type
381     * `[POLICY-1844] <https://jira.onap.org/browse/POLICY-1844>`_ - XACML PDP does not update policy statistics
382     * `[POLICY-1858] <https://jira.onap.org/browse/POLICY-1858>`_ - Usecase DRL - named query should not be invoked
383     * `[POLICY-1859] <https://jira.onap.org/browse/POLICY-1859>`_ - Drools rules should not timeout when given timeout=0 - should be treated as infinite
384     * `[POLICY-1872] <https://jira.onap.org/browse/POLICY-1872>`_ - brmsgw fails building a jar - trafficgenerator dependency does not exist
385     * `[POLICY-2047] <https://jira.onap.org/browse/POLICY-2047>`_ - TOSCA Policy Types should be map not a list
386     * `[POLICY-2060] <https://jira.onap.org/browse/POLICY-2060>`_ - ToscaProperties object is missing metadata field
387     * `[POLICY-2156] <https://jira.onap.org/browse/POLICY-2156>`_ - missing field in create VF module request to SO
388
389
390 **Security Notes**
391
392 *Fixed Security Issues*
393
394
395     * `[POLICY-2115] <https://jira.onap.org/browse/POLICY-2115>`_ - Upgrade org.jgroups : jgroups : 4.0.12.Final 
396     * `[POLICY-2084] <https://jira.onap.org/browse/POLICY-2084>`_ - Investigate pip (py2.py3-none-any) 9.0.1 (.whl) in apex-pdp
397     * `[POLICY-2072] <https://jira.onap.org/browse/POLICY-2072>`_ - Upgrade io.netty : netty-codec-http2 and netty-common to 4.1.39.Final
398     * `[POLICY-2005] <https://jira.onap.org/browse/POLICY-2005>`_ - Upgrade elastic search to 6.8.2
399     * `[POLICY-2001] <https://jira.onap.org/browse/POLICY-2001>`_ - Upgrade com.thoughtworks.xstream to 1.4.11.1
400     * `[POLICY-2000] <https://jira.onap.org/browse/POLICY-2000>`_ - Upgrade oparent 2.1.0-SNAPSHOT - to pull in jetty server to 9.4.20.v20190813
401     * `[POLICY-1999] <https://jira.onap.org/browse/POLICY-1999>`_ - Upgrade to httpcomponents httpclient 4.5.9
402     * `[POLICY-1598] <https://jira.onap.org/browse/POLICY-1598>`_ - mariadb container is outdated
403     * `[POLICY-1597] <https://jira.onap.org/browse/POLICY-1597>`_ - nexus container is outdated
404
405 *Known Security Issues*
406
407 *Known Vulnerabilities in Used Modules*
408
409 POLICY code has been formally scanned during build time using NexusIQ and all Critical vulnerabilities have been addressed, items that remain open have been assessed for risk and determined to be false positive. The POLICY open Critical security vulnerabilities and their risk assessment have been documented as part of the `project (El Alto Release) <https://wiki.onap.org/pages/viewpage.action?pageId=68541992>`_.
410
411 Quick Links:
412     - `POLICY project page`_
413     - `Passing Badge information for POLICY`_
414     - `Project Vulnerability Review Table for POLICY (El Alto Release) <https://wiki.onap.org/pages/viewpage.action?pageId=68541992>`_
415
416 **Known Issues**
417
418 The following known issues will be addressed in a future release:
419
420     * `[POLICY-1276] <https://jira.onap.org/browse/POLICY-1276>`_ - JRuby interpreter shutdown fails on second and subsequent runs
421     * `[POLICY-1291] <https://jira.onap.org/browse/POLICY-1291>`_ - Maven Error when building Apex documentation in Windows
422     * `[POLICY-1578] <https://jira.onap.org/browse/POLICY-1578>`_ - PAP pushPolicies.sh in startup fails due to race condition in some environments
423     * `[POLICY-1832] <https://jira.onap.org/browse/POLICY-1832>`_ - API|PAP: data race condition seem to appear sometimes when creating and deploying policy
424     * `[POLICY-2103] <https://jira.onap.org/browse/POLICY-2103>`_ - policy/distribution may need to re-synch if SDC gets reinstalled
425     * `[POLICY-2062] <https://jira.onap.org/browse/POLICY-2062>`_ - APEX PDP logs > 4G filled local storage
426     * `[POLICY-2080] <https://jira.onap.org/browse/POLICY-2080>`_ - drools-pdp JUnit fails intermittently in feature-active-standby-management
427     * `[POLICY-2111] <https://jira.onap.org/browse/POLICY-2111>`_ - PDP-D APPS: AAF Cadi conflicts with Aether libraries
428     * `[POLICY-2158] <https://jira.onap.org/browse/POLICY-2158>`_ - PAP loses synchronization with PDPs
429     * `[POLICY-2159] <https://jira.onap.org/browse/POLICY-2159>`_ - PAP console (legacy): cannot edit policies with GUI
430
431
432 ..      ==========================
433 ..      * * *      DUBLIN    * * *
434 ..      ==========================
435
436 Version: 4.0.0
437 --------------
438
439 :Release Date: 2019-06-26 (Dublin Release)
440
441 **New Features**
442
443 Artifacts released:
444
445 .. csv-table::
446    :header: "Repository", "Java Artifact", "Docker Image (if applicable)"
447    :widths: 15,10,10
448
449    "policy/parent", "2.1.0", ""
450    "policy/common", "1.4.0", ""
451    "policy/models", "2.0.2", ""
452    "policy/api", "2.0.1", "onap/policy-api:2.0.1"
453    "policy/pap", "2.0.1", "onap/policy-pap:2.0.1"
454    "policy/drools-pdp", "1.4.0", "onap/policy-drools:1.4.0"
455    "policy/apex-pdp", "2.1.0", "onap/policy-apex-pdp:2.1.0"
456    "policy/xacml-pdp", "2.1.0", "onap/policy-xacml-pdp:2.1.0"
457    "policy/drools-applications", "1.4.2", "onap/policy-pdpd-cl:1.4.2"
458    "policy/engine", "1.4.1", "onap/policy-pe:1.4.1"
459    "policy/distribution", "2.1.0", "onap/policy-distribution:2.1.0"
460    "policy/docker", "1.4.0", "onap/policy-common-alpine:1.4.0 onap/policy/base-alpine:1.4.0"
461
462 The Dublin release for POLICY delivered the following Epics. For a full list of stories and tasks delivered in the Dublin release, refer to `JiraPolicyDublin`_.
463
464     * [POLICY-1068] - This epic covers the work to cleanup, enhance, fix, etc. any Control Loop based code base.
465         - POLICY-1195   Separate model code from drools-applications into other repositories
466         - POLICY-1367   Spike - Experimentation for management of Drools templates and Operational Policies
467         - POLICY-1397   PDP-D: NOOP Endpoints Support to test Operational Policies.
468         - POLICY-1459   PDP-D [Control Loop] : Create a Control Loop flavored PDP-D image
469
470     * [POLICY-1069] - This epic covers the work to harden the codebase for the Policy Framework project.
471         - POLICY-1007   Remove Jackson from policy framework components
472         - POLICY-1202   policy-engine & apex-pdp are using different version of eclipselink
473         - POLICY-1250   Fix issues reported by sonar in policy modules
474         - POLICY-1368   Remove hibernate from policy repos
475         - POLICY-1457   Use Alpine in base docker images
476
477     * [POLICY-1072] - This epic covers the work to support S3P Performance criteria.
478         - S3P Performance related items
479
480     * [POLICY-1171] - Enhance CLC Facility
481         - POLICY-1173   High-level specification of coordination directives
482
483     * [POLICY-1220] - This epic covers the work to support S3P Security criteria
484         - POLICY-1538   Upgrade Elasticsearch to 6.4.x to clear security issue
485
486     * [POLICY-1269] - R4 Dublin - ReBuild Policy Infrastructure
487         - POLICY-1270   Policy Lifecycle API RESTful HealthCheck/Statistics Main Entry Point
488         - POLICY-1271   PAP RESTful HealthCheck/Statistics Main Entry Point
489         - POLICY-1272   Create the S3P JMeter tests for API, PAP, XACML (2nd Gen)
490         - POLICY-1273   Policy Type Application Design Requirements
491         - POLICY-1436   XACML PDP RESTful HealthCheck/Statistics Main Entry Point
492         - POLICY-1440   XACML PDP RESTful Decision API Main Entry Point
493         - POLICY-1441   Policy Lifecycle API RESTful Create/Read Main Entry Point for Policy Types
494         - POLICY-1442   Policy Lifecycle API RESTful Create/Read Main Entry Point for Concrete Policies
495         - POLICY-1443   PAP Dmaap PDP Register/UnRegister Main Entry Point
496         - POLICY-1444   PAP Dmaap Policy Deploy/Undeploy Policies Main Entry Point
497         - POLICY-1445   XACML PDP upgrade to xacml 2.0.0
498         - POLICY-1446   Policy Lifecycle API RESTful Delete Main Entry Point for Policy Types
499         - POLICY-1447   Policy Lifecycle API RESTful Delete Main Entry Point for Concrete Policies
500         - POLICY-1449   XACML PDP Dmaap Register/UnRegister Functionality
501         - POLICY-1451   XACML PDP Dmaap Deploy/UnDeploy Functionality
502         - POLICY-1452   Apex PDP Dmaap Register/UnRegister Functionality
503         - POLICY-1453   Apex PDP Dmaap Deploy/UnDeploy Functionality
504         - POLICY-1454   Drools PDP Dmaap Register/UnRegister Functionality
505         - POLICY-1455   Drools PDP Dmaap Deploy/UnDeploy Functionality
506         - POLICY-1456   Policy Architecture and Roadmap Documentation
507         - POLICY-1458   Create S3P JMeter Tests for Policy API
508         - POLICY-1460   Create S3P JMeter Tests for PAP
509         - POLICY-1461   Create S3P JMeter Tests for Policy XACML Engine (2nd Generation)
510         - POLICY-1462   Create S3P JMeter Tests for Policy SDC Distribution
511         - POLICY-1471   Policy Application Designer - Develop Guard and Control Loop Coordination Policy Type application
512         - POLICY-1474   Modifications of Control Loop Operational Policy to support new Policy Lifecycle API
513         - POLICY-1515   Prototype Policy Lifecycle API Swagger Entry Points
514         - POLICY-1516   Prototype the Policy Decision API
515         - POLICY-1541   PAP REST API for PDPGroup Query, Statistics & Delete
516         - POLICY-1542   PAP REST API for PDPGroup Deployment, State Management & Health Check
517
518     * [POLICY-1399] - This epic covers the work to support model drive control loop design as defined by the Control Loop Subcommittee
519         - Model drive control loop related items
520
521     * [POLICY-1404] - This epic covers the work to support the CCVPN Use Case for Dublin
522         - POLICY-1405   Develop SDNC API for trigger bandwidth
523
524     * [POLICY-1408] - This epic covers the work done with the Casablanca release
525         - POLICY-1410   List Policy API
526         - POLICY-1413   Dashboard enhancements
527         - POLICY-1414   Push Policy and DeletePolicy API enhancement
528         - POLICY-1416   Model enhancements to support CLAMP
529         - POLICY-1417   Resiliency improvements
530         - POLICY-1418   PDP APIs - make ClientAuth optional
531         - POLICY-1419   Better multi-role support
532         - POLICY-1420   Model enhancement to support embedded JSON
533         - POLICY-1421   New audit data for push/delete
534         - POLICY-1422   Enhanced encryption
535         - POLICY-1423   Save original model file
536         - POLICY-1427   Controller Logging Feature
537         - POLICY-1489   PDP-D: Nested JSON Event Filtering support with JsonPath
538         - POLICY-1499   Mdc Filter Feature
539
540     * [POLICY-1438] - This epic covers the work to support 5G OOF PCI Use Case
541         - POLICY-1463   Functional code changes in Policy for OOF SON use case
542         - POLICY-1464   Config related aspects for OOF SON use case
543
544     * [POLICY-1450] - This epic covers the work to support the Scale Out Use Case.
545         - POLICY-1278   AAI named-queries are being deprecated and should be replaced with custom-queries
546         - POLICY-1545   E2E Automation - Parse the newly added model ids from operation policy
547
548     * Additional items delivered with the release.
549         - POLICY-1159   Move expectException to policy-common/utils-test
550         - POLICY-1176   Work on technical debt introduced by CLC POC
551         - POLICY-1266   A&AI Modularity
552         - POLICY-1274   further improvement in PSSD S3P test
553         - POLICY-1401   Build onap.policies.Monitoring TOSCA Policy Template
554         - POLICY-1465   Support configurable Heap Memory Settings for JVM processes
555
556
557 **Bug Fixes**
558
559 The following bug fixes have been deployed with this release:
560
561     * `[POLICY-1241] <https://jira.onap.org/browse/POLICY-1241>`_ - Test failure in drools-pdp if JAVA_HOME is not set
562     * `[POLICY-1289] <https://jira.onap.org/browse/POLICY-1289>`_ - Apex only considers 200 response codes as successful result codes
563     * `[POLICY-1437] <https://jira.onap.org/browse/POLICY-1437>`_ - Fix issues in FileSystemReceptionHandler of policy-distribution component
564     * `[POLICY-1501] <https://jira.onap.org/browse/POLICY-1501>`_ - policy-engine JUnit tests are not independent
565     * `[POLICY-1627] <https://jira.onap.org/browse/POLICY-1627>`_ - APEX does not support specification of a partitioner class for Kafka
566
567 **Security Notes**
568
569 *Fixed Security Issues*
570
571     * `[OJSI-117] <https://jira.onap.org/browse/OJSI-117>`_ - In default deployment POLICY (nexus) exposes HTTP port 30236 outside of cluster.
572     * `[OJSI-157] <https://jira.onap.org/browse/OJSI-157>`_ - In default deployment POLICY (policy-api) exposes HTTP port 30240 outside of cluster.
573     * `[OJSI-118] <https://jira.onap.org/browse/OJSI-118>`_ - In default deployment POLICY (policy-apex-pdp) exposes HTTP port 30237 outside of cluster.
574     * `[OJSI-184] <https://jira.onap.org/browse/OJSI-184>`_ - In default deployment POLICY (brmsgw) exposes HTTP port 30216 outside of cluster.
575
576 *Known Security Issues*
577
578 *Known Vulnerabilities in Used Modules*
579
580 POLICY code has been formally scanned during build time using NexusIQ and all Critical vulnerabilities have been addressed, items that remain open have been assessed for risk and determined to be false positive. The POLICY open Critical security vulnerabilities and their risk assessment have been documented as part of the `project (Dublin Release) <https://wiki.onap.org/pages/viewpage.action?pageId=54723253>`_.
581
582 Quick Links:
583     - `POLICY project page`_
584     - `Passing Badge information for POLICY`_
585     - `Project Vulnerability Review Table for POLICY (Dublin Release) <https://wiki.onap.org/pages/viewpage.action?pageId=54723253>`_
586
587
588 **Known Issues**
589
590 The following known issues will be addressed in a future release:
591
592     * `[POLICY-1795] - <https://jira.onap.org/browse/POLICY-1795>`_ PAP: bounced apex and xacml pdps show deleted instance in pdp status through APIs. 
593     * `[POLICY-1810] - <https://jira.onap.org/browse/POLICY-1810>`_ API: ensure that the REST APISs (URLs) are supported and consistent regardless the type of policy: operational, guard, tosca-compliant.
594     * `[POLICY-1277] - <https://jira.onap.org/browse/POLICY-1277>`_ policy config takes too long time to become retrievable in PDP
595     * `[POLICY-1378] - <https://jira.onap.org/browse/POLICY-1378>`_ add support to append value into policyScope while one policy could be used by several services
596     * `[POLICY-1650] - <https://jira.onap.org/browse/POLICY-1650>`_ Policy UI doesn't show left menu or any content
597     * `[POLICY-1671] - <https://jira.onap.org/browse/POLICY-1671>`_ policy/engine JUnit tests now take over 30 minutes to run
598     * `[POLICY-1725] - <https://jira.onap.org/browse/POLICY-1725>`_ XACML PDP returns 500 vs 400 for bad syntax JSON
599     * `[POLICY-1793] - <https://jira.onap.org/browse/POLICY-1793>`_ API|MODELS: Retrieving Legacy Operational Policy as a Tosca Policy with wrong version
600     * `[POLICY-1800] - <https://jira.onap.org/browse/POLICY-1800>`_ API|PAP components use different version formats
601     * `[POLICY-1802] - <https://jira.onap.org/browse/POLICY-1802>`_ Apex-pdp: context album is mandatory for policy model to compile
602     * `[POLICY-1808] - <https://jira.onap.org/browse/POLICY-1808>`_ API|PAP|PDP-X [new] should publish docker images with the following tag X.Y-SNAPSHOT-latest 
603     * `[POLICY-1818] - <https://jira.onap.org/browse/POLICY-1818>`_ APEX does not allow arbitrary Kafka parameters to be specified
604     * `[POLICY-1276] - <https://jira.onap.org/browse/POLICY-1276>`_ JRuby interpreter shutdown fails on second and subsequent runs
605     * `[POLICY-1803] - <https://jira.onap.org/browse/POLICY-1803>`_ PAP should undeploy policies when subgroup is deleted
606     * `[POLICY-1291] - <https://jira.onap.org/browse/POLICY-1291>`_ Maven Error when building Apex documentation in Windows
607     * `[POLICY-1872] - <https://jira.onap.org/browse/POLICY-1872>`_ brmsgw fails building a jar - trafficgenerator dependency does not exist
608
609
610 ..      ==========================
611 ..      * * *   CASABLANCA   * * *
612 ..      ==========================
613
614 Version: 3.0.2
615 --------------
616
617 :Release Date: 2019-03-31 (Casablanca Maintenance Release #2)
618
619 The following items were deployed with the Casablanca Maintenance Release:
620
621 **Bug Fixes**
622
623     * [POLICY-1522] - Policy doesn't send "payload" field to APPC
624
625 **Security Fixes**
626
627     * [POLICY-1538] - Upgrade Elasticsearch to 6.4.x to clear security issue
628
629 **License Issues**
630
631     * [POLICY-1433] - Remove proprietary licenses in PSSD test CSAR
632
633 **Known Issues**
634
635 The following known issue will be addressed in a future release.
636
637     * `[POLICY-1650] <https://jira.onap.org/browse/POLICY-1277>`_ - Policy UI doesn't show left menu or any content
638
639 A workaround for this issue consists in bypassing the Portal UI when accessing the Policy UI.   See `PAP recipes <https://docs.onap.org/en/casablanca/submodules/policy/engine.git/docs/platform/cookbook.html?highlight=policy%20cookbook#id23>`_ for the specific procedure.
640
641
642 Version: 3.0.1
643 --------------
644
645 :Release Date: 2019-01-31 (Casablanca Maintenance Release)
646
647 The following items were deployed with the Casablanca Maintenance Release:
648
649 **New Features**
650
651     * [POLICY-1221] - Policy distribution application to support HTTPS communication
652     * [POLICY-1222] - Apex policy PDP to support HTTPS Communication
653
654 **Bug Fixes**
655
656     * `[POLICY-1282] <https://jira.onap.org/browse/POLICY-1282>`_ - Policy format with some problems
657     * `[POLICY-1395] <https://jira.onap.org/browse/POLICY-1395>`_ - Apex PDP does not preserve context on model upgrade
658
659
660 Version: 3.0.0
661 --------------
662
663 :Release Date: 2018-11-30 (Casablanca Release)
664
665 **New Features**
666
667 The Casablanca release for POLICY delivered the following Epics. For a full list of stories and tasks delivered in the Casablanca release, refer to `JiraPolicyCasablanca`_ (Note: Jira details can also be viewed from this link).
668
669     * [POLICY-701] - This epic covers the work to integrate Policy into the SDC Service Distribution
670
671     The policy team introduced a new application into the framework that provides integration of the Service Distribution Notifications from SDC to Policy.
672
673     * [POLICY-719] - This epic covers the work to build the Policy Lifecycle API
674     * [POLICY-726] - This epic covers the work to distribute policy from the PAP to the PDPs into the ONAP platform
675     * [POLICY-876] - This epics covers the work to re-build how the PAP organizes the PDP's into groups.
676
677     The policy team did some forward looking spike work towards re-building the Software Architecture.
678
679     * [POLICY-809] - Maintain and implement performance
680     * [POLICY-814] - 72 hour stability testing (component and platform)
681
682     The policy team made enhancements to the Drools PDP to further support S3P Performance.
683     For the new Policy SDC Distribution application and the newly ingested Apex PDP the team established S3P
684     performance standard and performed 72 hour stability tests.
685
686     * [POLICY-824] - maintain and implement security
687
688     The policy team established AAF Root Certificate for HTTPS communication and CADI/AAF integration into the
689     MVP applications. In addition, many java dependencies were upgraded to clear CLM security issues.
690
691     * [POLICY-840] - Flexible control loop coordination facility.
692
693     Work towards a POC for control loop coordination policies were implemented.
694
695     * [POLICY-841] - Covers the work required to support HPA
696
697     Enhancements were made to support the HPA use case through the use of the new Policy SDC Service Distribution application.
698
699     * [POLICY-842] - This epic covers the work to support the Auto Scale Out functional requirements
700
701     Enhancements were made to support Scale Out Use Case to enforce new guard policies and updated SO and A&AI APIs.
702
703     * [POLICY-851] - This epic covers the work to bring in the Apex PDP code
704
705     A new Apex PDP engine was ingested into the platform and work was done to ensure code cleared CLM security issues,
706     sonar issues, and checkstyle.
707
708     * [POLICY-1081] - This epic covers the contribution for the 5G OOF PCI Optimization use case.
709
710     Policy templates changes were submitted that supported the 5G OOF PCI optimization use case.
711
712     * [POLICY-1182] - Covers the work to support CCVPN use case
713
714     Policy templates changes were submitted that supported the CCVPN use case.
715
716 **Bug Fixes**
717
718 The following bug fixes have been deployed with this release:
719
720     * `[POLICY-799] <https://jira.onap.org/browse/POLICY-799>`_ - Policy API Validation Does Not Validate Required Parent Attributes in the Model
721     * `[POLICY-869] <https://jira.onap.org/browse/POLICY-869>`_ - Control Loop Drools Rules should not have exceptions as well as die upon an exception
722     * `[POLICY-872] <https://jira.onap.org/browse/POLICY-872>`_ - investigate potential race conditions during rules version upgrades during call loads
723     * `[POLICY-878] <https://jira.onap.org/browse/POLICY-878>`_ - pdp-d: feature-pooling disables policy-controllers preventing processing of onset events
724     * `[POLICY-909] <https://jira.onap.org/browse/POLICY-909>`_ - get_ZoneDictionaryDataByName class type error
725     * `[POLICY-920] <https://jira.onap.org/browse/POLICY-920>`_ - Hard-coded path in junit test
726     * `[POLICY-921] <https://jira.onap.org/browse/POLICY-921>`_ - XACML Junit test cannot find property file
727     * `[POLICY-1083] <https://jira.onap.org/browse/POLICY-1083>`_ - Mismatch in action cases between Policy and APPC
728
729
730 **Security Notes**
731
732 POLICY code has been formally scanned during build time using NexusIQ and all Critical vulnerabilities have been addressed, items that remain open have been assessed for risk and determined to be false positive. The POLICY open Critical security vulnerabilities and their risk assessment have been documented as part of the `project (Casablanca Release) <https://wiki.onap.org/pages/viewpage.action?pageId=45300864>`_.
733
734 Quick Links:
735     - `POLICY project page`_
736     - `Passing Badge information for POLICY`_
737     - `Project Vulnerability Review Table for POLICY (Casablanca Release) <https://wiki.onap.org/pages/viewpage.action?pageId=45300864>`_
738
739 **Known Issues**
740
741     * `[POLICY-1277] <https://jira.onap.org/browse/POLICY-1277>`_ - policy config takes too long time to become retrievable in PDP
742     * `[POLICY-1282] <https://jira.onap.org/browse/POLICY-1282>`_ - Policy format with some problems
743
744
745
746 ..      =======================
747 ..      * * *   BEIJING   * * *
748 ..      =======================
749
750 Version: 2.0.0
751 --------------
752
753 :Release Date: 2018-06-07 (Beijing Release)
754
755 **New Features**
756
757 The Beijing release for POLICY delivered the following Epics. For a full list of stories and tasks delivered in the Beijing release, refer to `JiraPolicyBeijing`_.
758
759     * [POLICY-390] - This epic covers the work to harden the Policy platform software base (incl 50% JUnit coverage)
760         - POLICY-238    policy/drools-applications: clean up maven structure
761         - POLICY-336    Address Technical Debt
762         - POLICY-338    Address JUnit Code Coverage
763         - POLICY-377    Policy Create API should validate input matches DCAE microservice template
764         - POLICY-389    Cleanup Jenkin's CI/CD process's
765         - POLICY-449    Policy API + Console : Common Policy Validation
766         - POLICY-568    Integration with org.onap AAF project
767         - POLICY-610    Support vDNS scale out for multiple times in Beijing release
768
769     * [POLICY-391] - This epic covers the work to support Release Planning activities
770         - POLICY-552    ONAP Licensing Scan - Use Restrictions
771
772     * [POLICY-392] - Platform Maturity Requirements - Performance Level 1
773         - POLICY-529    Platform Maturity Performance - Drools PDP
774         - POLICY-567    Platform Maturity Performance - PDP-X
775
776     * [POLICY-394] - This epic covers the work required to support a Policy developer environment in which Policy Developers can create, update policy templates/rules separate from the policy Platform runtime platform.
777         - POLICY-488    pap should not add rules to official template provided in drools applications
778
779     * [POLICY-398] - This epic covers the body of work involved in supporting policy that is platform specific.
780         - POLICY-434    need PDP /getConfig to return an indicator of where to find the config data - in config.content versus config field
781
782     * [POLICY-399] - This epic covers the work required to policy enable Hardware Platform Enablement
783         - POLICY-622    Integrate OOF Policy Model into Policy Platform
784
785     * [POLICY-512] - This epic covers the work to support Platform Maturity Requirements - Stability Level 1
786         - POLICY-525    Platform Maturity Stability - Drools PDP
787         - POLICY-526    Platform Maturity Stability - XACML PDP
788
789     * [POLICY-513] - Platform Maturity Requirements - Resiliency Level 2
790         - POLICY-527    Platform Maturity Resiliency - Policy Engine GUI and PAP
791         - POLICY-528    Platform Maturity Resiliency - Drools PDP
792         - POLICY-569    Platform Maturity Resiliency - BRMS Gateway
793         - POLICY-585    Platform Maturity Resiliency - XACML PDP
794         - POLICY-586    Platform Maturity Resiliency - Planning
795         - POLICY-681    Regression Test Use Cases
796
797     * [POLICY-514] - This epic covers the work to support Platform Maturity Requirements - Security Level 1
798         - POLICY-523    Platform Maturity Security - CII Badging - Project Website
799
800     * [POLICY-515] - This epic covers the work to support Platform Maturity Requirements - Escalability Level 1
801         - POLICY-531    Platform Maturity Scalability - XACML PDP
802         - POLICY-532    Platform Maturity Scalability - Drools PDP
803         - POLICY-623    Docker image re-design
804
805     * [POLICY-516] - This epic covers the work to support Platform Maturity Requirements - Manageability Level 1
806         - POLICY-533    Platform Maturity Manageability L1 - Logging
807         - POLICY-534    Platform Maturity Manageability - Instantiation < 1 hour
808
809     * [POLICY-517] - This epic covers the work to support Platform Maturity Requirements - Usability Level 1
810         - POLICY-535    Platform Maturity Usability - User Guide
811         - POLICY-536    Platform Maturity Usability - Deployment Documentation
812         - POLICY-537    Platform Maturity Usability - API Documentation
813
814     * [POLICY-546] - R2 Beijing - Various enhancements requested by clients to the way we handle TOSCA models.
815
816
817 **Bug Fixes**
818
819 The following bug fixes have been deployed with this release:
820
821     * `[POLICY-484] <https://jira.onap.org/browse/POLICY-484>`_ - Extend election handler run window and clean up error messages
822     * `[POLICY-494] <https://jira.onap.org/browse/POLICY-494>`_ - POLICY EELF Audit.log not in ECOMP Standards Compliance
823     * `[POLICY-501] <https://jira.onap.org/browse/POLICY-501>`_ - Fix issues blocking election handler and add directed interface for opstate
824     * `[POLICY-509] <https://jira.onap.org/browse/POLICY-509>`_ - Add IntelliJ file to .gitingore
825     * `[POLICY-510] <https://jira.onap.org/browse/POLICY-510>`_ - Do not enforce hostname validation
826     * `[POLICY-518] <https://jira.onap.org/browse/POLICY-518>`_ - StateManagement creation of EntityManagers.
827     * `[POLICY-519] <https://jira.onap.org/browse/POLICY-519>`_ - Correctly initialize the value of allSeemsWell in DroolsPdpsElectionHandler
828     * `[POLICY-629] <https://jira.onap.org/browse/POLICY-629>`_ - Fixed a bug on editor screen
829     * `[POLICY-684] <https://jira.onap.org/browse/POLICY-684>`_ - Fix regex for brmsgw dependency handling
830     * `[POLICY-707] <https://jira.onap.org/browse/POLICY-707>`_ - ONAO-PAP-REST unit tests fail on first build on clean checkout
831     * `[POLICY-717] <https://jira.onap.org/browse/POLICY-717>`_ - Fix a bug in checking required fields if the object has include function
832     * `[POLICY-734] <https://jira.onap.org/browse/POLICY-734>`_ - Fix Fortify Header Manipulation Issue
833     * `[POLICY-743] <https://jira.onap.org/browse/POLICY-743>`_ - Fixed data name since its name was changed on server side
834     * `[POLICY-753] <https://jira.onap.org/browse/POLICY-753>`_ - Policy Health Check failed with multi-node cluster
835     * `[POLICY-765] <https://jira.onap.org/browse/POLICY-765>`_ - junit test for guard fails intermittently
836
837
838 **Security Notes**
839
840 POLICY code has been formally scanned during build time using NexusIQ and all Critical vulnerabilities have been addressed, items that remain open have been assessed for risk and determined to be false positive. The POLICY open Critical security vulnerabilities and their risk assessment have been documented as part of the `project <https://wiki.onap.org/pages/viewpage.action?pageId=25437092>`_.
841
842 Quick Links:
843     - `POLICY project page`_
844     - `Passing Badge information for POLICY`_
845     - `Project Vulnerability Review Table for POLICY <https://wiki.onap.org/pages/viewpage.action?pageId=25437092>`_
846
847 **Known Issues**
848
849 The following known issues will be addressed in a future release:
850
851     * `[POLICY-522] <https://jira.onap.org/browse/POLICY-522>`_ - PAP REST APIs undesired HTTP response body for 500 responses
852     * `[POLICY-608] <https://jira.onap.org/browse/POLICY-608>`_ - xacml components : remove hardcoded secret key from source code
853     * `[POLICY-764] <https://jira.onap.org/browse/POLICY-764>`_ - Policy Engine PIP Configuration JUnit Test fails intermittently
854     * `[POLICY-776] <https://jira.onap.org/browse/POLICY-776>`_ - OOF Policy TOSCA models are not correctly rendered
855     * `[POLICY-799] <https://jira.onap.org/browse/POLICY-799>`_ - Policy API Validation Does Not Validate Required Parent Attributes in the Model
856     * `[POLICY-801] <https://jira.onap.org/browse/POLICY-801>`_ - fields mismatch for OOF flavorFeatures between implementation and wiki
857     * `[POLICY-869] <https://jira.onap.org/browse/POLICY-869>`_  - Control Loop Drools Rules should not have exceptions as well as die upon an exception
858     * `[POLICY-872] <https://jira.onap.org/browse/POLICY-872>`_  - investigate potential race conditions during rules version upgrades during call loads
859
860
861
862
863 Version: 1.0.2
864 --------------
865
866 :Release Date: 2018-01-18 (Amsterdam Maintenance Release)
867
868 **Bug Fixes**
869
870 The following fixes were deployed with the Amsterdam Maintenance Release:
871
872     * `[POLICY-486] <https://jira.onap.org/browse/POLICY-486>`_ - pdp-x api pushPolicy fails to push latest version
873
874
875 Version: 1.0.1
876 --------------
877
878 :Release Date: 2017-11-16 (Amsterdam Release)
879
880 **New Features**
881
882 The Amsterdam release continued evolving the design driven architecture of and functionality for POLICY.  The following is a list of Epics delivered with the release. For a full list of stories and tasks delivered in the Amsterdam release, refer to `JiraPolicyAmsterdam`_.
883
884     * [POLICY-31] - Stabilization of Seed Code
885         - POLICY-25  Replace any remaining openecomp reference by onap
886         - POLICY-32  JUnit test code coverage
887         - POLICY-66  PDP-D Feature mechanism enhancements
888         - POLICY-67  Rainy Day Decision Policy
889         - POLICY-93  Notification API
890         - POLICY-158  policy/engine: SQL injection Mitigation
891         - POLICY-269  Policy API Support for Rainy Day Decision Policy and Dictionaries
892
893     * [POLICY-33] - This epic covers the body of work involved in deploying the Policy Platform components
894         - POLICY-40  MSB Integration
895         - POLICY-124  Integration with oparent
896         - POLICY-41  OOM Integration
897         - POLICY-119  PDP-D: noop sinks
898
899     * [POLICY-34] - This epic covers the work required to support a Policy developer environment in which Policy Developers can create, update policy templates/rules separate from the policy Platform runtime platform.
900         - POLICY-57  VF-C Actor code development
901         - POLICY-43  Amsterdam Use Case Template
902         - POLICY-173  Deployment of Operational Policies Documentation
903
904     * [POLICY-35] - This epic covers the body of work involved in supporting policy that is platform specific.
905         - POLICY-68  TOSCA Parsing for nested objects for Microservice Policies
906
907     * [POLICY-36] - This epic covers the work required to capture policy during VNF on-boarding.
908
909     * [POLICY-37] - This epic covers the work required to capture, update, extend Policy(s) during Service Design.
910         - POLICY-64  CLAMP Configuration and Operation Policies for vFW Use Case
911         - POLICY-65  CLAMP Configuration and Operation Policies for vDNS Use Case
912         - POLICY-48  CLAMP Configuration and Operation Policies for vCPE Use Case
913         - POLICY-63  CLAMP Configuration and Operation Policies for VOLTE Use Case
914
915     * [POLICY-38] - This epic covers the work required to support service distribution by SDC.
916
917     * [POLICY-39] - This epic covers the work required to support the Policy Platform during runtime.
918         - POLICY-61  vFW Use Case - Runtime
919         - POLICY-62  vDNS Use Case - Runtime
920         - POLICY-59  vCPE Use Case - Runtime
921         - POLICY-60  VOLTE Use Case - Runtime
922         - POLICY-51  Runtime Policy Update Support
923         - POLICY-328  vDNS Use Case - Runtime Testing
924         - POLICY-324  vFW Use Case - Runtime Testing
925         - POLICY-320  VOLTE Use Case - Runtime Testing
926         - POLICY-316  vCPE Use Case - Runtime Testing
927
928     * [POLICY-76] - This epic covers the body of work involved in supporting R1 Amsterdam Milestone Release Planning Milestone Tasks.
929         - POLICY-77  Functional Test case definition for Control Loops
930         - POLICY-387  Deliver the released policy artifacts
931
932
933 **Bug Fixes**
934     - This is technically the first release of POLICY, previous release was the seed code contribution. As such, the defects fixed in this release were raised during the course of the release. Anything not closed is captured below under Known Issues. For a list of defects fixed in the Amsterdam release, refer to `JiraPolicyAmsterdam`_.
935
936
937 **Known Issues**
938     - The operational policy template has been tested with the vFW, vCPE, vDNS and VOLTE use cases.  Additional development may/may not be required for other scenarios.
939
940     - For vLBS Use Case, the following steps are required to setup the service instance:
941         -  Create a Service Instance via VID.
942         -  Create a VNF Instance via VID.
943         -  Preload SDNC with topology data used for the actual VNF instantiation (both base and DNS scaling modules). NOTE: you may want to set "vlb_name_0" in the base VF module data to something unique. This is the vLB server name that DCAE will pass to Policy during closed loop. If the same name is used multiple times, the Policy name-query to AAI will show multiple entries, one for each occurrence of that vLB VM name in the OpenStack zone. Note that this is not a limitation, typically server names in a domain are supposed to be unique.
944         -  Instantiate the base VF module (vLB, vPacketGen, and one vDNS) via VID. NOTE: The name of the VF module MUST start with ``Vfmodule_``. The same name MUST appear in the SDNC preload of the base VF module topology. We'll relax this naming requirement for Beijing Release.
945         -  Run heatbridge from the Robot VM using ``Vfmodule_`` _ as stack name (it is the actual stack name in OpenStack)
946         -  Populate AAI with a dummy VF module for vDNS scaling.
947
948 **Security Issues**
949     - None at this time
950
951 **Other**
952     - None at this time
953
954
955 .. Links to jira release notes
956
957 .. _JiraPolicyElAlto: https://jira.onap.org/secure/ReleaseNote.jspa?projectId=10106&version=10728
958 .. _JiraPolicyDublin: https://jira.onap.org/secure/ReleaseNote.jspa?projectId=10106&version=10464
959 .. _JiraPolicyCasablanca: https://jira.onap.org/secure/ReleaseNote.jspa?projectId=10106&version=10446
960 .. _JiraPolicyBeijing: https://jira.onap.org/secure/ReleaseNote.jspa?projectId=10106&version=10349
961 .. _JiraPolicyAmsterdam: https://jira.onap.org/secure/ReleaseNote.jspa?projectId=10106&version=10300
962
963 .. Links to Project related pages
964
965 .. _POLICY project page: https://wiki.onap.org/display/DW/Policy+Framework+Project
966 .. _Passing Badge information for POLICY: https://bestpractices.coreinfrastructure.org/en/projects/1614
967
968
969 .. note
970 ..      CHANGE  HISTORY
971 ..      09/19/2019 - Updated for El Alto Release.
972 ..      05/16/2019 - Updated for Dublin Release.
973 ..      01/17/2019 - Updated for Casablanca Maintenance Release.
974 ..      11/19/2018 - Updated for Casablanca.  Also, fixed bugs is a list of bugs where the "Affected Version" is Beijing.
975 ..              Changed version number to use ONAP versions.
976 ..      10/08/2018 - Initial document for Casablanca release.
977 ..      05/29/2018 - Information for Beijing release.
978 ..      03/22/2018 - Initial document for Beijing release.
979 ..      01/15/2018 - Added change for version 1.1.3 to the Amsterdam branch.  Also corrected prior version (1.2.0) to (1.1.1)
980 ..              Also, Set up initial information for Beijing.
981 ..              Excluded POLICY-454 from bug list since it doesn't apply to Beijing per Jorge.
982
983
984 End of Release Notes
985
986 .. How to notes for SS
987 ..      For initial document: list epic and user stories for each, list user stories with no epics.
988 ..      For Bugs section, list bugs where Affected Version is a prior release (Casablanca, Beijing etc), Fixed Version is the current release (Dublin), Resolution is done.
989 ..      For Known issues, list bugs that are slotted for a future release.