fix odl patches
[ccsdk/distribution.git] / docs / release-notes.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0
2    International License.
3 .. http://creativecommons.org/licenses/by/4.0
4 .. (c) ONAP Project and its contributors
5 .. _release_notes:
6
7 *******************
8 CCSDK Release Notes
9 *******************
10
11
12 Abstract
13 ========
14
15 This document provides the release notes for the Frankfurt release of the Common Controller Software
16 Development Kit (CCSDK).
17
18 Summary
19 =======
20
21 The Frankfurt release of CCSDK introduces new functionality to support PNFs (Physical Network Functions), extends support
22 for Netconf/TLS to support CMPv2, and extends CDS to act as an agent in self-serve control loops.
23
24
25 Release Data
26 ============
27
28 +-------------------------+-------------------------------------------+
29 | **Project**             | CCSDK                                     |
30 |                         |                                           |
31 +-------------------------+-------------------------------------------+
32 | **Docker images**       | See :ref:`dockercontainers` section below |
33 +-------------------------+-------------------------------------------+
34 | **Release designation** | Frankfurt                                 |
35 |                         |                                           |
36 +-------------------------+-------------------------------------------+
37 | **Release date**        | 06/04/2020                                |
38 |                         |                                           |
39 +-------------------------+-------------------------------------------+
40
41
42 New features
43 ------------
44
45 The CCSDK Frankfurt release includes the following features:
46
47 * First phase of OpenDaylight separation (Jira `CCSDK-8 <https://jira.onap.org/browse/CCSDK-8>`_), currently targeted for completion in Guilin
48 * Integration of CDS as an actor in Control loops (Jira `CCSDK-1898 <https://jira.onap.org/browse/CCSDK-1898>`_)
49 * ORAN-compliant A1 adaptor (Jira `CCSDK-1796 <https://jira.onap.org/browse/CCSDK-1796>`_)
50 * Multi-Domain Optical Service (Jira `CCSDK-1828 <https://jira.onap.org/browse/CCSDK-1828>`_)
51 * Python 2 -> Python 3 migration (Jira `CCSDK-1905 <https://jira.onap.org/browse/CCSDK-1905>`_)
52
53
54 For the complete list of `CCSDK Frankfurt release epics <https://jira.onap.org/issues/?filter=12316>`_ and 
55 `CCSDK Frankfurt release user stories <https://jira.onap.org/issues/?filter=12319>`_ , please see the `ONAP Jira`_.
56
57 **Bug fixes**
58
59 The full list of `bugs fixed in the CCSDK Frankfurt release <https://jira.onap.org/issues/?filter=12320>`_ is maintained on the `ONAP Jira`_.
60
61 **Known Issues**
62
63 The full list of `known issues in CCSDK <https://jira.onap.org/issues/?filter=11341>`_ is maintained on the `ONAP Jira`_.
64
65 Deliverables
66 ------------
67
68 Software Deliverables
69 ~~~~~~~~~~~~~~~~~~~~~
70
71 .. _dockercontainers:
72
73 Docker Containers
74 `````````````````
75
76 The following table lists the docker containers comprising the CCSDK Frankfurt 
77 release along with the current stable Frankfurt version/tag.  Each of these is
78 available on the ONAP nexus3 site (https://nexus3.onap.org) and can be downloaded
79 with the following command::
80
81    docker pull nexus3.onap.org:10001/{image-name}:{version}
82
83
84 Note: users that want to use the latest in-development Frankfurt version may use the
85 tag 0.7-STAGING-latest to pull the latest daily Frankfurt build
86
87 +-----------------------------------+--------------------------------------------+---------+
88 | Image name                        | Description                                | Version |
89 +===================================+============================================+=========+
90 | onap/ccsdk-alpine-image           | Base Alpine Linux image for CCSDK          | 0.7.4   |
91 +-----------------------------------+--------------------------------------------+---------+
92 | onap/ccsdk-ansible-server-image   | Ansible server image                       | 0.7.4   |
93 +-----------------------------------+--------------------------------------------+---------+
94 | onap/ccsdk-apps-ms-neng           | Naming microservice                        | 0.7.1   |
95 +-----------------------------------+--------------------------------------------+---------+
96 | onap/ccsdk-blueprints-processor   | CDS blueprint processor                    | 0.7.5   |
97 +-----------------------------------+--------------------------------------------+---------+
98 | onap/ccsdk-cds-ui                 | CDS web interface                          | 0.7.5   |
99 +-----------------------------------+--------------------------------------------+---------+
100 | onap/ccsdk-cds-ui-server          | CDS user interface back end                | 0.7.5   |
101 +-----------------------------------+--------------------------------------------+---------+
102 | onap/ccsdk-commandexecutor        | CDS command executor                       | 0.7.5   |
103 +-----------------------------------+--------------------------------------------+---------+
104 | onap/ccsdk-controllerblueprint    | CDS controller blueprints                  | 0.7.5   |
105 +-----------------------------------+--------------------------------------------+---------+
106 | onap/ccsdk-dgbuilder-image        | Directed graph builder                     | 0.7.4   |
107 +-----------------------------------+--------------------------------------------+---------+
108 | onap/ccsdk-odl-neon-alpine-image  | Alpine based OpenDaylight Neon SR1 image   | 0.7.4   |
109 +-----------------------------------+--------------------------------------------+---------+
110 | onap/ccsdk-odlsli-alpine-image    | Alpine based OpenDaylight image with CCSDK | 0.7.4   |
111 +-----------------------------------+--------------------------------------------+---------+
112 | onap/ccsdk-saltstack-server-image | Saltstack server                           | 0.7.4   |
113 +-----------------------------------+--------------------------------------------+---------+
114 | onap/ccsdk-sdclistener            | CDS SDC listener                           | 0.7.3   |
115 +-----------------------------------+--------------------------------------------+---------+
116 | onap/ccsdk-ubuntu-image           | Base Ubuntu image for CCSDK                | 0.7.4   |
117 +-----------------------------------+--------------------------------------------+---------+
118
119 Maven Artifacts
120 ```````````````
121 In addition to docker containers, CCSDK also provides libraries that are intended to be used by
122 client applications (e.g. APPC, SDNC) as maven dependencies.
123
124
125 ccsdk/parent
126 ^^^^^^^^^^^^
127 Many CCSDK clients need to be able to inherit settings from third party parent poms provided
128 by OpenDaylight or springboot, and therefore are unable to use the standard ONAP parent pom.
129 The CCSDK parent repository provides its own version of parent poms whose contents are consistent
130 with ONAP standard settings (as defined in oparent), but whose parent is the OpenDaylight or 
131 springboot parent, so that clients can effectively merge both sets of settings.
132
133 The following table lists the parent poms provided by CCSDK and the current stable
134 Frankfurt version of each.
135
136 +-----------------------+------------------------------+---------+--------------------------------------------------------------------------------------------------+
137 | groupId               | artifactId                   | version | Description                                                                                      |
138 +=======================+==============================+=========+==================================================================================================+
139 | org.onap.ccsdk.parent | binding-parent               | 1.5.7   | Parent used in place of OpenDaylight binding-parent                                              |
140 +-----------------------+------------------------------+---------+--------------------------------------------------------------------------------------------------+
141 | org.onap.ccsdk.parent | bundle-parent                | 1.5.7   | Parent used in place of OpenDaylight bundle-parent                                               |
142 +-----------------------+------------------------------+---------+--------------------------------------------------------------------------------------------------+
143 | org.onap.ccsdk.parent | client-parent                | 1.5.7   | Parent used for projects that create client libraries for OpenDaylight APIs                      |
144 +-----------------------+------------------------------+---------+--------------------------------------------------------------------------------------------------+
145 | org.onap.ccsdk.parent | dependencies-bom             | 1.5.7   | Bill of Materials POM that defines versions of third party libraries used outside ODL container. |
146 |                       |                              |         | Intended to be imported in dependencyManagement section.                                         |
147 +-----------------------+------------------------------+---------+--------------------------------------------------------------------------------------------------+
148 | org.onap.ccsdk.parent | dependencies-odl-bom         | 1.5.7   | Bill of Materials POM that defines versions of third party libraries used within ODL container.  |
149 |                       |                              |         | Intended to be imported in dependencyManagement section.                                         |
150 +-----------------------+------------------------------+---------+--------------------------------------------------------------------------------------------------+
151 | org.onap.ccsdk.parent | feature-repo-parent          | 1.5.7   | Parent used in place of OpenDaylight feature-repo-parent                                         |
152 +-----------------------+------------------------------+---------+--------------------------------------------------------------------------------------------------+
153 | org.onap.ccsdk.parent | karaf4-parent                | 1.5.7   | Parent used in place of OpenDaylight karaf4-parent                                               |
154 +-----------------------+------------------------------+---------+--------------------------------------------------------------------------------------------------+
155 | org.onap.ccsdk.parent | mdsal-it-parent              | 1.5.7   | Parent used in place of OpenDaylight mdsal-it-parent                                             |
156 +-----------------------+------------------------------+---------+--------------------------------------------------------------------------------------------------+
157 | org.onap.ccsdk.parent | odlparent                    | 1.5.7   | Parent used in place of OpenDaylight odlparent                                                   |
158 +-----------------------+------------------------------+---------+--------------------------------------------------------------------------------------------------+
159 | org.onap.ccsdk.parent | odlparent-lite               | 1.5.7   | Parent used in place of OpenDaylight odlparent-lite                                              |
160 +-----------------------+------------------------------+---------+--------------------------------------------------------------------------------------------------+
161 | org.onap.ccsdk.parent | single-feature-parent        | 1.5.7   | Parent used in place of OpenDaylight single-feature-parent                                       |
162 +-----------------------+------------------------------+---------+--------------------------------------------------------------------------------------------------+
163 | org.onap.ccsdk.parent | spring-boot-1-starter-parent | 1.5.7   | Parent used in place of spring-boot-starter-parent for Springboot 1.x.                           |
164 |                       |                              |         | *NOTE* This is deprecated and will be removed in Guilin, since springboot 1.x should no          |
165 |                       |                              |         | longer be used due to security issues                                                            |
166 +-----------------------+------------------------------+---------+--------------------------------------------------------------------------------------------------+
167 | org.onap.ccsdk.parent | spring-boot-starter-parent   | 1.5.7   | Parent used in place of spring-boot-starter-parent for Springboot 2.x                            |
168 +-----------------------+------------------------------+---------+--------------------------------------------------------------------------------------------------+
169 | org.onap.ccsdk.parent | standalone-parent            | 1.5.7   | Parent used for projects that have no need for other third party parent poms                     |
170 +-----------------------+------------------------------+---------+--------------------------------------------------------------------------------------------------+
171
172 ccsdk/sli/core
173 ^^^^^^^^^^^^^^
174 The ccsdk/sli/core library provides base functionality needed by the Service Logic Interpreter (SLI), which is the engine that runs directed graphs.  It also
175 provides a number of libraries that can be used by other CCSDK client projects.  
176
177 The following table lists the maven artifacts provided for use by CCSDK client
178 projects.
179
180 +-------------------------+-------------------------+---------+--------------------------------------------+
181 | groupId                 | artifactId              | version | Description                                |
182 +=========================+=========================+=========+============================================+
183 | org.onap.ccsdk.sli.core | dblib-provider          | 0.7.2   | Database access library                    |
184 +-------------------------+-------------------------+---------+--------------------------------------------+
185 | org.onap.ccsdk.sli.core | sli-common              | 0.7.2   | Common SLI data objects                    |
186 +-------------------------+-------------------------+---------+--------------------------------------------+
187 | org.onap.ccsdk.sli.core | sli-provider-base       | 0.7.2   | ODL-independent SLI implementation objects |
188 +-------------------------+-------------------------+---------+--------------------------------------------+
189 | org.onap.ccsdk.sli.core | sli-provider            | 0.7.2   | ODL-dependent SLI implementation objects   |
190 +-------------------------+-------------------------+---------+--------------------------------------------+
191 | org.onap.ccsdk.sli.core | sliPluginUtils-provider | 0.7.2   | Utilities for use in SLI adaptors/plugins  |
192 +-------------------------+-------------------------+---------+--------------------------------------------+
193 | org.onap.ccsdk.sli.core | utils-provider          | 0.7.2   | Utilities                                  |
194 +-------------------------+-------------------------+---------+--------------------------------------------+
195
196 ccsdk/sli/adaptors
197 ^^^^^^^^^^^^^^^^^^
198 The ccsdk/sli/adaptors library provides interface adaptors meant to be used in resource nodes in directed graphs.
199
200 The following table lists the maven artifacts provided for use by CCSDK client
201 projects.
202
203 +-----------------------------+------------------------------+---------+--------------------------------+
204 | groupId                     | artifactId                   | version | Description                    |
205 +=============================+==============================+=========+================================+
206 | org.onap.ccsdk.sli.adaptors | aai-service-provider         | 0.7.3   | A&AI interface adaptor         |
207 +-----------------------------+------------------------------+---------+--------------------------------+
208 | org.onap.ccsdk.sli.adaptors | ansible-adapter-bundle       | 0.7.3   | Ansible interface adaptor      |
209 +-----------------------------+------------------------------+---------+--------------------------------+
210 | org.onap.ccsdk.sli.adaptors | mdsal-resource-provider      | 0.7.3   | MD-SAL interface adaptor       |
211 +-----------------------------+------------------------------+---------+--------------------------------+
212 | org.onap.ccsdk.sli.adaptors | netbox-client-provider       | 0.7.3   | netbox interface adaptor       |
213 +-----------------------------+------------------------------+---------+--------------------------------+
214 | org.onap.ccsdk.sli.adaptors | resource-assignment-provider | 0.7.3   | resource allocator             |
215 +-----------------------------+------------------------------+---------+--------------------------------+
216 | org.onap.ccsdk.sli.adaptors | saltstack-adaptor-provider   | 0.7.3   | saltstack interface adaptor    |
217 +-----------------------------+------------------------------+---------+--------------------------------+
218 | org.onap.ccsdk.sli.adaptors | sql-resource-provider        | 0.7.3   | SQL database interface adaptor |
219 +-----------------------------+------------------------------+---------+--------------------------------+
220
221 ccsdk/sli/northbound
222 ^^^^^^^^^^^^^^^^^^^^
223 The ccsdk/sli/northbound library contains the code for northbound interfaces which typically invoke
224 the SLI.
225
226 The following table lists the maven artifacts provided for use by CCSDK client projects.
227
228 +-------------------------------+---------------------+---------+-----------------------------------------+
229 | groupId                       | artifactId          | version | Description                             |
230 +===============================+=====================+=========+=========================================+
231 | org.onap.ccsdk.sli.northbound | asdcApi-provider    | 0.7.4   | ODL-based SDC interface                 |
232 +-------------------------------+---------------------+---------+-----------------------------------------+
233 | org.onap.ccsdk.sli.northbound | dataChange-provider | 0.7.4   | A&AI data change notification interface |
234 +-------------------------------+---------------------+---------+-----------------------------------------+
235 | org.onap.ccsdk.sli.northbound | dmaap-listener      | 0.7.4   | DMaaP listener interface                |
236 +-------------------------------+---------------------+---------+-----------------------------------------+
237 | org.onap.ccsdk.sli.northbound | lcm-provider        | 0.7.4   | Life Cycle Management event interface   |
238 +-------------------------------+---------------------+---------+-----------------------------------------+
239 | org.onap.ccsdk.sli.northbound | ueb-listener        | 0.7.4   | SDC event listener                      |
240 +-------------------------------+---------------------+---------+-----------------------------------------+
241
242 ccsdk/sli/plugins
243 ^^^^^^^^^^^^^^^^^
244 The ccsdk/sli/northbound library contains the code for plugins meant to be called from an 'execute' node
245 in a directed graph.
246
247 The following table lists the maven artifacts provided for use by CCSDK client projects.
248
249 +----------------------------+----------------------------+---------+-------------------------------------------------------+
250 | groupId                    | artifactId                 | version | Description                                           |
251 +============================+============================+=========+=======================================================+
252 | org.onap.ccsdk.sli.plugins | properties-node-provider   | 0.7.2   | Used to load a properties file for use in             |
253 |                            |                            |         | a directed graph                                      |
254 +----------------------------+----------------------------+---------+-------------------------------------------------------+
255 | org.onap.ccsdk.sli.plugins | restapi-call-node-provider | 0.7.2   | Used to call a generic REST API from a directed       |
256 |                            |                            |         | graph                                                 |
257 +----------------------------+----------------------------+---------+-------------------------------------------------------+
258 | org.onap.ccsdk.sli.plugins | restconf-client-provider   | 0.7.2   | Used to call a RESTCONF API from a directed graph     |
259 +----------------------------+----------------------------+---------+-------------------------------------------------------+
260 | org.onap.ccsdk.sli.plugins | sshapi-call-node           | 0.7.2   | Used to invoke an SSH interface from a directed graph |
261 +----------------------------+----------------------------+---------+-------------------------------------------------------+
262 | org.onap.ccsdk.sli.plugins | template-node-provider     | 0.7.2   | Provides velocity template support                    |
263 +----------------------------+----------------------------+---------+-------------------------------------------------------+
264
265 Documentation Deliverables
266 ~~~~~~~~~~~~~~~~~~~~~~~~~~
267 * `CDS user guide`_
268 * `SDN Controller for Radio user guide`_
269 * `ccsdk/sli/core Javadoc`_
270 * `ccsdk/sli/adaptors Javadoc`_
271 * `ccsdk/sli/northbound Javadoc`_
272 * `ccsdk/sli/plugins Javadoc`_
273
274 Known Limitations, Issues and Workarounds
275 =========================================
276
277 System Limitations
278 ------------------
279
280 No system limitations noted.
281
282
283 Known Vulnerabilities
284 ---------------------
285
286 Any known vulnerabilities for ONAP are tracked in the `ONAP Jira`_ in the OJSI project.  Any outstanding OJSI issues that
287 pertain to CCSDK are listed in the :ref:`secissues` section below.
288
289
290 Workarounds
291 -----------
292
293 Not applicable.
294
295
296 Security Notes
297 --------------
298
299 Fixed Security Issues
300 ~~~~~~~~~~~~~~~~~~~~~
301
302 The following security issues have been addressed in the Frankfurt CCSDK release:
303
304 * `OSJI-197 <https://jira.onap.org/browse/OJSI-197>`_ : cds-blueprints-processor-http exposes plain text HTTP endpoint using port 30499
305 * `CCSDK-2149 <https://jira.onap.org/browse/CCSDK-2149>`_ : Pods still run as root
306 * `CCSDK-1910 <https://jira.onap.org/browse/CCSDK-1910>`_ : Password removal from OOM Helm charts
307
308 With these fixes, CCSDK no longer exposes any external http ports and no CCSDK pod runs as root.
309
310 .. _secissues :
311
312 Known Security Issues
313 ~~~~~~~~~~~~~~~~~~~~~
314
315 There is currently only one known CCSDK security issue, related to a third party application (netbox) that CCSDK uses:
316
317 * `OJSI-160 <https://jira.onap.org/browse/OJSI-160>`_ : netbox-nginx exposes plain text HTTP endpoint using port 30420
318
319
320
321 Test Results
322 ============
323 Not applicable
324
325
326 References
327 ==========
328
329 For more information on the ONAP Frankfurt release, please see:
330
331 #. `ONAP Home Page`_
332 #. `ONAP Documentation`_
333 #. `ONAP Release Downloads`_
334 #. `ONAP Wiki Page`_
335
336
337 .. _`ONAP Home Page`: https://www.onap.org
338 .. _`ONAP Wiki Page`: https://wiki.onap.org
339 .. _`ONAP Documentation`: https://docs.onap.org
340 .. _`ONAP Release Downloads`: https://git.onap.org
341 .. _`ONAP Jira`: https://jira.onap.org
342 .. _`CDS user guide`: https://docs.onap.org/en/frankfurt/submodules/ccsdk/cds.git/docs/index.html
343 .. _`SDN Controller for Radio user guide`: https://docs.onap.org/en/frankfurt/submodules/ccsdk/features.git/docs/guides/onap-user/home.html
344 .. _`ccsdk/sli/core Javadoc`: https://nexus.onap.org/service/local/repositories/javadoc/content/org.onap.ccsdk/sli/core/frankfurt/index.html
345 .. _`ccsdk/sli/adaptors Javadoc`: https://nexus.onap.org/service/local/repositories/javadoc/content/org.onap.ccsdk/sli/adaptors/frankfurt/index.html
346 .. _`ccsdk/sli/northbound Javadoc`: https://nexus.onap.org/service/local/repositories/javadoc/content/org.onap.ccsdk/sli/northbound/frankfurt/index.html
347 .. _`ccsdk/sli/plugins Javadoc`: https://nexus.onap.org/service/local/repositories/javadoc/content/org.onap.ccsdk/sli/plugins/frankfurt/index.html