APPC R5 release note
[appc.git] / docs / release-notes.rst
1 .. ============LICENSE_START==========================================
2 .. ===================================================================
3 .. Copyright © 2017-2019 AT&T Intellectual Property. All rights reserved.
4 .. ===================================================================
5 .. Licensed under the Creative Commons License, Attribution 4.0 Intl.  (the "License");
6 .. you may not use this documentation except in compliance with the License.
7 .. You may obtain a copy of the License at
8 ..
9 ..  https://creativecommons.org/licenses/by/4.0/
10 ..
11 .. Unless required by applicable law or agreed to in writing, software
12 .. distributed under the License is distributed on an "AS IS" BASIS,
13 .. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 .. See the License for the specific language governing permissions and
15 .. limitations under the License.
16 .. ============LICENSE_END============================================
17
18 Release Notes
19 =============
20
21 .. note
22 ..      * This Release Notes must be updated each time the team decides to Release new artifacts.
23 ..      * The scope of this Release Notes is for this particular component. In other words, each ONAP component has its Release Notes.
24 ..      * This Release Notes is cumulative, the most recently Released artifact is made visible in the top of this Release Notes.
25 ..      * Except the date and the version number, all the other sections are optional but there must be at least one section describing the purpose of this new release.
26 ..      * This note must be removed after content has been added.
27
28
29 Version: 1.6.4
30 --------------
31
32 :Release Date: 2019-9-30
33
34 The El Alto added the following feature, bug fixes and security enhancements:
35
36 **New Features**
37
38          - Upgraded OpenDaylight (ODL) version to Fluorine SR2
39
40 **Bug Fixes**
41
42       - `APPC-1319 <https://jira.onap.org/browse/APPC-1319>`_ - apidoc shows ""undefined"" when netconf successfully mounted
43       - `APPC-1584 <https://jira.onap.org/browse/APPC-1584>`_ - Incorrect Package name in Audit Directed Graph
44       - `APPC-1587 <https://jira.onap.org/browse/APPC-1587>`_ - Publish config field mismatch in onap documentaion & Audit DG
45       - `APPC-1588 <https://jira.onap.org/browse/APPC-1588>`_ - Publish config filed missing in Sync LCM in documentation
46       - `APPC-1589 <https://jira.onap.org/browse/APPC-1589>`_ - Cvaas directory is not mounted in docker image,Dublin Release
47       - `APPC-1590 <https://jira.onap.org/browse/APPC-1590>`_ - Sync & Audit Payload to include the file name
48       - `APPC-1604 <https://jira.onap.org/browse/APPC-1604>`_ - APPC Not Picking up Mesasges from Dmaap
49       - `APPC-1613 <https://jira.onap.org/browse/APPC-1613>`_ - Exception for LCM request with parameter read from A&AI
50       - `APPC-1627 <https://jira.onap.org/browse/APPC-1627>`_ - Daexim directory owned by root - access denied during boot
51       - `APPC-1634 <https://jira.onap.org/browse/APPC-1634>`_ - Mark the fields transient of RequestFailedException.java Serializable class to full-fill Serializable class contract,
52       - `APPC-1635 <https://jira.onap.org/browse/APPC-1635>`_ - Mark the fields transient of EventMessage.java Serializable class to full-fill Serializable class contract
53       - `APPC-1639 <https://jira.onap.org/browse/APPC-1639>`_ - Error during CDT SQL query
54       - `APPC-1713 <https://jira.onap.org/browse/APPC-1713>`_ - Appc eelf logging resource bundle error after ODL upgrade
55       - `APPC-1736 <https://jira.onap.org/browse/APPC-1736>`_ - change mountpoint for pax property file
56
57 **Security Notes**
58
59 *Fixed Security Issues*
60
61       - `OJSI-25 <https://jira.onap.org/browse/OJSI-25>`_ - SQL Injection in APPC (CVE-2019-12316)
62       - `OJSI-104 <https://jira.onap.org/browse/OJSI-104>`_ - appc exposes plain text HTTP endpoint using port 30211
63       - `OJSI-113 <https://jira.onap.org/browse/OJSI-113>`_ - appc exposes plain text HTTP endpoint using port 30230
64       - `OJSI-113 <https://jira.onap.org/browse/OJSI-146>`_ - appc-cdt exposes plain text HTTP endpoint using port 30289
65       - `OJSI-176 <https://jira.onap.org/browse/OJSI-176>`_ - dev-appc-appc exposes JDWP on port 1830 which allows for arbitrary code execution
66       - `OJSI-177 <https://jira.onap.org/browse/OJSI-177>`_ - dev-appc-appc exposes JDWP on port 8101 which allows for arbitrary code execution
67       - `OJSI-185 <https://jira.onap.org/browse/OJSI-185>`_ - appc exposes ssh service on port 30231
68
69 Version: 1.5.3
70 --------------
71
72 :Release Date: 2019-6-19
73
74 **New Features**
75
76 The Dublin release added the following functionality:
77
78          - Upgraded OpenDaylight (ODL) version to Fluorine SR1
79
80          - Migrated CDT docker to node.js base docker image
81
82          - Added support for the following LCM actions (a desciption of all of the above LCM actions can be found in the APPC LCM API Guide on readthedoc):
83
84          - To support in-place software upgrade:
85
86                 - DistributeTrafficCheck
87
88          - Added Multiple standalone ansible servers support
89
90          - Additional contributions as part of Dublin include:
91
92                 - Test Coverage increased to 83.8%
93
94                 - Support for Platform Maturity requirements, including:
95
96                    - Security
97
98                          - Applicaton runs as non-root user in all APPC dockers
99
100                          - Migrated to https for CDT GUI
101
102                    - Stability
103
104                           - Executed 72 hour stability test on both Heat and OOM deployed environments using JMeter to drive a steady set of transactions over the 72 hour period (see the following wiki page for more details: https://wiki.onap.org/display/DW/APPC+72+Hour+Stability+Testing+Dublin )
105
106                    - Resiliency
107
108                           - Support for OOM deployment, which enables resiliency via use of Kubernetes (see https://wiki.onap.org/display/DW/APPC+Resiliency for additional details)
109
110
111 **Bug Fixes**
112
113       - `APPC-1242 <https://jira.onap.org/browse/APPC-1242>`_ - vFWCL ModifyConfig only works on one node in an APPC cluster.
114       - `APPC-1263 <https://jira.onap.org/browse/APPC-1263>`_ - Two methods of Artifact Transformer in appc-config-params will always return null.
115       - `APPC-1264 <https://jira.onap.org/browse/APPC-1264>`_ - Errors in unit tests in config-generator package.
116       - `APPC-1270 <https://jira.onap.org/browse/APPC-1270>`_ - Unit tests in ccadaptor code not testing correctly.
117       - `APPC-1274 <https://jira.onap.org/browse/APPC-1274>`_ - APPC DG : RestAdapter plugin : lack of documentation.
118       - `APPC-1303 <https://jira.onap.org/browse/APPC-1303>`_ - DependencyModelParser works toward incorrectly spelled property name.
119       - `APPC-1331 <https://jira.onap.org/browse/APPC-1331>`_ - Test cases in appc-common cause intermittent failures.
120       - `APPC-1367 <https://jira.onap.org/browse/APPC-1367>`_ - APPC returns UnknownHostException during Netconf operations.
121       - `APPC-1435 <https://jira.onap.org/browse/APPC-1435>`_ - APPC Ansible Server keeps crashing.
122       - `APPC-1441 <https://jira.onap.org/browse/APPC-1441>`_ - incompatible cherrypy version in ansible server container.
123       - `APPC-1463 <https://jira.onap.org/browse/APPC-1463>`_ - Error in ControllerImpl class.
124       - `APPC-1472 <https://jira.onap.org/browse/APPC-1472>`_ - Not possible to call ansible healthcheck from SO VnfConfigUpdate workflow.
125       - `APPC-1479 <https://jira.onap.org/browse/APPC-1479>`_ - Logic error in ScheduledPublishingPolicyImpl.
126       - `APPC-1480 <https://jira.onap.org/browse/APPC-1480>`_ - MetricRegistryImpl code has problems with casting.
127       - `APPC-1489 <https://jira.onap.org/browse/APPC-1489>`_ - SO VnfConfigUpdate workflow fails with timeout error.
128       - `APPC-1528 <https://jira.onap.org/browse/APPC-1528>`_ - APPC DB table creation failed.
129       - `APPC-1537 <https://jira.onap.org/browse/APPC-1537>`_ - UNIQUE KEY is too long in DEVICE_AUTHENTICATION.
130       - `APPC-1542 <https://jira.onap.org/browse/APPC-1542>`_ - ExecuteNodeActionImpl is not instatiate.
131       - `APPC-1545 <https://jira.onap.org/browse/APPC-1545>`_ - Problem with Ansible handling in EncryptionToolDGWrapper.
132       - `APPC-1548 <https://jira.onap.org/browse/APPC-1548>`_ - "MariaDB 10.2.4 adds ""ROWS"" as an SQL keyword".
133       - `APPC-1574 <https://jira.onap.org/browse/APPC-1574>`_ - FileParameters not supported for Ansible LCM action.
134       - `APPC-1576 <https://jira.onap.org/browse/APPC-1576>`_ - FileParameters content is wrongly processed.
135       - `APPC-1577 <https://jira.onap.org/browse/APPC-1577>`_ - Ansible Server  playbook execution does not work.
136       - `APPC-1583 <https://jira.onap.org/browse/APPC-1583>`_ - ansible user privileges problem.
137       - `APPC-1584 <https://jira.onap.org/browse/APPC-1584>`_ - Incorrect Package name in Audit Directed Graph.
138       - `APPC-1589 <https://jira.onap.org/browse/APPC-1589>`_ - Cvaas directory is not mounted in docker image.
139       - `APPC-1593 <https://jira.onap.org/browse/APPC-1593>`_ - CDT doesn't push info to DB.
140       - `APPC-1600 <https://jira.onap.org/browse/APPC-1600>`_ - "APPC DB doesn't have any artifact for ""artifact-type""=""APPC-CONFIG""".
141       - `APPC-1604 <https://jira.onap.org/browse/APPC-1604>`_ - APPC Not Picking up Mesasges from Dmaap.
142       - `APPC-1610 <https://jira.onap.org/browse/APPC-1610>`_ - Config vFW Netconf URI should be stream-count:stream-count intead of sample-plugin:pg-streams.
143       - `APPC-1611 <https://jira.onap.org/browse/APPC-1611>`_ - VNF_DG_MAPPING and PROCESS_FLOW_REFERENCE tables are empty.
144       - `APPC-1612 <https://jira.onap.org/browse/APPC-1612>`_ - InventoryNames parameter support for APPC Ansible LCM.
145
146 **Known Issues**
147
148       - `APPC-1613 <https://jira.onap.org/browse/APPC-1613>`_ - Exception for LCM request with parameter read from A&AI.
149          - to work around this is to switch to the  fixed parameter in the template or passed as configuration parameter in stead of using A&AI that APPC received the value from the request.
150
151 **Security Notes**
152
153 *Fixed Security Issues*
154
155       - `OJSI-146 <https://jira.onap.org/browse/OJSI-146>`_ - In default deployment APPC (appc-cdt) exposes HTTP port 30289 outside of cluster.
156       - `OJSI-104 <https://jira.onap.org/browse/OJSI-104>`_ - In default deployment APPC (appc) exposes HTTP port 30211 outside of cluster.
157
158 *Known Security Issues*
159
160       - CVE-2019-12316 `OJSI-25 <https://jira.onap.org/browse/OJSI-25>`_ - SQL Injection in APPC
161       - `OJSI-29 <https://jira.onap.org/browse/OJSI-29>`_ - Unsecured Swagger UI Interface in AAPC
162       - CVE-2019-12124 `OJSI-63 <https://jira.onap.org/browse/OJSI-63>`_ - APPC exposes Jolokia Interface which allows to read and overwrite any arbitrary file
163       - `OJSI-95 <https://jira.onap.org/browse/OJSI-95>`_ - appc-cdt allows to impersonate any user by setting USER_ID
164       - `OJSI-112 <https://jira.onap.org/browse/OJSI-112>`_ - In default deployment APPC (appc-dgbuilder) exposes HTTP port 30228 outside of cluster.
165       - `OJSI-113 <https://jira.onap.org/browse/OJSI-113>`_ - In default deployment APPC (appc) exposes HTTP port 30230 outside of cluster.
166       - `OJSI-185 <https://jira.onap.org/browse/OJSI-185>`_ - appc exposes ssh service on port 30231
167
168 *Known Vulnerabilities in Used Modules*
169
170 Quick Links:
171
172         - `APPC project page <https://wiki.onap.org/display/DW/Application+Controller+Project>`_
173
174         - `Passing Level Badge information for APPC <https://bestpractices.coreinfrastructure.org/en/projects/1579>`_
175
176         - `Silver Level Badge information for APPC <https://bestpractices.coreinfrastructure.org/en/projects/1579?criteria_level=1>`_
177
178         - `Project Vulnerability Review Table for APPC <https://wiki.onap.org/pages/viewpage.action?pageId=51282466>`_
179
180 **Other**
181
182 - Limitations, Constraints and other worthy notes:
183
184         - OpenStack Restriction:
185
186                 - Currently APPC only supports OpenStack.
187
188                 - Admin level access for Tenant level operations.
189
190                 - OpenStack Hypervisorcheck is turned off by default.
191
192
193 Version: 1.4.4
194 --------------
195
196 :Release Date: 2019-1-31
197
198
199 **Bug Fixes**
200
201 The Casablanca maintenance release fixed the following bugs:
202
203         - `APPC-1247 <https://jira.onap.org/browse/APPC-1247>`_ - java.lang.NoClassDefFoundError when publishing DMAAP message
204
205         - `CCSDK-741 <https://jira.onap.org/browse/CCSDK-741>`_ - Removed Work-around required for vCPE use case to correct the error described in CCSDK ticket.
206
207 Special Note for `APPC-1367 <https://jira.onap.org/browse/APPC-1367>`_ - APPC fails healthcheck with 404 error:
208
209        During testing, we found there is a timing issue. When using OOM to deploy to k8s environment the clustered MariaDB database is not accessible at the time when the APPC pod is trying to insert the DG into MariaDb. This would cause the healthcheck issue. The workaround to solve this issue is redeploying the APPC pod.
210
211 Version: 1.4.3
212 --------------
213
214 :Release Date: 2018-11-30
215
216
217 **New Features**
218
219 The Casablanca release added the following functionality:
220
221          - Upgraded OpenDaylight (ODL) version to Oxygen
222
223          - Upgraded to Karaf 4.1.5
224
225          - Migrated DB from mysql to maria db with galeira, tested on k8s clustering platform
226
227          - Added an ansible docker container, tested for DistributeTraffic LCM action
228
229          - Added support for the following LCM actions (a desciption of all of the above LCM actions can be found in the APPC LCM API Guide on readthedoc):
230
231                 - To support in-place software upgrade:
232
233                   - DistributeTraffic
234
235                 - To support storage management in OpenStack
236
237                   - Reboot with hard and soft option
238
239          - Additional contributions as part of Casablanca include:
240
241                 - Support for Platform Maturity requirements, including:
242
243                    - Increased security
244
245                           - Enabled bath feature from AAF, CDT GUI and APIDOC can be used when AAF enbled  (see `APPC-1237 <https://jira.onap.org/browse/APPC-1237>`_ for additional details)
246                           - Addressed critical alerts reported via Nexus IQ to the extent possible (see `APPC-770 <https://jira.onap.org/browse/APPC-770>`_ and wiki: https://wiki.onap.org/pages/viewpage.action?pageId=40927352 )
247
248                    - Stability
249
250                           - Executed 72 hour stability test on both Heat and OOM deployed environments using JMeter to drive a steady set of transactions over the 72 hour period (see the following wiki page for more details: https://wiki.onap.org/display/DW/APPC+72+Hour+Stability+Testing+Casablanca )
251
252                    - Resiliency
253
254                           - Support for OOM deployment, which enables resiliency via use of Kubernetes (see https://wiki.onap.org/display/DW/APPC+Resiliency for additional details)
255
256
257 **Bug Fixes**
258
259         - `APPC-1009 <https://jira.onap.org/browse/APPC-1009>`_ - An incorrect regex in appc-provider-model was causing intermittent unit test failures. This is now fixed.
260
261         - `APPC-1021 <https://jira.onap.org/browse/APPC-1021>`_ - An unnecessary pseudoterminal allocation for SSH connection was causing problems when trying to connect to a ConfD NETCONF Server.
262
263         - `APPC-1107 <https://jira.onap.org/browse/APPC-1107>`_ - Database problems were causing artifacts created in CDT to not save to APPC. These have been fixed.
264
265         - `APPC-1111 <https://jira.onap.org/browse/APPC-1111>`_ - TestDmaapConsumerImpl.testFetch method was taking 130+ seconds to run test. Build time is shorter now.
266
267         - `APPC-1112 <https://jira.onap.org/browse/APPC-1112>`_ - Several unit tests in TimeTest.java had intermittent failures.
268
269         - `APPC-1157 <https://jira.onap.org/browse/APPC-1157>`_ - Mockito package was removed from the APPC client jar. It was causing conflicts with other applications using APPC client library.
270
271         - `APPC-1184 <https://jira.onap.org/browse/APPC-1184>`_ - The APPC LCM API documentation was outdated and did not reflect the correct endpoints.
272
273         - `APPC-1186 <https://jira.onap.org/browse/APPC-1186>`_ - VNF-Level OpenStack actions such as Restart were failing if the optional identity-url was omitted from the payload of the request.
274
275         - `APPC-1188 <https://jira.onap.org/browse/APPC-1188>`_ - Exception was occurring if force flag was set to false in a request from policy.
276
277         - `APPC-1192 <https://jira.onap.org/browse/APPC-1192>`_ - CDT was not updating the DEVICE_INTERFACE_PROTOCOL table, so APPC was unable to get the protocol during lcm actions.
278
279         - `APPC-1205 <https://jira.onap.org/browse/APPC-1205>`_ - Artifacts manually entered into CDT were not saving correctly, while artifacts created by uploading a template were.
280
281         - `APPC-1207 <https://jira.onap.org/browse/APPC-1207>`_ - Logging constants were missing in several features, causing incorrect logging messages.
282
283         - `APPC-1218 <https://jira.onap.org/browse/APPC-1218>`_ - Aai connection had certificate errors and path build exceptions.
284
285         - `APPC-1224 <https://jira.onap.org/browse/APPC-1224>`_ - SubRequestID was not being relayed back to Policy in DMaaP Response messages.
286
287         - `APPC-1226 <https://jira.onap.org/browse/APPC-1226>`_ - Mock code to mimic backend execution for Reboot was causing problems and has been removed.
288
289         - `APPC-1227 <https://jira.onap.org/browse/APPC-1227>`_ - APPC was not able to read VNF templates created with CDT.
290
291         - `APPC-1230 <https://jira.onap.org/browse/APPC-1230>`_ - APPC was using the GenericRestart DG instead of DGOrchestrator.
292
293         - `APPC-1231 <https://jira.onap.org/browse/APPC-1231>`_ - APPC was not updating the TRANSACTIONS table correctly when an operation completed.
294
295         - `APPC-1233 <https://jira.onap.org/browse/APPC-1233>`_ - DGOrchestrator was incorrectly being given an output.payload parameter instead of output-payload.
296
297         - `APPC-1234 <https://jira.onap.org/browse/APPC-1234>`_ - AppC Open Day Light login was responding 401 unauthorized when AAF was enabled.
298
299         - `APPC-1237 <https://jira.onap.org/browse/APPC-1237>`_ - APPC was not properly url-encoding AAF credentials.
300
301         - `APPC-1243 <https://jira.onap.org/browse/APPC-1243>`_ - Container was not preserving mysql data after kubectl edit statefulset.
302
303         - `APPC-1244 <https://jira.onap.org/browse/APPC-1244>`_ - Ansible Server would never start in oom.
304
305 **Known Issues**
306
307         - `APPC-1247 <https://jira.onap.org/browse/APPC-1247>`_ - java.lang.NoClassDefFoundError when publishing DMAAP message
308             - This issue is relevant during the vCPE use case.
309             - Due to this defect, the VM will perform four start/stop sequences, instead of the normal one.
310             - After the four start/stop sequences, the VM will be left in the correct state that it should be in.
311
312         - Work-around required for vCPE use case to correct the error described in: `CCSDK-741 <https://jira.onap.org/browse/CCSDK-741>`_
313             - CCSDK aai adapter doesn't recognize generic-vnf attribute in the response, as it is not defined by aai_schema XSD
314             - To work around this, several steps must be performed as described here:
315
316                 1. Add a restapi template file into the appc docker containers
317                     a. Enter the appc docker container (docker exec... or kubectl exec...)
318                     b. Create a directory: /opt/onap/appc/templates
319                     c. Download this file `aai-named-query.json <https://gerrit.onap.org/r/gitweb?p=appc/deployment.git;a=blob_plain;f=vcpe-workaround-files/aai-named-query.json;hb=refs/heads/casablanca>`_ and place it in that directory
320                 2. Replace the generic restart DG with a new one
321                     a. Download the `APPC_Generic_Restart.xml <https://gerrit.onap.org/r/gitweb?p=appc/deployment.git;a=blob_plain;f=vcpe-workaround-files/APPC_method_Generic_Restart_3.0.0.xml;hb=refs/heads/casablanca>`_
322                     b. Edit the file. Find the parameter definition lines for restapiUrl, restapiUser, restapiPassword (lines 52-54) and replace these with the correct values for your aai server.
323                     c. Copy this file into the appc docker containers to the /opt/onap/appc/svclogic/graphs directory (you will be replacing the old version of the file with this copy)
324                 3. Load the new DG file
325                     a. In the appc docker containers, enter the "/opt/appc/svclogic/bin directory
326                     b. Run install-converted-dgs.sh
327
328 Quick Links:
329
330         - `APPC project page <https://wiki.onap.org/display/DW/Application+Controller+Project>`_
331
332         - `Passing Badge information for APPC <https://bestpractices.coreinfrastructure.org/en/projects/1579>`_
333
334         - `Project Vulnerability Review Table for APPC <https://wiki.onap.org/pages/viewpage.action?pageId=40927352>`_
335
336 **Other**
337
338 - Limitations, Constraints and other worthy notes:
339
340         - OpenStack Restriction:
341
342                 - Currently APPC only supports OpenStack.
343
344                 - Admin level access for Tenant level operations.
345
346                 - OpenStack Hypervisorcheck is turned off by default.
347
348
349         - Integration with MultiCloud is supported for Standalone Restart (i.e., not via DGOrchestrator). For any other action, such as Stop, Start, etc.. via MultiCloud requires the MultiCloud identity URL to be either passed in the payload or defined in appc.properties.
350
351
352
353 Version: 1.3.0
354 --------------
355
356
357 :Release Date: 2018-06-07
358
359
360 **New Features**
361
362 The Beijing release added the following functionality:
363
364          - Added support for the following LCM actions (a desciption of all of the above LCM actions can be found in the APPC LCM API Guide on readthedoc):
365
366                 - To support in-place software upgrade:
367
368                   - QuiesceTraffic
369                   - ResumeTraffic
370                   - UpgradeSoftware
371                   - UpgradePreCheck
372                   - UpgradePostCheck
373                   - UpgradeBackup
374                   - UpgradeBackout
375
376                 - To support storage management in OpenStack
377
378                   - AttachVolume
379                   - DetachVolume
380
381                 - To support Manual Scale Out use case
382
383                   - ConfigScaleOut (more details can be found in teh APPC Epic: `APPC-431 <https://jira.onap.org/browse/APPC-431>`_ )
384
385                 - To support general operations
386
387                   - ActionStatus
388
389
390          - Contributed the APPC Controller Design Tool (CDT), which enables self-serve capabilities by allowing users to model their VNF/VNFC for consumption by APPC to use in the execution of requests to perform life cycle management activities.
391
392                 - More details on the APPC CDT can be found in the APPC CDT User Guide in readthedocs.
393                 - Additional information on how the APPC CDT tool was used to model the vLB and build teh artifacts needed by APPC to execute teh ConfigScaleOut action can be found at the following wiki pages: https://wiki.onap.org/pages/viewpage.action?pageId=33065185
394
395          - Additional contributions as part of Beijing include:
396
397                 - Support for Platform Maturity requirements, including:
398
399                    - Increased security
400
401                           - Added security to ODL web-based API access via AAF (see `APPC-404 <https://jira.onap.org/browse/APPC-404>`_ for additional details)
402                           - Addressed critical alerts reported via Nexus IQ to the extent possible (see `APPC-656 <https://jira.onap.org/browse/APPC-656>`_ )
403
404                    - Stability
405
406                           - Executed 72 hour stability test on both Heat and OOM deployed environments using JMeter to drive a steady set of transactions over the 72 hour period (see the following wiki page for more details: https://wiki.onap.org/display/DW/ONAP+APPC+72+Hour+Stability+Test+Results )
407
408                    - Resiliency
409
410                           - Support for OOM deployment, which enables resiliency via use of Kubernetes (see `APPC-414 <https://jira.onap.org/browse/APPC-414>`_ for additional details)
411
412                 - Upgraded OpenDaylight (ODL) version to Nitrogen
413
414
415
416
417 **Bug Fixes**
418
419 The following defects that were documented as known issues in Amsterdam have been fixed in Beijing release:
420
421         - `APPC-316 <https://jira.onap.org/browse/APPC-316>`_ - Null payload issue for Stop Application
422
423         - `APPC-315 <https://jira.onap.org/browse/APPC-315>`_ - appc-request-handler is giving error java.lang.NoClassDefFoundError
424
425         - `APPC-312 <https://jira.onap.org/browse/APPC-312>`_ - APPC request is going to wrong request handler and rejecting request
426
427         - `APPC-311 <https://jira.onap.org/browse/APPC-311>`_ - The APPC LCM Provider Healthcheck
428
429         - `APPC-309 <https://jira.onap.org/browse/APPC-309>`_ - APPC LCM Provider URL missing in appc.properties.
430
431         - `APPC-307 <https://jira.onap.org/browse/APPC-307>`_ - Embed jackson-annotations dependency in appc-dg-common during run-time
432
433         - `APPC-276 <https://jira.onap.org/browse/APPC-276>`_ - Some Junit are breaking convention causing excessively long build
434
435         - `APPC-248 <https://jira.onap.org/browse/APPC-248>`_ - There is an compatibility issue between PowerMock and Jacoco which causes Sonar coverage not to be captured. Fix is to move to Mockito.
436
437
438 **Known Issues**
439
440 The following issues remain open at the end of Beijing release. Please refer to Jira for further details and workaround, if available.
441
442         - `APPC-987 <https://jira.onap.org/browse/APPC-987>`_ - APPC Investigate TRANSACTION Table Aging. See **Other** section for further information
443
444         - `APPC-977 <https://jira.onap.org/browse/APPC-977>`_ - Procedures needed for enabling AAF support in OOM. See **Other** section for further information
445
446         - `APPC-973 <https://jira.onap.org/browse/APPC-973>`_ - Fix delimiter string for xml-download CDT action
447
448         - `APPC-940 <https://jira.onap.org/browse/APPC-940>`_ - APPC CDT Tool is not updating appc_southbound.properties with the URL supplied for REST
449
450         - `APPC-929 <https://jira.onap.org/browse/APPC-929>`_ - LCM API - ConfigScaleOut- Payload parameter to be manadatory set to "true"
451
452         - `APPC-912 <https://jira.onap.org/browse/APPC-912>`_ - MalformedChunkCodingException in MDSALStoreImpl.getNodeName
453
454         - `APPC-892 <https://jira.onap.org/browse/APPC-892>`_ - Cntl+4 to highlight and replace feature-Textbox is accepting space  and able to submit without giving any value
455
456         - `APPC-869 <https://jira.onap.org/browse/APPC-869>`_ - VM Snapshot error occurs during image validation.
457
458         - `APPC-814 <https://jira.onap.org/browse/APPC-814>`_ - Update openecomp-tosca-datatype namespace
459
460         - `APPC-340 <https://jira.onap.org/browse/APPC-340>`_ - APPC rejecting request even for decimal of millisecond timestamp difference
461
462         - `APPC-154 <https://jira.onap.org/browse/APPC-154>`_ - Logging issue - Request REST API of APPC has RequestID (MDC) in Body or Payload section instead of Header.
463
464
465 **Security Notes**
466
467 APPC 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 APPC open Critical security vulnerabilities and their risk assessment have been documented as part of the `project <https://wiki.onap.org/pages/viewpage.action?pageId=25438971>`_.
468
469 Additionally, communication over DMaaP currently does not use secure topics in this release. This has dependency on DMaaP to enable.
470
471
472 Quick Links:
473         - `APPC project page <https://wiki.onap.org/display/DW/Application+Controller+Project>`_
474
475         - `Passing Badge information for APPC <https://bestpractices.coreinfrastructure.org/en/projects/1579>`_
476
477         - `Project Vulnerability Review Table for APPC <https://wiki.onap.org/pages/viewpage.action?pageId=25438971>`_
478
479 **Other**
480
481 - Limitations, Constraints and other worthy notes
482
483         - An issue was discovered with usage of AAF in an OOM deployed environment after the Beijing release was created. The issue was twofold (tracked under `APPC-977 <https://jira.onap.org/browse/APPC-977>`_):
484
485              - Needed APPC configuration files were missing in Beijing OOM , and
486              - AAF updated their certificates to require 2way certs, which requires APPC updates
487
488           Additionally, in a Heat deployed environment, a manual workaround will be required to authorize with AAF if they are using 2way certificates.  For instruction on workaround steps needed depending on type of deployment, please refer to the following wiki: https://wiki.onap.org/display/DW/AAF+Integration+with+APPC.
489
490         - During the testing of the vCPE/vMUX closed loop scenarios in an OOM deployed environment, an issue was encountered where transactions were not being deleted from the TRANSACTION table and was blocking other Restart request from completing successfully (tracked under `APPC-987 <https://jira.onap.org/browse/APPC-987>`_). A workaround is available and documented in the Jira ticket.
491
492         - It is impossible for us to test all aspect of the application. Scope of testing done in Beijing is captured on the following wiki:   https://wiki.onap.org/display/DW/APPC+Beijing+Testing+Scope+and+Status
493
494         - Currently APPC only supports OpenStack
495
496         - OpenStack Hypervisorcheck is turned off by default. If you want to invoke this functionality via the appc.properties, you need to enable it and ensure you have Admin level access to OpenStack.
497
498         - Integration with MultiCloud is supported for Standalone Restart (i.e., not via DGOrchestrator). For any other action, such as Stop, Start, etc.. via MultiCloud requires the MultiCloud identity URL to be either passed in the payload or defined in appc.properties.
499
500         - APPC needs Admin level access for Tenant level operations.
501
502         - Currently, the "ModifyConfig" API and the implementation in the Master Directed Graph is only designed to work with the vFW Closed-Loop Demo.
503
504
505 Version: 1.2.0
506 --------------
507
508 :Release Date: 2017-11-16
509
510
511 **New Features**
512
513 The Amsterdam release continued evolving the design driven architecture of and functionality for APPC.
514 APPC aims to be completely agnostic and make no assumption about the network.
515
516 The main goal of the Amsterdam release was to:
517  - Support the vCPE use case as part of the closed loop action to perform a Restart on the vGMUX
518  - Demonstrate integration with MultiCloud as a proxy to OpenStack
519  - Continue supporting the vFW closed loop use case as part of regression from the seed contribution.
520
521 Other key features added in this release include:
522  - Support for Ansible
523    - The Ansible Extension for APP-C allows management of VNFs that support Ansible. Ansible is a an open-source VNF management framework that provides an almost cli like set of tools in a structured form. APPC supports Ansible through the following three additions: An Ansible server interface, Ansible Adapter, and Ansible Directed Graph.
524  - Support for Chef
525    - The Chef Extension for APPC allows management of VNFs that support Chef through the following two additions: a Chef Adapter and Chef Directed Graph.
526  - LifeCycle Management (LCM) APIs via standalone DGs or via the DGOrchestrator architecture to trigger actions on VMs, VNFs, or VNFCs
527  - OAM APIs to manage the APPC application itself
528  - Upgrade of OpenDaylight to Carbon version
529
530
531
532 **Bug Fixes**
533
534         - This is technically the first release of APPC, 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. If you want to review the defects fixed in the Amsterdam release, refer to `Jira <https://jira.onap.org/issues/?filter=10570&jql=project%20%3D%20APPC%20AND%20issuetype%20%3D%20Bug%20AND%20status%20%3D%20Closed%20AND%20fixVersion%20%3D%20%22Amsterdam%20Release%22>`_.
535
536         - Please also refer to the notes below. Given the timeframe and resource limitations, not all functions of the release could be validated. Items that were validated are documented on the wiki at the link provide below. If you find issues in the course of your work with APPC, please open a defect in the Application Controller project of Jira (jira.onpa.org)
537
538 **Known Issues**
539
540         - `APPC-312 <https://jira.onap.org/browse/APPC-312>`_ - APPC request is going to wrong request handler and rejecting request. Configure request failing with following error: ``REJECTED Action Configure is not supported on VM level``.
541
542         - `APPC-311 <https://jira.onap.org/browse/APPC-311>`_ - The APPC LCM Provider Healthcheck, which does a healthceck on a VNF, is failing. No known workaround at this time.
543
544         - `APPC-309 <https://jira.onap.org/browse/APPC-309>`_ - The property: ``appc.LCM.provider.url=http://127.0.0.1:8181/restconf/operations/appc-provider-lcm`` is missing from appc.properties in the appc deployment.  The property can be manually added as a workaround, then bounce the appc container.
545
546         - `APPC-307 <https://jira.onap.org/browse/APPC-307>`_ - Missing jackson-annotations dependency in appc-dg-common - This issue results in Rebuild operation via the APPC Provider not to work. Use instead Rebuild via the APPC LCM Provider using DGOrchestrator.
547
548         - `APPC-276 <https://jira.onap.org/browse/APPC-276>`_ - A number of junit testcases need to be reworked because they are causing APPC builds to take much  longer to complete. This issue does not cause the build to fail, just take longer. You can comment out these junit in your local build if this is a problem.
549
550         - `APPC-248 <https://jira.onap.org/browse/APPC-248>`_ - There is an compatibility issue between PowerMock and Jacoco which causes Sonar coverage not to be captured. There is no functional impact on APPC.
551
552         - `APPC-154 <https://jira.onap.org/browse/APPC-154>`_ - Logging issue - Request REST API of APPC has RequestID (MDC) in Body or Payload section instead of Header.
553
554
555 **Security Issues**
556         - Communication over DMaaP currently does not use secure topics in this release.
557         - AAF is deactivated by default in this release and was not validated or committed as part of the Amsterdam Release.
558
559
560 **Other**
561
562 - Limitations, Constraints and other worthy notes
563
564   - LCM Healthcheck and Configure actions do not work.
565   - The APPC actions validated in this release are captured here: https://wiki.onap.org/display/DW/APPC+Testing+Scope+and+Status
566   - Currently APPC only supports OpenStack
567   - OpenStack Hypervisorcheck is turned off by default. If you want to invoke this functionality via the appc.properties, you need to enable it and ensure you have Admin level access to OpenStack.
568   - Integration with MultiCloud is supported for Standalone Restart (i.e., not via DGOrchestrator). For any other action, such as Stop, Start, etc.. via MultiCloud requires the MultiCloud identity URL to be either passed in the payload or defined in appc.properties.
569   - APPC needs Admin level access for Tenant level operations.
570   - Currently, if DGs are modified in appc.git repo, they must be manually moved to the appc/deployment repo.
571   - Currently, the "ModifyConfig" API and the implementation in the Master Directed Graph is only designed to work with the vFW Closed-Loop Demo.
572
573
574 ===========
575
576 End of Release Notes