1.4.3 Release Note
[appc.git] / docs / release-notes.rst
1 .. ============LICENSE_START==========================================
2 .. ===================================================================
3 .. Copyright © 2017-2018 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.4.3
30 --------------
31
32 :Release Date: 2018-11-21
33
34
35 **New Features**
36
37 The Casablanca release added the following functionality:
38
39          - Upgraded OpenDaylight (ODL) version to Oxygen 
40
41          - Upgraded to Karaf 4.1.5
42
43          - Migrated DB from mysql to maria db with galeira, tested on k8s clustering platform
44
45          - Added an ansible docker container, tested for DistributeTraffic LCM action
46
47          - 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): 
48          
49                 - To support in-place software upgrade:
50                 
51                   - DistributeTraffic
52                   
53                 - To support storage management in OpenStack
54                 
55                   - Reboot with hard and soft option
56                   
57          - Additional contributions as part of Casablanca include: 
58          
59                 - Support for Platform Maturity requirements, including:
60                 
61                    - Increased security
62                    
63                           - 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)
64                           - 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 )
65                           
66                    - Stability
67                    
68                           - 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 )
69                           
70                    - Resiliency
71                    
72                           - Support for OOM deployment, which enables resiliency via use of Kubernetes (see https://wiki.onap.org/display/DW/APPC+Resiliency for additional details) 
73                           
74
75 **Bug Fixes**
76
77         - `APPC-862 <https://jira.onap.org/browse/APPC-862>`_ - Configscaleout visible based on properties file
78
79         - `APPC-1009 <https://jira.onap.org/browse/APPC-1009>`_ - Regex in appc-provider-model yang causes intermittent unit test failures
80
81         - `APPC-1021 <https://jira.onap.org/browse/APPC-1021>`_ - Unnecessary pseudoterminal allocation for SSH connection
82
83         - `APPC-1037 <https://jira.onap.org/browse/APPC-1037>`_ - Deployment project version for cdt is incorrect
84
85         - `APPC-1072 <https://jira.onap.org/browse/APPC-1072>`_ - CDT Build failing due to problem in mdbootstrap
86
87         - `APPC-1087 <https://jira.onap.org/browse/APPC-1087>`_ - Incorrect docker image versions in HEAT deployment
88
89         - `APPC-1092 <https://jira.onap.org/browse/APPC-1092>`_ - licence header in template-configuration.component.html hasn't been commented properly
90   
91         - `APPC-1107 <https://jira.onap.org/browse/APPC-1107>`_ - CDT Artifacts Do Not Save
92         
93         - `APPC-1109 <https://jira.onap.org/browse/APPC-1109>`_ - Multiple versions of CDT in tmp folder during docker build cause problems
94
95         - `APPC-1110 <https://jira.onap.org/browse/APPC-1110>`_ - appc-dg-shared feature fails to install
96
97         - `APPC-1111 <https://jira.onap.org/browse/APPC-1111>`_ - TestDmaapConsumerImpl.testFetch method takes 130+ seconds to run test
98
99         - `APPC-1112 <https://jira.onap.org/browse/APPC-1112>`_ - Several tests in TimeTest.java are failing
100
101         - `APPC-1157 <https://jira.onap.org/browse/APPC-1157>`_ - Remove Mockito from Client jar
102
103         - `APPC-1175 <https://jira.onap.org/browse/APPC-1175>`_ - Appc daily docker job is failing
104
105         - `APPC-1184 <https://jira.onap.org/browse/APPC-1184>`_ - APPC LCM-API outdated
106
107         - `APPC-1185 <https://jira.onap.org/browse/APPC-1185>`_ - Rest calls failing with rpc error
108
109         - `APPC-1186 <https://jira.onap.org/browse/APPC-1186>`_ - Fix Rrestart fail if identity-uril is omitted
110
111         - `APPC-1187 <https://jira.onap.org/browse/APPC-1187>`_ - APIDOC Explorer will not expand appc-provider-lcm
112
113         - `APPC-1188 <https://jira.onap.org/browse/APPC-1188>`_ - fix unexpected error when policy-requested action force == FALSE
114
115         - `APPC-1189 <https://jira.onap.org/browse/APPC-1189>`_ - Fix boot-able volume when rebuild LCM action triggerred 
116
117         - `APPC-1191 <https://jira.onap.org/browse/APPC-1191>`_ - Database errors during installation
118
119         - `APPC-1192 <https://jira.onap.org/browse/APPC-1192>`_ - CDT missed to update the table
120
121         - `APPC-1202 <https://jira.onap.org/browse/APPC-1202>`_ - CDT artifacts fail to upload to appc
122
123         - `APPC-1205 <https://jira.onap.org/browse/APPC-1205>`_ - Cdt reference data does not send when data is manually entered
124
125         - `APPC-1206 <https://jira.onap.org/browse/APPC-1206>`_ - appc vm init failure because of docker-compose incorrect path
126
127         - `APPC-1207 <https://jira.onap.org/browse/APPC-1207>`_ - Logging constants are missing in several features
128
129         - `APPC-1215 <https://jira.onap.org/browse/APPC-1215>`_ - No Such Method Exception from GraphExecutor class 
130
131         - `APPC-1218 <https://jira.onap.org/browse/APPC-1218>`_ - Aai connection has a certificate error
132
133         - `APPC-1219 <https://jira.onap.org/browse/APPC-1219>`_ - appc-iaas-adaptor unable to load provider class
134
135         - `APPC-1220 <https://jira.onap.org/browse/APPC-1220>`_ - NoClassDefFound when sending OS STOP
136
137         - `APPC-1221 <https://jira.onap.org/browse/APPC-1221>`_ - update provide1 portion in appc.properties for Windriver lab
138
139         - `APPC-1224 <https://jira.onap.org/browse/APPC-1224>`_ - Not relaying back SubRequestID back to Policy in DMaaP Response messages
140
141         - `APPC-1225 <https://jira.onap.org/browse/APPC-1225>`_ - APPC failing health checks
142
143         - `APPC-1226 <https://jira.onap.org/browse/APPC-1226>`_ - Mock code to mimic backend execution for Reboot needs to be removed
144
145         - `APPC-1227 <https://jira.onap.org/browse/APPC-1227>`_ - APPC can't read VNF templates build with CDT
146
147         - `APPC-1230 <https://jira.onap.org/browse/APPC-1230>`_ - Update the sqldump data
148
149         - `APPC-1231 <https://jira.onap.org/browse/APPC-1231>`_ - TRANSACTIONS table not getting updated
150
151         - `APPC-1232 <https://jira.onap.org/browse/APPC-1232>`_ - SO error when building config scale out request using APPC client
152
153         - `APPC-1233 <https://jira.onap.org/browse/APPC-1233>`_ - correct health check DG
154
155         - `APPC-1234 <https://jira.onap.org/browse/APPC-1234>`_ - AppC Open Day Light login responds 401 unauthorised
156
157         - `APPC-1237 <https://jira.onap.org/browse/APPC-1237>`_ - APPC not properly url-encoding AAF credentials
158
159         - `APPC-1238 <https://jira.onap.org/browse/APPC-1238>`_ - allottedResourceRole is null
160
161         - `APPC-1239 <https://jira.onap.org/browse/APPC-1239>`_ - Error in appc/deployment/Jmeter JMX 
162
163         - `APPC-1241 <https://jira.onap.org/browse/APPC-1241>`_ - APPC fails to restart vGMUX in vCPE closed loop 
164
165         - `APPC-1243 <https://jira.onap.org/browse/APPC-1243>`_ - Container doesnt preserve mysql data after kubectl edit statefulset
166
167         - `APPC-1244 <https://jira.onap.org/browse/APPC-1244>`_ - Ansible Server never starts
168
169 **Known Issue**
170
171         - `APPC-1247 <https://jira.onap.org/browse/APPC-1247>`_ - java.lang.NoClassDefFoundError when publishing DMAAP message
172
173 Quick Links:
174
175         - `APPC project page <https://wiki.onap.org/display/DW/Application+Controller+Project>`_
176         
177         - `Passing Badge information for APPC <https://bestpractices.coreinfrastructure.org/en/projects/1579>`_
178         
179         - `Project Vulnerability Review Table for APPC <https://wiki.onap.org/pages/viewpage.action?pageId=40927352>`_
180
181 **Other**
182
183 - Limitations, Constraints and other worthy notes:
184
185         - OpenStack Restriction:
186
187                 - Currently APPC only supports OpenStack.
188
189                 - Admin level access for Tenant level operations.
190
191                 - OpenStack Hypervisorcheck is turned off by default.
192
193                 - OpenStack Hypervisorcheck is turned off by default.
194
195         - 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.
196           
197           
198 Version: 1.3.0
199 --------------
200
201
202 :Release Date: 2018-06-07
203
204
205 **New Features**
206
207 The Beijing release added the following functionality:
208  
209          - 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): 
210          
211                 - To support in-place software upgrade:
212                 
213                   - QuiesceTraffic
214                   - ResumeTraffic
215                   - UpgradeSoftware
216                   - UpgradePreCheck
217                   - UpgradePostCheck
218                   - UpgradeBackup
219                   - UpgradeBackout
220                   
221                 - To support storage management in OpenStack
222                 
223                   - AttachVolume
224                   - DetachVolume
225                   
226                 - To support Manual Scale Out use case
227                 
228                   - ConfigScaleOut (more details can be found in teh APPC Epic: `APPC-431 <https://jira.onap.org/browse/APPC-431>`_ )
229                   
230                 - To support general operations
231                 
232                   - ActionStatus
233                   
234
235          - 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.
236          
237                 - More details on the APPC CDT can be found in the APPC CDT User Guide in readthedocs.
238                 - 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 
239                 
240          - Additional contributions as part of Beijing include: 
241          
242                 - Support for Platform Maturity requirements, including:
243                 
244                    - Increased security
245                    
246                           - Added security to ODL web-based API access via AAF (see `APPC-404 <https://jira.onap.org/browse/APPC-404>`_ for additional details)
247                           - Addressed critical alerts reported via Nexus IQ to the extent possible (see `APPC-656 <https://jira.onap.org/browse/APPC-656>`_ )
248                           
249                    - Stability
250                    
251                           - 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 )
252                           
253                    - Resiliency
254                    
255                           - Support for OOM deployment, which enables resiliency via use of Kubernetes (see `APPC-414 <https://jira.onap.org/browse/APPC-414>`_ for additional details) 
256                           
257                 - Upgraded OpenDaylight (ODL) version to Nitrogen
258       
259       
260
261
262 **Bug Fixes**
263
264 The following defects that were documented as known issues in Amsterdam have been fixed in Beijing release:
265         
266         - `APPC-316 <https://jira.onap.org/browse/APPC-316>`_ - Null payload issue for Stop Application
267
268         - `APPC-315 <https://jira.onap.org/browse/APPC-315>`_ - appc-request-handler is giving error java.lang.NoClassDefFoundError 
269
270         - `APPC-312 <https://jira.onap.org/browse/APPC-312>`_ - APPC request is going to wrong request handler and rejecting request
271
272         - `APPC-311 <https://jira.onap.org/browse/APPC-311>`_ - The APPC LCM Provider Healthcheck
273
274         - `APPC-309 <https://jira.onap.org/browse/APPC-309>`_ - APPC LCM Provider URL missing in appc.properties. 
275
276         - `APPC-307 <https://jira.onap.org/browse/APPC-307>`_ - Embed jackson-annotations dependency in appc-dg-common during run-time 
277
278         - `APPC-276 <https://jira.onap.org/browse/APPC-276>`_ - Some Junit are breaking convention causing excessively long build
279   
280         - `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.
281         
282         
283 **Known Issues**
284
285 The following issues remain open at the end of Beijing release. Please refer to Jira for further details and workaround, if available.
286
287         - `APPC-987 <https://jira.onap.org/browse/APPC-987>`_ - APPC Investigate TRANSACTION Table Aging. See **Other** section for further information
288         
289         - `APPC-977 <https://jira.onap.org/browse/APPC-977>`_ - Procedures needed for enabling AAF support in OOM. See **Other** section for further information
290         
291         - `APPC-973 <https://jira.onap.org/browse/APPC-973>`_ - Fix delimiter string for xml-download CDT action
292         
293         - `APPC-940 <https://jira.onap.org/browse/APPC-940>`_ - APPC CDT Tool is not updating appc_southbound.properties with the URL supplied for REST
294
295         - `APPC-929 <https://jira.onap.org/browse/APPC-929>`_ - LCM API - ConfigScaleOut- Payload parameter to be manadatory set to "true"
296  
297         - `APPC-912 <https://jira.onap.org/browse/APPC-912>`_ - MalformedChunkCodingException in MDSALStoreImpl.getNodeName
298         
299         - `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
300
301         - `APPC-869 <https://jira.onap.org/browse/APPC-869>`_ - VM Snapshot error occurs during image validation.
302         
303         - `APPC-814 <https://jira.onap.org/browse/APPC-814>`_ - Update openecomp-tosca-datatype namespace  
304         
305         - `APPC-340 <https://jira.onap.org/browse/APPC-340>`_ - APPC rejecting request even for decimal of millisecond timestamp difference
306          
307         - `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.
308         
309         
310 **Security Notes**
311
312 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>`_.
313
314 Additionally, communication over DMaaP currently does not use secure topics in this release. This has dependency on DMaaP to enable.    
315
316
317 Quick Links:
318         - `APPC project page <https://wiki.onap.org/display/DW/Application+Controller+Project>`_
319         
320         - `Passing Badge information for APPC <https://bestpractices.coreinfrastructure.org/en/projects/1579>`_
321         
322         - `Project Vulnerability Review Table for APPC <https://wiki.onap.org/pages/viewpage.action?pageId=25438971>`_
323         
324 **Other**
325
326 - Limitations, Constraints and other worthy notes
327
328         - 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>`_):
329           
330              - Needed APPC configuration files were missing in Beijing OOM , and 
331              - AAF updated their certificates to require 2way certs, which requires APPC updates 
332                  
333           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.  
334
335         - 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.
336
337         - 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
338           
339         - Currently APPC only supports OpenStack
340           
341         - 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.
342           
343         - 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.
344           
345         - APPC needs Admin level access for Tenant level operations. 
346           
347         - Currently, the "ModifyConfig" API and the implementation in the Master Directed Graph is only designed to work with the vFW Closed-Loop Demo.
348   
349
350 Version: 1.2.0
351 --------------
352
353 :Release Date: 2017-11-16
354
355
356 **New Features**
357
358 The Amsterdam release continued evolving the design driven architecture of and functionality for APPC. 
359 APPC aims to be completely agnostic and make no assumption about the network. 
360
361 The main goal of the Amsterdam release was to:
362  - Support the vCPE use case as part of the closed loop action to perform a Restart on the vGMUX
363  - Demonstrate integration with MultiCloud as a proxy to OpenStack 
364  - Continue supporting the vFW closed loop use case as part of regression from the seed contribution. 
365
366 Other key features added in this release include:
367  - Support for Ansible 
368    - 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. 
369  - Support for Chef 
370    - The Chef Extension for APPC allows management of VNFs that support Chef through the following two additions: a Chef Adapter and Chef Directed Graph.
371  - LifeCycle Management (LCM) APIs via standalone DGs or via the DGOrchestrator architecture to trigger actions on VMs, VNFs, or VNFCs
372  - OAM APIs to manage the APPC application itself
373  - Upgrade of OpenDaylight to Carbon version
374
375
376
377 **Bug Fixes**
378
379         - 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>`_. 
380         
381         - 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)
382         
383 **Known Issues**
384
385         - `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``.
386         
387         - `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. 
388         
389         - `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. 
390         
391         - `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.
392         
393         - `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. 
394           
395         - `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.
396          
397         - `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.
398         
399                 
400 **Security Issues**
401         - Communication over DMaaP currently does not use secure topics in this release.
402         - AAF is deactivated by default in this release and was not validated or committed as part of the Amsterdam Release.
403
404
405 **Other**
406
407 - Limitations, Constraints and other worthy notes
408
409   - LCM Healthcheck and Configure actions do not work.
410   - The APPC actions validated in this release are captured here: https://wiki.onap.org/display/DW/APPC+Testing+Scope+and+Status
411   - Currently APPC only supports OpenStack
412   - 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.
413   - 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.
414   - APPC needs Admin level access for Tenant level operations. 
415   - Currently, if DGs are modified in appc.git repo, they must be manually moved to the appc/deployment repo. 
416   - Currently, the "ModifyConfig" API and the implementation in the Master Directed Graph is only designed to work with the vFW Closed-Loop Demo.
417   
418
419 ===========
420
421 End of Release Notes
422
423