Update Release Notes
[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.3.0
30 --------------
31
32
33 :Release Date: 2018-06-07
34
35
36 **New Features**
37
38 The Beijing release added the following functionality:
39  
40          - 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): 
41          
42                 - To support in-place software upgrade:
43                 
44                   - QuiesceTraffic
45                   - ResumeTraffic
46                   - UpgradeSoftware
47                   - UpgradePreCheck
48                   - UpgradePostCheck
49                   - UpgradeBackup
50                   - UpgradeBackout
51                   
52                 - To support storage management in OpenStack
53                 
54                   - AttachVolume
55                   - DetachVolume
56                   
57                 - To support Manual Scale Out use case
58                 
59                   - ConfigScaleOut (more details can be found in teh APPC Epic: `APPC-431 <https://jira.onap.org/browse/APPC-431>`_ )
60                   
61                 - To support general operations
62                 
63                   - ActionStatus
64                   
65
66          - 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.
67          
68                 - More details on the APPC CDT can be found in the APPC CDT User Guide in readthedocs.
69                 - 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 
70                 
71          - Additional contributions as part of Beijing include: 
72          
73                 - Support for Platform Maturity requirements, including:
74                 
75                    - Increased security
76                    
77                           - Added security to ODL web-based API access via AAF (see `APPC-404 <https://jira.onap.org/browse/APPC-404>`_ for additional details)
78                           - Addressed critical alerts reported via Nexus IQ to the extent possible (see `APPC-656 <https://jira.onap.org/browse/APPC-656>`_ )
79                           
80                    - Stability
81                    
82                           - 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 )
83                           
84                    - Resiliency
85                    
86                           - Support for OOM deployment, which enables resiliency via use of Kubernetes (see `APPC-414 <https://jira.onap.org/browse/APPC-414>`_ for additional details) 
87                           
88                 - Upgraded OpenDaylight (ODL) version to Nitrogen
89       
90       
91
92
93 **Bug Fixes**
94
95 The following defects that were documented as known issues in Amsterdam have been fixed in Beijing release:
96         
97         - `APPC-316 <https://jira.onap.org/browse/APPC-316>`_ - Null payload issue for Stop Application
98
99         - `APPC-315 <https://jira.onap.org/browse/APPC-315>`_ - appc-request-handler is giving error java.lang.NoClassDefFoundError 
100
101         - `APPC-312 <https://jira.onap.org/browse/APPC-312>`_ - APPC request is going to wrong request handler and rejecting request
102
103         - `APPC-311 <https://jira.onap.org/browse/APPC-311>`_ - The APPC LCM Provider Healthcheck
104
105         - `APPC-309 <https://jira.onap.org/browse/APPC-309>`_ - APPC LCM Provider URL missing in appc.properties. 
106
107         - `APPC-307 <https://jira.onap.org/browse/APPC-307>`_ - Embed jackson-annotations dependency in appc-dg-common during run-time 
108
109         - `APPC-276 <https://jira.onap.org/browse/APPC-276>`_ - Some Junit are breaking convention causing excessively long build
110   
111         - `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.
112         
113         
114 **Known Issues**
115
116 The following issues remain open at the end of Beijing release. Please refer to Jira for further details and workaround, if available.
117
118         - `APPC-987 <https://jira.onap.org/browse/APPC-987>`_ - APPC Investigate TRANSACTION Table Aging. See **Other** section for further information
119         
120         - `APPC-977 <https://jira.onap.org/browse/APPC-977>`_ - Procedures needed for enabling AAF support in OOM. See **Other** section for further information
121         
122         - `APPC-973 <https://jira.onap.org/browse/APPC-973>`_ - Fix delimiter string for xml-download CDT action
123         
124         - `APPC-940 <https://jira.onap.org/browse/APPC-940>`_ - APPC CDT Tool is not updating appc_southbound.properties with the URL supplied for REST
125
126         - `APPC-929 <https://jira.onap.org/browse/APPC-929>`_ - LCM API - ConfigScaleOut- Payload parameter to be manadatory set to "true"
127  
128         - `APPC-912 <https://jira.onap.org/browse/APPC-912>`_ - MalformedChunkCodingException in MDSALStoreImpl.getNodeName
129         
130         - `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
131
132         - `APPC-869 <https://jira.onap.org/browse/APPC-869>`_ - VM Snapshot error occurs during image validation.
133         
134         - `APPC-814 <https://jira.onap.org/browse/APPC-814>`_ - Update openecomp-tosca-datatype namespace  
135         
136         - `APPC-340 <https://jira.onap.org/browse/APPC-340>`_ - APPC rejecting request even for decimal of millisecond timestamp difference
137          
138         - `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.
139         
140         
141 **Security Notes**
142
143 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>`_.
144
145 Additionally, communication over DMaaP currently does not use secure topics in this release. This has dependency on DMaaP to enable.    
146
147
148 Quick Links:
149         - `APPC project page <https://wiki.onap.org/display/DW/Application+Controller+Project>`_
150         
151         - `Passing Badge information for APPC <https://bestpractices.coreinfrastructure.org/en/projects/1579>`_
152         
153         - `Project Vulnerability Review Table for APPC <https://wiki.onap.org/pages/viewpage.action?pageId=25438971>`_
154         
155 **Other**
156
157 - Limitations, Constraints and other worthy notes
158
159         - 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>`_):
160           
161              - Needed APPC configuration files were missing in Beijing OOM , and 
162              - AAF updated their certificates to require 2way certs, which requires APPC updates 
163                  
164           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.  
165
166         - 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.
167
168         - 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
169           
170         - Currently APPC only supports OpenStack
171           
172         - 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.
173           
174         - 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.
175           
176         - APPC needs Admin level access for Tenant level operations. 
177           
178         - Currently, the "ModifyConfig" API and the implementation in the Master Directed Graph is only designed to work with the vFW Closed-Loop Demo.
179   
180
181 Version: 1.2.0
182 --------------
183
184 :Release Date: 2017-11-16
185
186
187 **New Features**
188
189 The Amsterdam release continued evolving the design driven architecture of and functionality for APPC. 
190 APPC aims to be completely agnostic and make no assumption about the network. 
191
192 The main goal of the Amsterdam release was to:
193  - Support the vCPE use case as part of the closed loop action to perform a Restart on the vGMUX
194  - Demonstrate integration with MultiCloud as a proxy to OpenStack 
195  - Continue supporting the vFW closed loop use case as part of regression from the seed contribution. 
196
197 Other key features added in this release include:
198  - Support for Ansible 
199    - 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. 
200  - Support for Chef 
201    - The Chef Extension for APPC allows management of VNFs that support Chef through the following two additions: a Chef Adapter and Chef Directed Graph.
202  - LifeCycle Management (LCM) APIs via standalone DGs or via the DGOrchestrator architecture to trigger actions on VMs, VNFs, or VNFCs
203  - OAM APIs to manage the APPC application itself
204  - Upgrade of OpenDaylight to Carbon version
205
206
207
208 **Bug Fixes**
209
210         - 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>`_. 
211         
212         - 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)
213         
214 **Known Issues**
215
216         - `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``.
217         
218         - `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. 
219         
220         - `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. 
221         
222         - `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.
223         
224         - `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. 
225           
226         - `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.
227          
228         - `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.
229         
230                 
231 **Security Issues**
232         - Communication over DMaaP currently does not use secure topics in this release.
233         - AAF is deactivated by default in this release and was not validated or committed as part of the Amsterdam Release.
234
235
236 **Other**
237
238 - Limitations, Constraints and other worthy notes
239
240   - LCM Healthcheck and Configure actions do not work.
241   - The APPC actions validated in this release are captured here: https://wiki.onap.org/display/DW/APPC+Testing+Scope+and+Status
242   - Currently APPC only supports OpenStack
243   - 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.
244   - 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.
245   - APPC needs Admin level access for Tenant level operations. 
246   - Currently, if DGs are modified in appc.git repo, they must be manually moved to the appc/deployment repo. 
247   - Currently, the "ModifyConfig" API and the implementation in the Master Directed Graph is only designed to work with the vFW Closed-Loop Demo.
248   
249
250 ===========
251
252 End of Release Notes
253
254