Merge "Suggest to pull manifests instead of arch tags"
[functest.git] / docs / release / release-notes / functest-release.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. SPDX-License-Identifier: CC-BY-4.0
3
4 =======
5 License
6 =======
7
8 OPNFV Euphrates release note for Functest Docs
9 are licensed under a Creative Commons Attribution 4.0 International License.
10 You should have received a copy of the license along with this.
11 If not, see <http://creativecommons.org/licenses/by/4.0/>.
12
13 =============================================
14 OPNFV Euphrates 5.1 release note for Functest
15 =============================================
16
17 Abstract
18 ========
19
20 This document contains the release notes of the Functest project.
21
22
23 OPNFV Euphrates Release
24 ======================
25
26 Functest deals with functional testing of the OPNFV solution.
27 It includes test cases developed within the project, test cases developed in
28 other OPNFV projects and it also intgrates test cases from other upstream
29 communities.
30
31 The internal test cases are:
32
33  * connection_check
34  * api_check
35  * snaps_health_check
36  * vping_ssh
37  * vping_userdata
38  * tempest_smoke_serial
39  * refstack_defcore
40  * snaps_smoke
41  * rally_sanity
42  * odl
43  * tempest_full_parallel
44  * rally_full
45  * cloudify_ims
46  * vyos_vrouter
47
48 The OPNFV projects integrated into Functest framework for automation are:
49
50  * barometer
51  * bgpvpn
52  * doctor
53  * domino
54  * fds
55  * odl-sfc
56  * odl-netvirt
57  * parser
58  * promise
59  * orchestra_openims
60  * orchestra_clearwaterims
61
62
63 Release Data
64 ============
65
66 +--------------------------------------+--------------------------------------+
67 | **Project**                          | functest                             |
68 |                                      |                                      |
69 +--------------------------------------+--------------------------------------+
70 | **Repo/tag**                         | opnfv-5.1.0                          |
71 |                                      |                                      |
72 +--------------------------------------+--------------------------------------+
73 | **Release designation**              | Euphrates 5.1 release                |
74 |                                      |                                      |
75 +--------------------------------------+--------------------------------------+
76 | **Release date**                     | December 15th 2017                   |
77 |                                      |                                      |
78 +--------------------------------------+--------------------------------------+
79 | **Purpose of the delivery**          | Euphrates second release             |
80 |                                      |                                      |
81 +--------------------------------------+--------------------------------------+
82
83 Deliverables
84 ============
85
86 Software
87 --------
88
89  Functest Docker images:
90
91  * https://hub.docker.com/r/opnfv/functest-healthcheck
92  * https://hub.docker.com/r/opnfv/functest-smoke
93  * https://hub.docker.com/r/opnfv/functest-features
94  * https://hub.docker.com/r/opnfv/functest-components
95  * https://hub.docker.com/r/opnfv/functest-vnf
96  * https://hub.docker.com/r/opnfv/functest-parser
97  * https://hub.docker.com/r/opnfv/functest-restapi
98
99  TestAPI Docker image:
100
101  * https://hub.docker.com/r/opnfv/testapi
102
103 Docker tag to be pulled: opnfv-5.1.0
104
105 Documents
106 ---------
107
108  - Installation/configuration guide: http://docs.opnfv.org/en/stable-euphrates/submodules/functest/docs/testing/user/configguide/index.html
109
110  - User Guide: http://docs.opnfv.org/en/stable-euphrates/submodules/functest/docs/testing/user/userguide/index.html
111
112  - Developer Guide: http://docs.opnfv.org/en/stable-euphrates/submodules/functest/docs/testing/developer/devguide/index.html
113
114  - API Docs: http://artifacts.opnfv.org/functest/docs/index.html
115
116  - Functest Framework presentation: http://testresults.opnfv.org/functest/framework/index.html
117
118
119 Version change
120 ==============
121
122 Functest now delivers light-weigth Docker images based on Alpine 3.6. The test cases are grouped into several categories
123 or tiers and must be run from the corresponding container. For example, to run the test case healthcheck, the image
124 opnfv/functest-healthcheck shall be used. The tiers and the tests within them are explained in detail in the User Guide.
125
126 The former Ubuntu image is not longer maintained.
127
128 The Parser test case has its own dedicated Docker image since it requires libraries released for OpenStack Pike and
129 Euphrates is based on Ocata.
130
131 The Docker images do not contain OS images (Cirros, Ubuntu, Centos, ..) anymore. A script has been created under the
132 ci directory (download_images.sh) which contains all the needed images for all the tests. This file can be modified by
133 the user since not all the images might be used. It must be executed before starting Functest and attach the needed
134 images as a Docker volume. See Configuration Guide for more information.
135
136 The requirements have been split into 3 files:
137  * requirements.txt : lists all abstract dependencies of the OPNFV packages
138  * test-requirements.txt : lists all abstract dependencies required by Functest Unit Tests
139  * upper-constraints.txt : lists all concrete upstream dependencies required by Functest Docker container
140
141 OPNFV (test-)requirements.txt have been updated according to stable/ocata global-requirements.txt.
142 Functest uses (and completes) stable/ocata upper-constraints.txt in Dockerfiles and tox configuration.
143 The project relies on pbr, which injects requirements into the install_requires, tests_require and/or dependency_links
144 arguments to setup. It also supports conditional dependencies which can be added to the requirements (e.g. dnspython>=1.14.0;python_version=='2.7')
145
146 The way to manage logging has been centralized to a configuration file (logging.ini) which might be modified by the user.
147 By default, the output of executing the test cases is redirected to log files and is not displayed on the console, only result
148 messages and summary tables are displayed.
149
150 The framework has been refactored and all the test cases inherit from a core class TestCase. For Feature projects who develop
151 test cases, 2 sub-classes have been created:
152  - Feature: it implements all the needed functions and the developer must only overwrite the method "execute" (e.g. Barometer)
153  - BashFeature: it is used if the third party test case is a shell script. This way, the execution command must be specified in
154  testcases.yaml as the argument (e.g. Domino, Doctor)
155
156 An internal REST API has been introduced in Euphrates. The goal is to trigger Functest operations through an API in addition of the CLI.
157 This could be considered as a first step towards a pseudo micro services approach where the different test projects could expose and
158 consume APIs to the other test projects.
159
160 Euphrates 5.1 improvements
161 ==========================
162
163 * Alpine images are now supported for ARM (arm64).
164 * Added Vyos_router test case.
165 * Updated of Rally 0.9.1 and fixed some bugs in cinder scenarios.
166 * Patch to allow building containers from a gerrit change.
167 * Selection of a subset of SNAPS test cases.
168 * Reorder VNF test cases and adjust timeouts in VNFs.
169
170
171
172 Euphrates 5.1 known restrictions/issues
173 =======================================
174 +--------------+-----------+----------------------------------------------+
175 | Installer    | Scenario  |  Issue                                       |
176 +==============+===========+==============================================+
177 | fuel@aarch64 |    any    |  VNF tier not supported yet.                 |
178 +--------------+-----------+----------------------------------------------+
179 |              |           |  The test cases belonging to the VNF tier    |
180 |     any      |    any    |  have been only tested on os-nosdn-nofeature |
181 |              |           |  scenarios and baremetal deployments.        |
182 +--------------+-----------+----------------------------------------------+
183 |     Joid     |    k8     |  Functest does not offer test suites for     |
184 |    Compass   |           |  Kubernetes scenarios yet.                   |
185 +--------------+-----------+----------------------------------------------+
186
187
188 Test and installer/scenario dependencies
189 ========================================
190
191 It is not always possible to run all the test cases on all the scenarios.
192 The scenario dependencies (installer or scenario) are detailed
193 in the different testcases.yaml for each tier:
194
195  * https://git.opnfv.org/functest/tree/docker/healthcheck/testcases.yaml?h=stable/euphrates
196  * https://git.opnfv.org/functest/tree/docker/smoke/testcases.yaml?h=stable/euphrates
197  * https://git.opnfv.org/functest/tree/docker/features/testcases.yaml?h=stable/euphrates
198  * https://git.opnfv.org/functest/tree/docker/components/testcases.yaml?h=stable/euphrates
199  * https://git.opnfv.org/functest/tree/docker/vnf/testcases.yaml?h=stable/euphrates
200  * https://git.opnfv.org/functest/tree/docker/parser/testcases.yaml?h=stable/euphrates
201
202
203 Test results
204 ============
205
206 The Functest scenario status on December 15, 2017 can be seen on
207 http://testresults.opnfv.org/functest/euphrates/
208
209 Test logs are available in:
210
211  - test results logs from CI: http://artifacts.opnfv.org (within different directories 'logs_functest_X')
212
213  - jenkins logs on CI: https://build.opnfv.org/ci/view/functest/
214
215  - jenkins logs on ARM CI: https://build.opnfv.org/ci/view/armband/
216
217
218
219 Open JIRA tickets
220 =================
221
222 +------------------+-----------------------------------------------+
223 |   JIRA           |         Description                           |
224 +==================+===============================================+
225 |                  |                                               |
226 |                  |                                               |
227 +------------------+-----------------------------------------------+
228
229 All the tickets that are not blocking have been fixed or postponed
230 the next release.
231
232
233 Useful links
234 ============
235
236  - wiki project page: https://wiki.opnfv.org/opnfv_functional_testing
237
238  - wiki Functest Euphrates page: https://wiki.opnfv.org/display/functest/5.+Euphrates
239
240  - Functest repo: https://git.opnfv.org/cgit/functest
241
242  - Functest CI dashboard: https://build.opnfv.org/ci/view/functest/
243
244  - JIRA dashboard: https://jira.opnfv.org/secure/Dashboard.jspa?selectPageId=10611
245
246  - Functest IRC chan: #opnfv-functest
247
248  - Reporting page: http://testresults.opnfv.org/reporting/euphrates.html