diff options
author | mrpa <miruna.paun@enea.com> | 2021-05-28 20:37:23 +0200 |
---|---|---|
committer | Miruna Paun <mrpa@enea.se> | 2021-06-07 10:47:16 +0100 |
commit | 0bc82389b36fbdb6f9a4df4d44ea1379e440ca99 (patch) | |
tree | 0aca91a779c8b5bad5f1e8c58ca9450829e96edc | |
parent | d30d4955ff9e5b61329d7bf75d274d192d0d9adc (diff) | |
download | nfv-access-documentation-0bc82389b36fbdb6f9a4df4d44ea1379e440ca99.tar.gz |
Updated the version variable for Enea Edge,
Added in the versioning files ie all eltf updates files, 3 in total,
Updated the EE Automation User Guide to reflect the new name,
along with various edits and tweaks,
Removed obsolete files from the Enea Edge Rel notes repo,
Tweaked the AF User Guide 4.3.2 chapter.
Change-Id: Ie08fab45236602e6875ba5f7d2724c0cd7306860
Signed-off-by: mrpa <miruna.paun@enea.com>
30 files changed, 1633 insertions, 990 deletions
diff --git a/doc/Makefile b/doc/Makefile index 1f5b506..5c1a6b9 100644 --- a/doc/Makefile +++ b/doc/Makefile | |||
@@ -32,8 +32,8 @@ include init.mk | |||
32 | 32 | ||
33 | MACHINE_LIST_XML := book-enea-edge-release-info/doc/machine_list_generated.xml | 33 | MACHINE_LIST_XML := book-enea-edge-release-info/doc/machine_list_generated.xml |
34 | 34 | ||
35 | ELTF_PARAMS_TEMPLATE := s_doceneacommon/doc/eltf_params_template.xml | 35 | ELTF_PARAMS_TEMPLATE := eltf_params_template.xml |
36 | ELTF_PARAMS_UPDATED := s_doceneacommon/doc/eltf_params_updated.xml | 36 | ELTF_PARAMS_UPDATED := eltf_params_updated.xml |
37 | 37 | ||
38 | 38 | ||
39 | 39 | ||
@@ -184,7 +184,7 @@ endif | |||
184 | 184 | ||
185 | books: init | 185 | books: init |
186 | # BOOKPACKAGES is defined in all book-*/swcomp.mk | 186 | # BOOKPACKAGES is defined in all book-*/swcomp.mk |
187 | $(VERB)DISTRO_VERSION=`egrep '"EneaLinux_REL_VER"><phrase>' $(ELTF_PARAMS_UPDATED) | sed 's/.*<phrase>//;s/<\/phrase>.*//'` ; \ | 187 | $(VERB)DISTRO_VERSION=`egrep '"EneaEdge_REL_VER"><phrase>' $(ELTF_PARAMS_UPDATED) | sed 's/.*<phrase>//;s/<\/phrase>.*//'` ; \ |
188 | BOOKVER="Enea Edge-$$DISTRO_VERSION"-$(shell date +"%Y.%m.%d"); \ | 188 | BOOKVER="Enea Edge-$$DISTRO_VERSION"-$(shell date +"%Y.%m.%d"); \ |
189 | for book in $(BOOKPACKAGES); do \ | 189 | for book in $(BOOKPACKAGES); do \ |
190 | for format in $(FORMAT); do \ | 190 | for format in $(FORMAT); do \ |
diff --git a/doc/book-enea-edge-auto-fw-th-open-source/doc/about.xml b/doc/book-enea-edge-auto-fw-th-open-source/doc/about.xml index 24f674d..53cda06 100644 --- a/doc/book-enea-edge-auto-fw-th-open-source/doc/about.xml +++ b/doc/book-enea-edge-auto-fw-th-open-source/doc/about.xml | |||
@@ -7,8 +7,8 @@ | |||
7 | <para>This document contains the open source and license information | 7 | <para>This document contains the open source and license information |
8 | pertaining to the Enea Edge Automation Framework and Test Harness provided with | 8 | pertaining to the Enea Edge Automation Framework and Test Harness provided with |
9 | Enea Edge <xi:include | 9 | Enea Edge <xi:include |
10 | href="../../s_doceneacommon/doc/eltf_params_updated.xml" | 10 | href="../../eltf_params_updated.xml" |
11 | xmlns:xi="http://www.w3.org/2001/XInclude" | 11 | xmlns:xi="http://www.w3.org/2001/XInclude" |
12 | xpointer="element(EneaLinux_REL_VER/1)" />.</para> | 12 | xpointer="element(EneaEdge_REL_VER/1)" />.</para> |
13 | 13 | ||
14 | </chapter> | 14 | </chapter> |
diff --git a/doc/book-enea-edge-auto-fw-th-open-source/doc/book.xml b/doc/book-enea-edge-auto-fw-th-open-source/doc/book.xml index df5e029..960e0cc 100644 --- a/doc/book-enea-edge-auto-fw-th-open-source/doc/book.xml +++ b/doc/book-enea-edge-auto-fw-th-open-source/doc/book.xml | |||
@@ -7,7 +7,7 @@ | |||
7 | <title><trademark class="registered">Enea</trademark> Edge Automation Framework and Test Harness Open Source Report</title> | 7 | <title><trademark class="registered">Enea</trademark> Edge Automation Framework and Test Harness Open Source Report</title> |
8 | 8 | ||
9 | <subtitle>Release Version | 9 | <subtitle>Release Version |
10 | <xi:include href="../../s_doceneacommon/doc/eltf_params_updated.xml" xpointer="element(EneaLinux_REL_VER/1)" | 10 | <xi:include href="../../eltf_params_updated.xml" xpointer="element(EneaEdge_REL_VER/1)" |
11 | xmlns:xi="http://www.w3.org/2001/XInclude" /></subtitle> | 11 | xmlns:xi="http://www.w3.org/2001/XInclude" /></subtitle> |
12 | 12 | ||
13 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> | 13 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> |
diff --git a/doc/book-enea-edge-auto-fw-th-open-source/doc/licenses.xml b/doc/book-enea-edge-auto-fw-th-open-source/doc/licenses.xml index 397e2b8..07902ad 100644 --- a/doc/book-enea-edge-auto-fw-th-open-source/doc/licenses.xml +++ b/doc/book-enea-edge-auto-fw-th-open-source/doc/licenses.xml | |||
@@ -36,9 +36,9 @@ | |||
36 | <entry>Enea Edge Automation Framework and Test Harness</entry> | 36 | <entry>Enea Edge Automation Framework and Test Harness</entry> |
37 | 37 | ||
38 | <entry><xi:include | 38 | <entry><xi:include |
39 | href="../../s_doceneacommon/doc/eltf_params_updated.xml" | 39 | href="../../eltf_params_updated.xml" |
40 | xmlns:xi="http://www.w3.org/2001/XInclude" | 40 | xmlns:xi="http://www.w3.org/2001/XInclude" |
41 | xpointer="element(EneaLinux_REL_VER/1)" /></entry> | 41 | xpointer="element(EneaEdge_REL_VER/1)" /></entry> |
42 | 42 | ||
43 | <entry>Configuration and Automation Framework for the Enea Edge Management | 43 | <entry>Configuration and Automation Framework for the Enea Edge Management |
44 | GUI.</entry> | 44 | GUI.</entry> |
@@ -50,9 +50,9 @@ | |||
50 | <entry>Enea Edge Automation Framework and Test Harness</entry> | 50 | <entry>Enea Edge Automation Framework and Test Harness</entry> |
51 | 51 | ||
52 | <entry><xi:include | 52 | <entry><xi:include |
53 | href="../../s_doceneacommon/doc/eltf_params_updated.xml" | 53 | href="../../eltf_params_updated.xml" |
54 | xmlns:xi="http://www.w3.org/2001/XInclude" | 54 | xmlns:xi="http://www.w3.org/2001/XInclude" |
55 | xpointer="element(EneaLinux_REL_VER/1)" /></entry> | 55 | xpointer="element(EneaEdge_REL_VER/1)" /></entry> |
56 | 56 | ||
57 | <entry>Configuration and Automation Framework for the Enea Edge Management | 57 | <entry>Configuration and Automation Framework for the Enea Edge Management |
58 | GUI.</entry> | 58 | GUI.</entry> |
diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/book.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/book.xml index d533a74..3a0c698 100644 --- a/doc/book-enea-edge-auto-fw-th-user-guide/doc/book.xml +++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/book.xml | |||
@@ -8,9 +8,9 @@ | |||
8 | Framework and Test Harness User Guide</title> | 8 | Framework and Test Harness User Guide</title> |
9 | 9 | ||
10 | <subtitle>Release Version <xi:include | 10 | <subtitle>Release Version <xi:include |
11 | href="../../s_doceneacommon/doc/eltf_params_updated.xml" | 11 | href="../../eltf_params_updated.xml" |
12 | xmlns:xi="http://www.w3.org/2001/XInclude" | 12 | xmlns:xi="http://www.w3.org/2001/XInclude" |
13 | xpointer="element(EneaLinux_REL_VER/1)" /></subtitle> | 13 | xpointer="element(EneaEdge_REL_VER/1)" /></subtitle> |
14 | 14 | ||
15 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> | 15 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> |
16 | 16 | ||
diff --git a/doc/book-enea-edge-automation-open-source/doc/about.xml b/doc/book-enea-edge-automation-open-source/doc/about.xml index 50ce933..64a6616 100644 --- a/doc/book-enea-edge-automation-open-source/doc/about.xml +++ b/doc/book-enea-edge-automation-open-source/doc/about.xml | |||
@@ -7,8 +7,8 @@ | |||
7 | <para>This document contains the open source and license information | 7 | <para>This document contains the open source and license information |
8 | pertaining to the Enea Edge Automation provided with | 8 | pertaining to the Enea Edge Automation provided with |
9 | Enea Edge <xi:include | 9 | Enea Edge <xi:include |
10 | href="../../s_doceneacommon/doc/eltf_params_updated.xml" | 10 | href="../../eltf_params_updated.xml" |
11 | xmlns:xi="http://www.w3.org/2001/XInclude" | 11 | xmlns:xi="http://www.w3.org/2001/XInclude" |
12 | xpointer="element(EneaLinux_REL_VER/1)" />.</para> | 12 | xpointer="element(EneaEdge_REL_VER/1)" />.</para> |
13 | 13 | ||
14 | </chapter> | 14 | </chapter> |
diff --git a/doc/book-enea-edge-automation-open-source/doc/book.xml b/doc/book-enea-edge-automation-open-source/doc/book.xml index 317c87d..79da1aa 100644 --- a/doc/book-enea-edge-automation-open-source/doc/book.xml +++ b/doc/book-enea-edge-automation-open-source/doc/book.xml | |||
@@ -7,7 +7,7 @@ | |||
7 | <title><trademark class="registered">Enea</trademark> Edge Automation Open Source Report</title> | 7 | <title><trademark class="registered">Enea</trademark> Edge Automation Open Source Report</title> |
8 | 8 | ||
9 | <subtitle>Release Version | 9 | <subtitle>Release Version |
10 | <xi:include href="../../s_doceneacommon/doc/eltf_params_updated.xml" xpointer="element(EneaLinux_REL_VER/1)" | 10 | <xi:include href="../../eltf_params_updated.xml" xpointer="element(EneaEdge_REL_VER/1)" |
11 | xmlns:xi="http://www.w3.org/2001/XInclude" /></subtitle> | 11 | xmlns:xi="http://www.w3.org/2001/XInclude" /></subtitle> |
12 | 12 | ||
13 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> | 13 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> |
diff --git a/doc/book-enea-edge-automation-open-source/doc/licenses.xml b/doc/book-enea-edge-automation-open-source/doc/licenses.xml index e2ade8a..01d0c08 100644 --- a/doc/book-enea-edge-automation-open-source/doc/licenses.xml +++ b/doc/book-enea-edge-automation-open-source/doc/licenses.xml | |||
@@ -36,9 +36,9 @@ | |||
36 | <entry>Enea Edge Automation</entry> | 36 | <entry>Enea Edge Automation</entry> |
37 | 37 | ||
38 | <entry><xi:include | 38 | <entry><xi:include |
39 | href="../../s_doceneacommon/doc/eltf_params_updated.xml" | 39 | href="../../eltf_params_updated.xml" |
40 | xmlns:xi="http://www.w3.org/2001/XInclude" | 40 | xmlns:xi="http://www.w3.org/2001/XInclude" |
41 | xpointer="element(EneaLinux_REL_VER/1)" /></entry> | 41 | xpointer="element(EneaEdge_REL_VER/1)" /></entry> |
42 | 42 | ||
43 | <entry>Configuration and Automation for the Enea Edge Management | 43 | <entry>Configuration and Automation for the Enea Edge Management |
44 | GUI.</entry> | 44 | GUI.</entry> |
@@ -50,9 +50,9 @@ | |||
50 | <entry>Enea Edge Automation</entry> | 50 | <entry>Enea Edge Automation</entry> |
51 | 51 | ||
52 | <entry><xi:include | 52 | <entry><xi:include |
53 | href="../../s_doceneacommon/doc/eltf_params_updated.xml" | 53 | href="../../eltf_params_updated.xml" |
54 | xmlns:xi="http://www.w3.org/2001/XInclude" | 54 | xmlns:xi="http://www.w3.org/2001/XInclude" |
55 | xpointer="element(EneaLinux_REL_VER/1)" /></entry> | 55 | xpointer="element(EneaEdge_REL_VER/1)" /></entry> |
56 | 56 | ||
57 | <entry>Configuration and Automation for the Enea Edge Management | 57 | <entry>Configuration and Automation for the Enea Edge Management |
58 | GUI.</entry> | 58 | GUI.</entry> |
diff --git a/doc/book-enea-edge-automation-user-guide/doc/automation_framework_test_harness.xml b/doc/book-enea-edge-automation-user-guide/doc/automation_framework_test_harness.xml index bc974cc..c1b554e 100644 --- a/doc/book-enea-edge-automation-user-guide/doc/automation_framework_test_harness.xml +++ b/doc/book-enea-edge-automation-user-guide/doc/automation_framework_test_harness.xml | |||
@@ -1,54 +1,54 @@ | |||
1 | <?xml version="1.0" encoding="ISO-8859-1"?> | 1 | <?xml version="1.0" encoding="UTF-8"?> |
2 | <chapter id="auto_fw_test_harness"> | 2 | <chapter id="auto_fw_test_harness"> |
3 | <title>Enea Edge Automation</title> | 3 | <title>Enea Edge Automation</title> |
4 | 4 | ||
5 | <section id="AFTH_structure"> | 5 | <section id="AFTH_structure"> |
6 | <title>File Structure</title> | 6 | <title>File Structure</title> |
7 | 7 | ||
8 | <para>Enea Edge Automation is an open-source product, | 8 | <para>Enea Edge Automation is an open-source product, with the following |
9 | with the following directory structure:</para> | 9 | directory structure:</para> |
10 | |||
11 | <itemizedlist spacing="compact"> | ||
12 | <listitem> | ||
13 | <para>ansible.cfg</para> | ||
14 | </listitem> | ||
15 | 10 | ||
16 | <listitem> | 11 | <itemizedlist spacing="compact"> |
17 | <para>automation_framework</para> | 12 | <listitem> |
18 | </listitem> | 13 | <para>ansible.cfg</para> |
14 | </listitem> | ||
19 | 15 | ||
20 | <listitem> | 16 | <listitem> |
21 | <para>CHANGELOG</para> | 17 | <para>automation_framework</para> |
22 | </listitem> | 18 | </listitem> |
23 | 19 | ||
24 | <listitem> | 20 | <listitem> |
25 | <para>environment_variables.sh</para> | 21 | <para>CHANGELOG</para> |
26 | </listitem> | 22 | </listitem> |
27 | 23 | ||
28 | <listitem> | 24 | <listitem> |
29 | <para>modules</para> | 25 | <para>environment_variables.sh</para> |
30 | </listitem> | 26 | </listitem> |
31 | 27 | ||
32 | <listitem> | 28 | <listitem> |
33 | <para>setup_env_requirements.txt</para> | 29 | <para>modules</para> |
34 | </listitem> | 30 | </listitem> |
35 | 31 | ||
36 | <listitem> | 32 | <listitem> |
37 | <para>setup_env.sh</para> | 33 | <para>setup_env_requirements.txt</para> |
38 | </listitem> | 34 | </listitem> |
39 | 35 | ||
40 | <listitem> | 36 | <listitem> |
41 | <para>test_harness</para> | 37 | <para>setup_env.sh</para> |
42 | </listitem> | 38 | </listitem> |
43 | 39 | ||
44 | <listitem> | 40 | <listitem> |
45 | <para>unit_tests</para> | 41 | <para>test_harness</para> |
46 | </listitem> | 42 | </listitem> |
47 | 43 | ||
48 | <listitem> | 44 | <listitem> |
49 | <para>VERSION</para> | 45 | <para>unit_tests</para> |
50 | </listitem> | 46 | </listitem> |
51 | </itemizedlist> | 47 | |
48 | <listitem> | ||
49 | <para>VERSION</para> | ||
50 | </listitem> | ||
51 | </itemizedlist> | ||
52 | 52 | ||
53 | <para>Each file/directory is described in more details in the following | 53 | <para>Each file/directory is described in more details in the following |
54 | sections.</para> | 54 | sections.</para> |
@@ -58,70 +58,72 @@ | |||
58 | 58 | ||
59 | <para>The <filename>setup_env.sh</filename>, | 59 | <para>The <filename>setup_env.sh</filename>, |
60 | <filename>setup_env_requirements.txt</filename> and | 60 | <filename>setup_env_requirements.txt</filename> and |
61 | <filename>environment_variables.sh</filename> files are used to create the | 61 | <filename>environment_variables.sh</filename> files are used to create |
62 | testing virtual environment, using the following | 62 | the testing virtual environment, using the following |
63 | prerequisites:</para> | 63 | prerequisites:</para> |
64 | |||
65 | <itemizedlist spacing="compact"> | ||
66 | <listitem> | ||
67 | <para>The environment variable</para> | ||
68 | </listitem> | ||
69 | 64 | ||
70 | <listitem> | 65 | <itemizedlist spacing="compact"> |
71 | <para>Python packages</para> | 66 | <listitem> |
72 | </listitem> | 67 | <para>The environment variable</para> |
68 | </listitem> | ||
73 | 69 | ||
74 | <listitem> | 70 | <listitem> |
75 | <para>Ansible package(s)</para> | 71 | <para>Python packages</para> |
76 | </listitem> | 72 | </listitem> |
77 | </itemizedlist> | ||
78 | 73 | ||
79 | <para>Where the <filename>environment_variables.sh</filename> script sets the | 74 | <listitem> |
80 | environment variables. The <filename>setup_env_requirements.txt</filename> contains the | 75 | <para>Ansible package(s)</para> |
81 | mapping between the package name and its version, and the <filename>setup_env.sh</filename> | 76 | </listitem> |
82 | script creates a testing virtual environment.</para> | 77 | </itemizedlist> |
83 | 78 | ||
84 | <para>The <filename>setup_env.sh</filename> does the | 79 | <para>Where the <filename>environment_variables.sh</filename> script |
85 | following:</para> | 80 | sets the environment variables. The |
86 | 81 | <filename>setup_env_requirements.txt</filename> contains the mapping | |
87 | <itemizedlist spacing="compact"> | 82 | between the package name and its version, and the |
88 | <listitem> | 83 | <filename>setup_env.sh</filename> script creates a testing virtual |
89 | <para>Checks if the <literal>Python 3</literal> and | 84 | environment.</para> |
90 | <literal>pip</literal> packages are installed on the host. If at | ||
91 | least one package is not installed on the host, then an error is | ||
92 | displayed and the script stops.</para> | ||
93 | </listitem> | ||
94 | 85 | ||
95 | <listitem> | 86 | <para>The <filename>setup_env.sh</filename> does the following:</para> |
96 | <para>Creates and activates the <literal>testHarness-venv</literal> | ||
97 | virtual environment.</para> | ||
98 | </listitem> | ||
99 | 87 | ||
100 | <listitem> | 88 | <itemizedlist spacing="compact"> |
101 | <para>Upgrades the <literal>pip</literal> package to the newest | 89 | <listitem> |
102 | version.</para> | 90 | <para>Checks if the <literal>Python 3</literal> and |
103 | </listitem> | 91 | <literal>pip</literal> packages are installed on the host. If at |
92 | least one package is not installed on the host, then an error is | ||
93 | displayed and the script stops.</para> | ||
94 | </listitem> | ||
104 | 95 | ||
105 | <listitem> | 96 | <listitem> |
106 | <para>Installs the packages defined in | 97 | <para>Creates and activates the <literal>testHarness-venv</literal> |
107 | <filename>setup_env_requirements.txt</filename> on the virtual | 98 | virtual environment.</para> |
108 | environment.</para> | 99 | </listitem> |
109 | </listitem> | ||
110 | 100 | ||
111 | <listitem> | 101 | <listitem> |
112 | <para>Sets the environment variables defined in | 102 | <para>Upgrades the <literal>pip</literal> package to the newest |
113 | <filename>environment_variables.sh</filename> on the virtual | 103 | version.</para> |
114 | environment.</para> | 104 | </listitem> |
115 | </listitem> | 105 | |
116 | </itemizedlist> | 106 | <listitem> |
107 | <para>Installs the packages defined in | ||
108 | <filename>setup_env_requirements.txt</filename> on the virtual | ||
109 | environment.</para> | ||
110 | </listitem> | ||
111 | |||
112 | <listitem> | ||
113 | <para>Sets the environment variables defined in | ||
114 | <filename>environment_variables.sh</filename> on the virtual | ||
115 | environment.</para> | ||
116 | </listitem> | ||
117 | </itemizedlist> | ||
117 | </section> | 118 | </section> |
118 | 119 | ||
119 | <section id ="version_changelog"> | 120 | <section id="version_changelog"> |
120 | <title>VERSION and CHANGELOG</title> | 121 | <title>VERSION and CHANGELOG</title> |
121 | 122 | ||
122 | <para>The <filename>VERSION</filename> and <filename>CHANGELOG</filename> files | 123 | <para>The <filename>VERSION</filename> and |
123 | contain information about the version, build number, and all the notable | 124 | <filename>CHANGELOG</filename> files contain information about the |
124 | changes added in the Enea Edge Automation.</para> | 125 | version, build number, and all the notable changes added in the Enea |
126 | Edge Automation.</para> | ||
125 | </section> | 127 | </section> |
126 | 128 | ||
127 | <section id="module_enea_dir"> | 129 | <section id="module_enea_dir"> |
@@ -129,26 +131,26 @@ | |||
129 | 131 | ||
130 | <para>The <literal>modules/enea</literal> directory contains the | 132 | <para>The <literal>modules/enea</literal> directory contains the |
131 | following:</para> | 133 | following:</para> |
132 | |||
133 | <itemizedlist spacing="compact"> | ||
134 | <listitem> | ||
135 | <para><literal>config</literal> - contains the configuration files | ||
136 | that need to be updated in order to successfully run the | ||
137 | Enea Edge Automation. For more details, see <xref | ||
138 | linkend="AFTH_cofig" />.</para> | ||
139 | </listitem> | ||
140 | 134 | ||
141 | <listitem> | 135 | <itemizedlist spacing="compact"> |
142 | <para><literal>scenario</literal> - contains the test scenarios. | 136 | <listitem> |
143 | The test scenarios include custom script examples, service | 137 | <para><literal>config</literal> - contains the configuration files |
144 | chaining VNF examples and so on.</para> | 138 | that need to be updated in order to successfully run the Enea Edge |
145 | </listitem> | 139 | Automation. For more details, see <xref |
140 | linkend="AFTH_cofig" />.</para> | ||
141 | </listitem> | ||
146 | 142 | ||
147 | <listitem> | 143 | <listitem> |
148 | <para><literal>VNF_images</literal> - contains the VNF images that | 144 | <para><literal>scenario</literal> - contains the test scenarios. The |
149 | are used in test scenarios.</para> | 145 | test scenarios include custom script examples, service chaining VNF |
150 | </listitem> | 146 | examples and so on.</para> |
151 | </itemizedlist> | 147 | </listitem> |
148 | |||
149 | <listitem> | ||
150 | <para><literal>VNF_images</literal> - contains the VNF images that | ||
151 | are used in test scenarios.</para> | ||
152 | </listitem> | ||
153 | </itemizedlist> | ||
152 | </section> | 154 | </section> |
153 | 155 | ||
154 | <section id="automation_framework_dir"> | 156 | <section id="automation_framework_dir"> |
@@ -156,55 +158,67 @@ | |||
156 | 158 | ||
157 | <para>The <literal>automation_framework</literal> directory includes all | 159 | <para>The <literal>automation_framework</literal> directory includes all |
158 | the Python scripts used by the Automation Framework. Each Python script | 160 | the Python scripts used by the Automation Framework. Each Python script |
159 | implements a class that defines a functionality of the Enea Edge Management application.</para> | 161 | implements a class that defines a functionality of the Enea Edge |
162 | Management application.</para> | ||
160 | 163 | ||
161 | <para>The Python scripts can be split into the following:</para> | 164 | <para>The Python scripts can be split into the following:</para> |
162 | |||
163 | <itemizedlist> | ||
164 | <listitem> | ||
165 | <para>The <filename>uCPEMgrHTTPClientRestAPIv2.py</filename> script, | ||
166 | where the <literal>uCPEMgrHTTPClient</literal> class is defined. This | ||
167 | class communicates with the Enea Edge Management application via REST API.</para> | ||
168 | </listitem> | ||
169 | 165 | ||
170 | <listitem> | 166 | <itemizedlist> |
171 | <para>Other Python scripts, where the classes for the Enea Edge Management | 167 | <listitem> |
172 | module are defined. Each class inherits the | 168 | <para>The <filename>ManagementHTTPClientRestAPIv2.py</filename> |
173 | <literal>uCPEMgrHTTPClientRestAPIv2</literal> class and uses its | 169 | script, where the <literal>ManagementClient</literal> class is |
174 | methods to communicate with the Enea Edge Management application via the REST API. Each class | 170 | defined. This class communicates with the Enea Edge Management |
175 | corresponds to an Enea Edge Management module.</para> | 171 | application via REST API.</para> |
176 | 172 | ||
177 | <para><emphasis role="bold">Example</emphasis>: the | 173 | <note> |
178 | <filename>OfflineConfigHandler.py</filename> script, where the | 174 | <para>The <filename>uCPEMgrHTTPClientRestAPIv2.py</filename> |
179 | <literal>OfflineConfigHandler</literal> class is defined. Inside | 175 | script is where the <literal>uCPEMgrHTTPClient</literal> class is |
180 | this class, the methods for offline configuration functionality | 176 | defined. The <literal>uCPEMgrHTTPClient</literal> class is a |
181 | are implemented: <literal>addOfflineConfig</literal>, | 177 | wrapper of the <literal>ManagementClient</literal> class. This |
182 | <literal>removeOfflineConfig</literal>, | 178 | script is deprecated and will be removed starting with the next |
183 | <literal>uploaOfflineConfig</literal> and so on.</para> | 179 | major release.</para> |
184 | </listitem> | 180 | </note> |
185 | </itemizedlist> | 181 | </listitem> |
182 | |||
183 | <listitem> | ||
184 | <para>Other Python scripts, where the classes for the Enea Edge | ||
185 | Management module are defined. Each class inherits the | ||
186 | <literal>ManagementClient</literal> class and uses its methods to | ||
187 | communicate with the Enea Edge Management application via the REST | ||
188 | API. Each class corresponds to an Enea Edge Management | ||
189 | module.</para> | ||
190 | |||
191 | <para><emphasis role="bold">Example</emphasis>: the | ||
192 | <filename>OfflineConfigHandler.py</filename> script, where the | ||
193 | <literal>OfflineConfigHandler</literal> class is defined. Inside | ||
194 | this class, the methods for offline configuration functionality are | ||
195 | implemented: <literal>addOfflineConfig</literal>, | ||
196 | <literal>removeOfflineConfig</literal>, | ||
197 | <literal>uploaOfflineConfig</literal> and so on.</para> | ||
198 | </listitem> | ||
199 | </itemizedlist> | ||
186 | </section> | 200 | </section> |
187 | 201 | ||
188 | <section id="unit_test_dir"> | 202 | <section id="unit_test_dir"> |
189 | <title>The unit_test directory</title> | 203 | <title>The unit_test directory</title> |
190 | 204 | ||
191 | <para>The <literal>unit_test</literal> directory contains:</para> | 205 | <para>The <literal>unit_test</literal> directory contains:</para> |
192 | |||
193 | <itemizedlist spacing="compact"> | ||
194 | <listitem> | ||
195 | <para>JSON files for complex scenarios with multiple | ||
196 | operations.</para> | ||
197 | </listitem> | ||
198 | 206 | ||
199 | <listitem> | 207 | <itemizedlist spacing="compact"> |
200 | <para>The Python <literal>unit-test</literal> class.</para> | 208 | <listitem> |
201 | </listitem> | 209 | <para>JSON files for complex scenarios with multiple |
210 | operations.</para> | ||
211 | </listitem> | ||
202 | 212 | ||
203 | <listitem> | 213 | <listitem> |
204 | <para>Loader scripts for generating specific test cases for the | 214 | <para>The Python <literal>unit-test</literal> class.</para> |
205 | available Python script.</para> | 215 | </listitem> |
206 | </listitem> | 216 | |
207 | </itemizedlist> | 217 | <listitem> |
218 | <para>Loader scripts for generating specific test cases for the | ||
219 | available Python script.</para> | ||
220 | </listitem> | ||
221 | </itemizedlist> | ||
208 | 222 | ||
209 | <para>The generated test cases are injected into the Python | 223 | <para>The generated test cases are injected into the Python |
210 | <literal>unit-test</literal> suite class to run using the Python | 224 | <literal>unit-test</literal> suite class to run using the Python |
@@ -222,11 +236,12 @@ | |||
222 | 236 | ||
223 | <para>The <literal>test_harness</literal> directory contains all the | 237 | <para>The <literal>test_harness</literal> directory contains all the |
224 | implemented playbooks. This directory is structured in multiple | 238 | implemented playbooks. This directory is structured in multiple |
225 | subdirectories, each subdirectory represents a functionality of the Enea Edge Management application. Each implemented playbook from this directory runs a method | 239 | subdirectories, each subdirectory represents a functionality of the Enea |
226 | from a Python class from the <literal>automation_framework</literal> | 240 | Edge Management application. Each implemented playbook from this |
227 | directory. Each playbook is an atomic operation, a basic operation that | 241 | directory runs a method from a Python class from the |
228 | need to be tested. These playbooks are used in complex test | 242 | <literal>automation_framework</literal> directory. Each playbook is an |
229 | scenarios.</para> | 243 | atomic operation, a basic operation that need to be tested. These |
244 | playbooks are used in complex test scenarios.</para> | ||
230 | </section> | 245 | </section> |
231 | 246 | ||
232 | <section id="log_dir"> | 247 | <section id="log_dir"> |
@@ -234,64 +249,67 @@ | |||
234 | 249 | ||
235 | <para>The <literal>log</literal> directory is added in the directory | 250 | <para>The <literal>log</literal> directory is added in the directory |
236 | structure by the <filename>setup_env.sh</filename> script. The | 251 | structure by the <filename>setup_env.sh</filename> script. The |
237 | <filename>setup_env.sh</filename> script stores the output logs in the | 252 | <filename>setup_env.sh</filename> script stores the output logs in the |
238 | <filename>setup_env.log</filename> file. The Ansible playbooks store the logs | 253 | <filename>setup_env.log</filename> file. The Ansible playbooks store the |
239 | in the <filename>ansible.log</filename> file. The Python scripts store the logs in | 254 | logs in the <filename>ansible.log</filename> file. The Python scripts |
240 | the <filename>debug.log</filename> file.</para> | 255 | store the logs in the <filename>debug.log</filename> file.</para> |
241 | </section> | 256 | </section> |
242 | </section> | 257 | </section> |
243 | 258 | ||
244 | <section id="AFTH_cofig"> | 259 | <section id="AFTH_cofig"> |
245 | <title>Configuring the System</title> | 260 | <title>Configuring the System</title> |
246 | 261 | ||
247 | <para>The configuration files must be updated before using Enea Edge Automation. | 262 | <para>The configuration files must be updated before using Enea Edge |
248 | They are stored in the <literal>modules/enea/config</literal> | 263 | Automation. They are stored in the <literal>modules/enea/config</literal> |
249 | directory.</para> | 264 | directory.</para> |
250 | 265 | ||
251 | <para>The configuration files are split according to the component that is | 266 | <para>The configuration files are split according to the component that is |
252 | used in the testing process:</para> | 267 | used in the testing process:</para> |
253 | 268 | ||
254 | <itemizedlist spacing="compact"> | 269 | <itemizedlist spacing="compact"> |
270 | <listitem> | ||
271 | <para>The Enea Edge Management application</para> | ||
272 | </listitem> | ||
273 | |||
274 | <listitem> | ||
275 | <para>uCPE Devices</para> | ||
276 | </listitem> | ||
277 | |||
278 | <listitem> | ||
279 | <para>VNFs</para> | ||
280 | </listitem> | ||
281 | </itemizedlist> | ||
282 | |||
283 | <section id="config_files_mg"> | ||
284 | <title>Configuration Files for the Enea Edge Management | ||
285 | application</title> | ||
286 | |||
287 | <para>In order to create a connection with the Enea Edge Management | ||
288 | application, the following parameters have to be specified:</para> | ||
289 | |||
290 | <itemizedlist spacing="compact"> | ||
255 | <listitem> | 291 | <listitem> |
256 | <para>The Enea Edge Management application</para> | 292 | <para>Enea Edge Management username</para> |
257 | </listitem> | 293 | </listitem> |
258 | 294 | ||
259 | <listitem> | 295 | <listitem> |
260 | <para>uCPE Devices</para> | 296 | <para>Enea Edge Management password</para> |
261 | </listitem> | 297 | </listitem> |
262 | 298 | ||
263 | <listitem> | 299 | <listitem> |
264 | <para>VNFs</para> | 300 | <para>Enea Edge Management IP address or FQDN</para> |
265 | </listitem> | 301 | </listitem> |
266 | </itemizedlist> | 302 | </itemizedlist> |
267 | 303 | ||
268 | <section id="config_files_mg"> | 304 | <para><emphasis role="bold">Updating the configuration |
269 | <title>Configuration Files for the Enea Edge Management application</title> | 305 | file</emphasis></para> |
270 | |||
271 | <para>In order to create a connection with the Enea Edge Management application, the | ||
272 | following parameters have to be updated:</para> | ||
273 | |||
274 | <itemizedlist spacing="compact"> | ||
275 | <listitem> | ||
276 | <para>Enea Edge Management username</para> | ||
277 | </listitem> | ||
278 | |||
279 | <listitem> | ||
280 | <para>Enea Edge Management password</para> | ||
281 | </listitem> | ||
282 | |||
283 | <listitem> | ||
284 | <para>Enea Edge Management IP address</para> | ||
285 | </listitem> | ||
286 | </itemizedlist> | ||
287 | |||
288 | <para><emphasis role="bold">Updating the configuration file</emphasis></para> | ||
289 | 306 | ||
290 | <orderedlist> | 307 | <orderedlist> |
291 | <listitem> | 308 | <listitem> |
292 | <para>Open <filename>modules/enea/config/uCPEManager/ucpem01.json</filename></para> | 309 | <para>Open |
293 | 310 | <filename>modules/enea/config/Management/management01.json</filename></para> | |
294 | <programlisting>{ | 311 | |
312 | <programlisting>{ | ||
295 | "ucpe_usr":"admin", | 313 | "ucpe_usr":"admin", |
296 | "ucpe_pass":"admin", | 314 | "ucpe_pass":"admin", |
297 | "ucpe_host":"172.24.3.92" | 315 | "ucpe_host":"172.24.3.92" |
@@ -300,30 +318,41 @@ | |||
300 | 318 | ||
301 | <listitem> | 319 | <listitem> |
302 | <para>Update the username, password and IP address</para> | 320 | <para>Update the username, password and IP address</para> |
321 | |||
322 | <note> | ||
323 | <para>The | ||
324 | <filename>modules/enea/config/uCPEManager/ucpem01.json</filename> | ||
325 | file is a symbolic link to the | ||
326 | <filename>modules/enea/config/Management/management01.json</filename> | ||
327 | file. It is deprecated, and it will be removed starting with the | ||
328 | next major release.</para> | ||
329 | </note> | ||
303 | </listitem> | 330 | </listitem> |
304 | </orderedlist> | 331 | </orderedlist> |
305 | 332 | ||
306 | <para>It is possible to use another JSON file for the connection with | 333 | <para>It is possible to use another JSON file for the connection with |
307 | the Enea Edge Management application.</para> | 334 | the Enea Edge Management application.</para> |
308 | 335 | ||
309 | <para><emphasis role="bold">Changing the path for the Enea Edge Management JSON | 336 | <para><emphasis role="bold">Changing the path for the Enea Edge |
310 | file</emphasis></para> | 337 | Management JSON file</emphasis></para> |
311 | |||
312 | <orderedlist> | ||
313 | <listitem> | ||
314 | <para>Open the <filename>automation_framework/uCPEMgrHTTPClientRestAPIv2.py</filename> file.</para> | ||
315 | </listitem> | ||
316 | 338 | ||
317 | <listitem> | 339 | <orderedlist> |
318 | <para>Go to the <literal>create_json_file</literal> method from the | 340 | <listitem> |
319 | <literal>eneaUcpeMgrConfig</literal> class.</para> | 341 | <para>Open the |
320 | </listitem> | 342 | <filename>automation_framework/ManagementHTTPClientRestAPIv2.py</filename> |
343 | file.</para> | ||
344 | </listitem> | ||
321 | 345 | ||
322 | <listitem> | 346 | <listitem> |
323 | <para>Change the path of the Enea Edge Management JSON file in the | 347 | <para>Go to the <literal>create_json_file</literal> method from the |
324 | <literal>self.ucpe_json_file</literal> variable.</para> | 348 | <literal>ManagementConfig</literal> class.</para> |
325 | </listitem> | 349 | </listitem> |
326 | </orderedlist> | 350 | |
351 | <listitem> | ||
352 | <para>Change the path of the Enea Edge Management JSON file in the | ||
353 | <literal>self.ucpe_json_file</literal> variable.</para> | ||
354 | </listitem> | ||
355 | </orderedlist> | ||
327 | </section> | 356 | </section> |
328 | 357 | ||
329 | <section id="config_files_ucpe_devices"> | 358 | <section id="config_files_ucpe_devices"> |
@@ -331,42 +360,42 @@ | |||
331 | 360 | ||
332 | <para>The <literal>modules/enea/config/uCPEDevices</literal> directory | 361 | <para>The <literal>modules/enea/config/uCPEDevices</literal> directory |
333 | contains the following:</para> | 362 | contains the following:</para> |
334 | |||
335 | <itemizedlist spacing="compact"> | ||
336 | <listitem> | ||
337 | <para>Examples of the configuration files for different uCPE | ||
338 | Devices: | ||
339 | <literal>inteld1521-16</literal>,<literal>inteld1521-17</literal>, | ||
340 | and so on.</para> | ||
341 | </listitem> | ||
342 | 363 | ||
343 | <listitem> | 364 | <itemizedlist spacing="compact"> |
344 | <para>The scripts for generating all configuration files in | 365 | <listitem> |
345 | <literal>scripts</literal> folder.</para> | 366 | <para>Examples of the configuration files for different uCPE |
346 | </listitem> | 367 | Devices: |
347 | </itemizedlist> | 368 | <literal>inteld1521-16</literal>,<literal>inteld1521-17</literal>, |
369 | and so on.</para> | ||
370 | </listitem> | ||
371 | |||
372 | <listitem> | ||
373 | <para>The scripts for generating all configuration files in | ||
374 | <literal>scripts</literal> folder.</para> | ||
375 | </listitem> | ||
376 | </itemizedlist> | ||
348 | 377 | ||
349 | <para>The following scripts are implemented to generate the | 378 | <para>The following scripts are implemented to generate the |
350 | configuration files:</para> | 379 | configuration files:</para> |
351 | |||
352 | <itemizedlist spacing="compact"> | ||
353 | <listitem> | ||
354 | <para><filename>generate_device_config.py</filename> - generates the | ||
355 | JSON configuration file for the uCPE Device.</para> | ||
356 | </listitem> | ||
357 | 380 | ||
358 | <listitem> | 381 | <itemizedlist spacing="compact"> |
359 | <para><filename>generate_bridges_config_files.py</filename> - | 382 | <listitem> |
360 | generates configuration files for all possible OVS bridges created | 383 | <para><filename>generate_device_config.py</filename> - generates the |
361 | on the uCPE Device.</para> | 384 | JSON configuration file for the uCPE Device.</para> |
362 | </listitem> | 385 | </listitem> |
363 | 386 | ||
364 | <listitem> | 387 | <listitem> |
365 | <para><filename>generate_nics_config_files.py</filename> - generates | 388 | <para><filename>generate_bridges_config_files.py</filename> - |
366 | the configuration files for all possible NICs created on the uCPE | 389 | generates configuration files for all possible OVS bridges created |
367 | Device.</para> | 390 | on the uCPE Device.</para> |
368 | </listitem> | 391 | </listitem> |
369 | </itemizedlist> | 392 | |
393 | <listitem> | ||
394 | <para><filename>generate_nics_config_files.py</filename> - generates | ||
395 | the configuration files for all possible NICs created on the uCPE | ||
396 | Device.</para> | ||
397 | </listitem> | ||
398 | </itemizedlist> | ||
370 | 399 | ||
371 | <section id="generate_config"> | 400 | <section id="generate_config"> |
372 | <title>Generating Device config</title> | 401 | <title>Generating Device config</title> |
@@ -387,13 +416,14 @@ | |||
387 | </listitem> | 416 | </listitem> |
388 | </itemizedlist> | 417 | </itemizedlist> |
389 | 418 | ||
390 | <para><emphasis role="bold">Generating the device config</emphasis></para> | 419 | <para><emphasis role="bold">Generating the device |
420 | config</emphasis></para> | ||
391 | 421 | ||
392 | <orderedlist> | 422 | <orderedlist> |
393 | <listitem> | 423 | <listitem> |
394 | <para>Run <filename>generate_device_config.py</filename>:</para> | 424 | <para>Run <filename>generate_device_config.py</filename>:</para> |
395 | 425 | ||
396 | <programlisting>testHarness-venv)> python generate_device_config.py | 426 | <programlisting>testHarness-venv)> python generate_device_config.py |
397 | Device name: test | 427 | Device name: test |
398 | Device ID: test_id | 428 | Device ID: test_id |
399 | Device groupings tags [ ]: test_id | 429 | Device groupings tags [ ]: test_id |
@@ -413,13 +443,15 @@ store.json</programlisting> | |||
413 | </listitem> | 443 | </listitem> |
414 | 444 | ||
415 | <listitem> | 445 | <listitem> |
416 | <para>Check the configuration files in the <literal>modules/enea/config/uCPEDevices/test</literal> | 446 | <para>Check the configuration files in the |
447 | <literal>modules/enea/config/uCPEDevices/test</literal> | ||
417 | directory:</para> | 448 | directory:</para> |
418 | 449 | ||
419 | <itemizedlist> | 450 | <itemizedlist> |
420 | <listitem> | 451 | <listitem> |
421 | <para><filename>test.json</filename> file - contains all the | 452 | <para><filename>test.json</filename> file - contains all the |
422 | input parameters for the <literal>test</literal> device:</para> | 453 | input parameters for the <literal>test</literal> |
454 | device:</para> | ||
423 | 455 | ||
424 | <programlisting>{ | 456 | <programlisting>{ |
425 | "deviceId": "test_id", | 457 | "deviceId": "test_id", |
@@ -445,9 +477,9 @@ store.json</programlisting> | |||
445 | </listitem> | 477 | </listitem> |
446 | 478 | ||
447 | <listitem> | 479 | <listitem> |
448 | <para><filename>store.json</filename> file - contains the input | 480 | <para><filename>store.json</filename> file - contains the |
449 | parameters used for creating an offline config for the uCPE | 481 | input parameters used for creating an offline config for the |
450 | Device:</para> | 482 | uCPE Device:</para> |
451 | 483 | ||
452 | <programlisting>{ | 484 | <programlisting>{ |
453 | "version": "2.4.0", | 485 | "version": "2.4.0", |
@@ -462,8 +494,8 @@ store.json</programlisting> | |||
462 | 494 | ||
463 | <para>The <filename>generate_device_config.py</filename> script can be | 495 | <para>The <filename>generate_device_config.py</filename> script can be |
464 | executed in a non-interactive way, as follows:</para> | 496 | executed in a non-interactive way, as follows:</para> |
465 | 497 | ||
466 | <programlisting>testHarness-venv)>python generate_device_config.py --device_name=test | 498 | <programlisting>testHarness-venv)>python generate_device_config.py --device_name=test |
467 | --device_id=test_id --device_grouping_tags=test_id --version 2.4.0 | 499 | --device_id=test_id --device_grouping_tags=test_id --version 2.4.0 |
468 | --device_ip_addr=10.0.0.1 --call_home=false --mgmt_nic=eth0 --wan_nic=eth1 | 500 | --device_ip_addr=10.0.0.1 --call_home=false --mgmt_nic=eth0 --wan_nic=eth1 |
469 | --lan_nic=eth2 --wap_nic=wlan0</programlisting> | 501 | --lan_nic=eth2 --wap_nic=wlan0</programlisting> |
@@ -474,8 +506,8 @@ store.json</programlisting> | |||
474 | scenario.</para> | 506 | scenario.</para> |
475 | 507 | ||
476 | <para>When the script is interactively run, the parameter's value | 508 | <para>When the script is interactively run, the parameter's value |
477 | between the square brackets is the default one. It can be omitted when the | 509 | between the square brackets is the default one. It can be omitted when |
478 | script is non-interactively run.</para> | 510 | the script is non-interactively run.</para> |
479 | </section> | 511 | </section> |
480 | 512 | ||
481 | <section id="nic_config_files"> | 513 | <section id="nic_config_files"> |
@@ -486,18 +518,20 @@ store.json</programlisting> | |||
486 | 518 | ||
487 | <orderedlist> | 519 | <orderedlist> |
488 | <listitem> | 520 | <listitem> |
489 | <para>Run <filename>generate_nics_config_files.py</filename>:</para> | 521 | <para>Run |
490 | 522 | <filename>generate_nics_config_files.py</filename>:</para> | |
491 | <programlisting>(testHarness-venv)> python generate_nics_config_files.py | 523 | |
524 | <programlisting>(testHarness-venv)> python generate_nics_config_files.py | ||
492 | Device name: test | 525 | Device name: test |
493 | Check 'test' directory for JSON configuration files</programlisting> | 526 | Check 'test' directory for JSON configuration files</programlisting> |
494 | </listitem> | 527 | </listitem> |
495 | 528 | ||
496 | <listitem> | 529 | <listitem> |
497 | <para>Check the configuration files for all interface types in the | 530 | <para>Check the configuration files for all interface types in the |
498 | <literal>modules/enea/config/uCPEDevices/test</literal> directory. | 531 | <literal>modules/enea/config/uCPEDevices/test</literal> directory. |
499 | The interface name is defined in the <filename>test.json</filename> | 532 | The interface name is defined in the |
500 | file. The NIC config files have the following structure: | 533 | <filename>test.json</filename> file. The NIC config files have the |
534 | following structure: | ||
501 | <literal><interface_name>_<interface_type>_nic.json</literal>. | 535 | <literal><interface_name>_<interface_type>_nic.json</literal>. |
502 | For the <literal>eth2</literal> lan interface, the following JSON | 536 | For the <literal>eth2</literal> lan interface, the following JSON |
503 | files are created:</para> | 537 | files are created:</para> |
@@ -528,8 +562,8 @@ Check 'test' directory for JSON configuration files</programlisting> | |||
528 | </listitem> | 562 | </listitem> |
529 | 563 | ||
530 | <listitem> | 564 | <listitem> |
531 | <para><filename>lan_wan_nic.json</filename> - contains Interface | 565 | <para><filename>lan_wan_nic.json</filename> - contains |
532 | type: <literal>WAN</literal>; Address assignment: | 566 | Interface type: <literal>WAN</literal>; Address assignment: |
533 | <literal>DHCP</literal>.</para> | 567 | <literal>DHCP</literal>.</para> |
534 | 568 | ||
535 | <programlisting>{ | 569 | <programlisting>{ |
@@ -542,8 +576,8 @@ Check 'test' directory for JSON configuration files</programlisting> | |||
542 | </listitem> | 576 | </listitem> |
543 | 577 | ||
544 | <listitem> | 578 | <listitem> |
545 | <para><filename>wap_wap_nic.json</filename> - contains Interface | 579 | <para><filename>wap_wap_nic.json</filename> - contains |
546 | type: <literal>WAP</literal>; Country Code: | 580 | Interface type: <literal>WAP</literal>; Country Code: |
547 | <literal>SE</literal>; Wireless band: | 581 | <literal>SE</literal>; Wireless band: |
548 | <literal>band5GHz</literal>; Wireless Mode: <literal>802.11 | 582 | <literal>band5GHz</literal>; Wireless Mode: <literal>802.11 |
549 | g/n</literal>; Radio Channel: <literal>42 (80 MHz | 583 | g/n</literal>; Radio Channel: <literal>42 (80 MHz |
@@ -561,10 +595,10 @@ Check 'test' directory for JSON configuration files</programlisting> | |||
561 | </listitem> | 595 | </listitem> |
562 | </orderedlist> | 596 | </orderedlist> |
563 | 597 | ||
564 | <para>The <filename>generate_nics_config_files.py</filename> script can | 598 | <para>The <filename>generate_nics_config_files.py</filename> script |
565 | be executed in a non-interactive way, as follows:</para> | 599 | can be executed in a non-interactive way, as follows:</para> |
566 | 600 | ||
567 | <programlisting>(testHarness-venv)> python generate_nics_config_files.py --device_name=test | 601 | <programlisting>(testHarness-venv)> python generate_nics_config_files.py --device_name=test |
568 | Check 'test' directory for JSON configuration files</programlisting> | 602 | Check 'test' directory for JSON configuration files</programlisting> |
569 | 603 | ||
570 | <para>The values from the JSON files depend on the input | 604 | <para>The values from the JSON files depend on the input |
@@ -579,74 +613,76 @@ Check 'test' directory for JSON configuration files</programlisting> | |||
579 | 613 | ||
580 | <orderedlist> | 614 | <orderedlist> |
581 | <listitem> | 615 | <listitem> |
582 | <para>Run <filename>generate_bridges_config_files.py</filename>:</para> | 616 | <para>Run |
583 | 617 | <filename>generate_bridges_config_files.py</filename>:</para> | |
584 | <programlisting>(testHarness-venv)> python generate_bridges_config_files.py | 618 | |
619 | <programlisting>(testHarness-venv)> python generate_bridges_config_files.py | ||
585 | Device name: test | 620 | Device name: test |
586 | Check 'test' directory for JSON configuration files</programlisting> | 621 | Check 'test' directory for JSON configuration files</programlisting> |
587 | </listitem> | 622 | </listitem> |
588 | 623 | ||
589 | <listitem> | 624 | <listitem> |
590 | <para>Check the configuration files in the | 625 | <para>Check the configuration files in the |
591 | <literal>modules/enea/config/uCPEDevices/test</literal> directory. | 626 | <literal>modules/enea/config/uCPEDevices/test</literal> directory. |
592 | The name of OVS bridges type has the following structure: | 627 | The name of OVS bridges type has the following structure: |
593 | <literal><bridge_type>_br.json</literal>. The following JSON | 628 | <literal><bridge_type>_br.json</literal>. The following JSON |
594 | files are created:</para> | 629 | files are created:</para> |
595 | |||
596 | <itemizedlist> | ||
597 | <listitem> | ||
598 | <para><filename>ibm_br.json</filename> - contains information about the | ||
599 | <literal>Inband management OVS bridge</literal>:</para> | ||
600 | 630 | ||
601 | <programlisting>{ | 631 | <itemizedlist> |
632 | <listitem> | ||
633 | <para><filename>ibm_br.json</filename> - contains information | ||
634 | about the <literal>Inband management OVS | ||
635 | bridge</literal>:</para> | ||
636 | |||
637 | <programlisting>{ | ||
602 | "name": "ibm_br", | 638 | "name": "ibm_br", |
603 | "type": "inband_mgmt" | 639 | "type": "inband_mgmt" |
604 | }</programlisting> | 640 | }</programlisting> |
605 | </listitem> | 641 | </listitem> |
606 | 642 | ||
607 | <listitem> | 643 | <listitem> |
608 | <para><filename>sfc_br.json</filename> - contains: | 644 | <para><filename>sfc_br.json</filename> - contains: |
609 | <literal>Dataplane OVS bridge</literal>; Type: | 645 | <literal>Dataplane OVS bridge</literal>; Type: |
610 | <literal>integration</literal>:</para> | 646 | <literal>integration</literal>:</para> |
611 | 647 | ||
612 | <programlisting>{ | 648 | <programlisting>{ |
613 | "name": "sfc_br", | 649 | "name": "sfc_br", |
614 | "type": "dataplane", | 650 | "type": "dataplane", |
615 | "subType": "integration", | 651 | "subType": "integration", |
616 | "interfaces": [] | 652 | "interfaces": [] |
617 | }</programlisting> | 653 | }</programlisting> |
618 | </listitem> | 654 | </listitem> |
619 | 655 | ||
620 | <listitem> | 656 | <listitem> |
621 | <para><filename>vnfmgmt_ipv4_br.json</filename> - contains | 657 | <para><filename>vnfmgmt_ipv4_br.json</filename> - contains |
622 | <literal>VNF Management OVS bridge, IPv4</literal>:</para> | 658 | <literal>VNF Management OVS bridge, IPv4</literal>:</para> |
623 | 659 | ||
624 | <programlisting>{ | 660 | <programlisting>{ |
625 | "name": "vnfmgmt_ipv4_br", | 661 | "name": "vnfmgmt_ipv4_br", |
626 | "type": "vnfMgmt", | 662 | "type": "vnfMgmt", |
627 | "vnfMgmtAddress": "10.0.0.1" | 663 | "vnfMgmtAddress": "10.0.0.1" |
628 | }</programlisting> | 664 | }</programlisting> |
629 | </listitem> | 665 | </listitem> |
630 | 666 | ||
631 | <listitem> | 667 | <listitem> |
632 | <para><filename>vnfmgmt_ipv6_br.json</filename> - contains | 668 | <para><filename>vnfmgmt_ipv6_br.json</filename> - contains |
633 | <literal>VNF Management OVS bridge, IPv6</literal>:</para> | 669 | <literal>VNF Management OVS bridge, IPv6</literal>:</para> |
634 | 670 | ||
635 | <programlisting> | 671 | <programlisting> |
636 | { | 672 | { |
637 | "name": "vnfmgmt_ipv6_br", | 673 | "name": "vnfmgmt_ipv6_br", |
638 | "type": "vnfMgmt", | 674 | "type": "vnfMgmt", |
639 | "vnfMgmtAddress": "2001:db8:0:0:0:0:0:0" | 675 | "vnfMgmtAddress": "2001:db8:0:0:0:0:0:0" |
640 | }</programlisting> | 676 | }</programlisting> |
641 | </listitem> | 677 | </listitem> |
642 | 678 | ||
643 | <listitem> | 679 | <listitem> |
644 | <para><filename>lan_br.json</filename> - contains | 680 | <para><filename>lan_br.json</filename> - contains |
645 | <literal>Dataplane OVS bridge</literal>; Type: | 681 | <literal>Dataplane OVS bridge</literal>; Type: |
646 | <literal>communication</literal>; Interface: | 682 | <literal>communication</literal>; Interface: |
647 | <literal>eth2</literal>:</para> | 683 | <literal>eth2</literal>:</para> |
648 | 684 | ||
649 | <programlisting>lan_br.json | 685 | <programlisting>lan_br.json |
650 | { | 686 | { |
651 | "name": "lan_br", | 687 | "name": "lan_br", |
652 | "type": "dataplane", | 688 | "type": "dataplane", |
@@ -655,28 +691,28 @@ Check 'test' directory for JSON configuration files</programlisting> | |||
655 | "eth2" | 691 | "eth2" |
656 | ] | 692 | ] |
657 | }</programlisting> | 693 | }</programlisting> |
658 | </listitem> | 694 | </listitem> |
659 | 695 | ||
660 | <listitem> | 696 | <listitem> |
661 | <para><filename>wap_br.json</filename> - contains | 697 | <para><filename>wap_br.json</filename> - contains |
662 | <literal>Dataplane OVS bridge</literal>; Type: | 698 | <literal>Dataplane OVS bridge</literal>; Type: |
663 | <literal>communication</literal>:</para> | 699 | <literal>communication</literal>:</para> |
664 | 700 | ||
665 | <programlisting>{ | 701 | <programlisting>{ |
666 | "name": "wap_br", | 702 | "name": "wap_br", |
667 | "type": "dataplane", | 703 | "type": "dataplane", |
668 | "subType": "communication", | 704 | "subType": "communication", |
669 | "interfaces": [] | 705 | "interfaces": [] |
670 | }</programlisting> | 706 | }</programlisting> |
671 | </listitem> | 707 | </listitem> |
672 | </itemizedlist> | 708 | </itemizedlist> |
673 | </listitem> | 709 | </listitem> |
674 | </orderedlist> | 710 | </orderedlist> |
675 | 711 | ||
676 | <para>The <filename>generate_bridges_config_files.py</filename> script | 712 | <para>The <filename>generate_bridges_config_files.py</filename> script |
677 | can be executed in a non-interactive way, as follows:</para> | 713 | can be executed in a non-interactive way, as follows:</para> |
678 | 714 | ||
679 | <programlisting>(testHarness-venv)> python generate_bridges_config_files.py --device-name=test | 715 | <programlisting>(testHarness-venv)> python generate_bridges_config_files.py --device-name=test |
680 | Check 'test' directory for JSON configuration files</programlisting> | 716 | Check 'test' directory for JSON configuration files</programlisting> |
681 | 717 | ||
682 | <para>The values from the JSON files depend on the input | 718 | <para>The values from the JSON files depend on the input |
@@ -687,14 +723,14 @@ Check 'test' directory for JSON configuration files</programlisting> | |||
687 | <section id="config_file_vnf"> | 723 | <section id="config_file_vnf"> |
688 | <title>Configuration Files for the VNF</title> | 724 | <title>Configuration Files for the VNF</title> |
689 | 725 | ||
690 | <para>The VNF directory <literal>modules/enea/config/VNF</literal>, | 726 | <para>The VNF directory <literal>modules/enea/config/VNF</literal>, |
691 | contains subdirectories for each defined VNF: | 727 | contains subdirectories for each defined VNF: |
692 | <literal>fortigateFWImage</literal>, <literal>junipervSRXImae</literal> | 728 | <literal>fortigateFWImage</literal>, <literal>junipervSRXImae</literal> |
693 | and so on.</para> | 729 | and so on.</para> |
694 | 730 | ||
695 | <para>Each VNF subdirectory contains configuration files for: cloud-init, | 731 | <para>Each VNF subdirectory contains configuration files for: |
696 | VNF Descriptors, VNF instances. These configuration files are | 732 | cloud-init, VNF Descriptors, VNF instances. These configuration files |
697 | examples used in test scenarios from Enea Edge Automation.</para> | 733 | are examples used in test scenarios from Enea Edge Automation.</para> |
698 | 734 | ||
699 | <para>For more details about the test scenarios from | 735 | <para>For more details about the test scenarios from |
700 | <literal>modules/enea/scenario/</literal>, see <xref | 736 | <literal>modules/enea/scenario/</literal>, see <xref |
@@ -705,72 +741,88 @@ Check 'test' directory for JSON configuration files</programlisting> | |||
705 | <section id="AFTH_automation"> | 741 | <section id="AFTH_automation"> |
706 | <title>The Automation Framework</title> | 742 | <title>The Automation Framework</title> |
707 | 743 | ||
708 | <para>The Automation Framework scripts described in the following section | 744 | <para>The Automation Framework scripts described in the following section |
709 | are located in the <literal><AF-installdir>/automation_framework</literal> directory.</para> | 745 | are located in the |
746 | <literal><Automation-installdir>/automation_framework</literal> | ||
747 | directory.</para> | ||
710 | 748 | ||
711 | <section id="httpclient_class"> | 749 | <section id="httpclient_class"> |
712 | <title>The uCPEMgrHTTPClient class</title> | 750 | <title>The ManagementClient class</title> |
713 | 751 | ||
714 | <para>The <literal>uCPEMgrHTTPClient</literal> class is implemented in the | 752 | <para>The <literal>ManagementClient</literal> class is implemented in |
715 | <filename>uCPEMgrHTTPClientRestAPIv2.py</filename> script.</para> | 753 | the <filename>ManagementHTTPClientRestAPIv2.py</filename> script.</para> |
716 | 754 | ||
717 | <para>The scope of this class is to send REST API requests to the Enea Edge Management application. | 755 | <para>The scope of this class is to send REST API requests to the Enea |
718 | The methods of the <literal>uCPEMgrHTTPClient</literal> class | 756 | Edge Management application. The methods of the |
719 | represent REST API calls to the Enea Edge Management application or ways for creating the | 757 | <literal>ManagementClient</literal> class represent REST API calls to |
720 | objects that are used as input for sending the request.</para> | 758 | the Enea Edge Management application or ways for creating the objects |
759 | that are used as input for sending the request.</para> | ||
721 | 760 | ||
722 | <para>The dictionaries used as the payload in the REST API requests are created | 761 | <para>The dictionaries used as the payload in the REST API requests are |
723 | in methods from this class. The output of these methods is used as input | 762 | created in methods from this class. The output of these methods is used |
724 | for the REST API request payload.</para> | 763 | as input for the REST API request payload.</para> |
725 | 764 | ||
726 | <para>Each method has a short description in the header, as | 765 | <para>Each method has a short description in the header, as |
727 | follows:</para> | 766 | follows:</para> |
728 | |||
729 | <itemizedlist spacing="compact"> | ||
730 | <listitem> | ||
731 | <para>The scope of the method</para> | ||
732 | </listitem> | ||
733 | 767 | ||
734 | <listitem> | 768 | <itemizedlist spacing="compact"> |
735 | <para>The input parameters</para> | 769 | <listitem> |
736 | </listitem> | 770 | <para>The scope of the method</para> |
771 | </listitem> | ||
737 | 772 | ||
738 | <listitem> | 773 | <listitem> |
739 | <para>The return value from the source code</para> | 774 | <para>The input parameters</para> |
740 | </listitem> | 775 | </listitem> |
741 | 776 | ||
742 | <listitem> | 777 | <listitem> |
743 | <para>The URL for the REST API call</para> | 778 | <para>The return value from the source code</para> |
744 | </listitem> | 779 | </listitem> |
745 | 780 | ||
746 | <listitem> | 781 | <listitem> |
747 | <para>The payload dictionary for the REST API call</para> | 782 | <para>The URL for the REST API call</para> |
748 | </listitem> | 783 | </listitem> |
749 | </itemizedlist> | 784 | |
785 | <listitem> | ||
786 | <para>The payload dictionary for the REST API call</para> | ||
787 | </listitem> | ||
788 | </itemizedlist> | ||
750 | 789 | ||
751 | <para>Other classes from the <literal>automation_framework</literal> | 790 | <para>Other classes from the <literal>automation_framework</literal> |
752 | directory inherit this class, and call its methods.</para> | 791 | directory inherit this class, and call its methods.</para> |
792 | |||
793 | <note> | ||
794 | <para>The <literal>uCPEMgrHTTPClient</literal> class is a wrapper of | ||
795 | the <literal>ManagementClient</literal> class. All the methods defined | ||
796 | in the <literal>ManagementClient</literal> class can be used when the | ||
797 | <literal>uCPEMgrHTTPClient</literal> object is instantiated. The | ||
798 | <literal>uCPEMgrHTTPClient</literal> object is deprecated and will be | ||
799 | removed starting with the next major release. It is recommended to use | ||
800 | the <literal>ManagementClient</literal> class instead.</para> | ||
801 | </note> | ||
753 | 802 | ||
754 | <para><emphasis role="bold">Examples</emphasis>:</para> | 803 | <para><emphasis role="bold">Examples</emphasis>:</para> |
755 | 804 | ||
756 | <orderedlist spacing="compact"> | 805 | <orderedlist spacing="compact"> |
757 | <listitem> | 806 | <listitem> |
758 | <para>uCPE Device functionalities are defined in the <literal>uCPEDeviceHandler</literal> class.</para> | 807 | <para>uCPE Device functionalities are defined in the |
808 | <literal>uCPEDeviceHandler</literal> class.</para> | ||
759 | </listitem> | 809 | </listitem> |
760 | 810 | ||
761 | <listitem> | 811 | <listitem> |
762 | <para>The <literal>uCPEDeviceHandler</literal> class inherites the <literal>uCPEMgrHTTPClient</literal> class.</para> | 812 | <para>The <literal>uCPEDeviceHandler</literal> class inherites the |
813 | <literal>ManagementClient</literal> class.</para> | ||
763 | </listitem> | 814 | </listitem> |
764 | 815 | ||
765 | <listitem> | 816 | <listitem> |
766 | <para>The <literal>uCPEDeviceHandler</literal> method calls methods from | 817 | <para>The <literal>uCPEDeviceHandler</literal> method calls methods |
767 | <literal>uCPEMgrHTTPClient</literal> to send requests to the Enea Edge Management application.</para> | 818 | from <literal>ManagementClient</literal> to send requests to the |
819 | Enea Edge Management application.</para> | ||
768 | </listitem> | 820 | </listitem> |
769 | 821 | ||
770 | <listitem> | 822 | <listitem> |
771 | <para>Methods from <literal>uCPEMgrHTTPClient</literal> create the | 823 | <para>Methods from <literal>ManagementClient</literal> create the |
772 | payload dictionary starting from the input parameters and send the REST API | 824 | payload dictionary starting from the input parameters and send the |
773 | request.</para> | 825 | REST API request.</para> |
774 | </listitem> | 826 | </listitem> |
775 | 827 | ||
776 | <listitem> | 828 | <listitem> |
@@ -783,18 +835,19 @@ Check 'test' directory for JSON configuration files</programlisting> | |||
783 | <section id="mg_functionalities"> | 835 | <section id="mg_functionalities"> |
784 | <title>Handlers for Enea Edge Management Functionalities</title> | 836 | <title>Handlers for Enea Edge Management Functionalities</title> |
785 | 837 | ||
786 | <para>In Enea Edge Automation the modules of the Enea Edge Management application are | 838 | <para>In Enea Edge Automation the modules of the Enea Edge Management |
787 | represented by Python classes called <literal>Handlers</literal>. Each | 839 | application are represented by Python classes called |
788 | Python class represents a functionality of the Enea Edge Management application.</para> | 840 | <literal>Handlers</literal>. Each Python class represents a |
841 | functionality of the Enea Edge Management application.</para> | ||
789 | 842 | ||
790 | <para>These classes are implemented in the Python scripts that have a | 843 | <para>These classes are implemented in the Python scripts that have a |
791 | <literal>Handler</literal> string included in the name. The name of the | 844 | <literal>Handler</literal> string included in the name. The name of the |
792 | classes is the same as the name of Python script.</para> | 845 | classes is the same as the name of Python script.</para> |
793 | 846 | ||
794 | <para>For the usage of any class, run the Python script with the <emphasis | 847 | <para>For the usage of any class, run the Python script with the |
795 | role="bold">--help</emphasis> option:</para> | 848 | <emphasis role="bold">--help</emphasis> option:</para> |
796 | 849 | ||
797 | <programlisting>python automation_framework/uCPEDeviceHandler.py --help | 850 | <programlisting>python automation_framework/uCPEDeviceHandler.py --help |
798 | Usage: uCPEDeviceHandler.py [OPTIONS] [PARAMETERS]... | 851 | Usage: uCPEDeviceHandler.py [OPTIONS] [PARAMETERS]... |
799 | 852 | ||
800 | Options: | 853 | Options: |
@@ -807,12 +860,12 @@ Options: | |||
807 | -o, --display_output Display output of the method | 860 | -o, --display_output Display output of the method |
808 | --help Show this message and exit.</programlisting> | 861 | --help Show this message and exit.</programlisting> |
809 | 862 | ||
810 | <para>In the <literal>test_harness/<module name></literal> directory, | 863 | <para>In the <literal>test_harness/<module name></literal> |
811 | the Ansible Playbooks are implemented for running the Python scripts | 864 | directory, the Ansible Playbooks are implemented for running the Python |
812 | from Enea Edge Automation. The name of the Ansible Playbooks is the same | 865 | scripts from Enea Edge Automation. The name of the Ansible Playbooks is |
813 | as the name of the Python method. The Python command is between the | 866 | the same as the name of the Python method. The Python command is between |
814 | <literal><command> ... </command></literal> tags from the | 867 | the <literal><command> ... </command></literal> tags from |
815 | <literal>*.yml</literal> files.</para> | 868 | the <literal>*.yml</literal> files.</para> |
816 | 869 | ||
817 | <section id="mg_functionalities_ucpe"> | 870 | <section id="mg_functionalities_ucpe"> |
818 | <title>uCPE Device</title> | 871 | <title>uCPE Device</title> |
@@ -847,8 +900,8 @@ Options: | |||
847 | 900 | ||
848 | <itemizedlist spacing="compact"> | 901 | <itemizedlist spacing="compact"> |
849 | <listitem> | 902 | <listitem> |
850 | <para>Configuration file located in | 903 | <para>Configuration file located in |
851 | <literal>modules/enea/config/uCPEDevices</literal>, with the | 904 | <literal>modules/enea/config/uCPEDevices</literal>, with the |
852 | <emphasis role="bold">-f</emphasis> option.</para> | 905 | <emphasis role="bold">-f</emphasis> option.</para> |
853 | </listitem> | 906 | </listitem> |
854 | 907 | ||
@@ -885,19 +938,19 @@ addDpdkExternalInterface -f | |||
885 | modules/enea/config/uCPEDevices/<device_name>/<interface_name>_dpdk_nic.json </programlisting> | 938 | modules/enea/config/uCPEDevices/<device_name>/<interface_name>_dpdk_nic.json </programlisting> |
886 | 939 | ||
887 | <para><emphasis role="bold">Example:</emphasis></para> | 940 | <para><emphasis role="bold">Example:</emphasis></para> |
888 | 941 | ||
889 | <programlisting>python automation_framework/uCPEDeviceHandler.py -d vep1445-8 -m | 942 | <programlisting>python automation_framework/uCPEDeviceHandler.py -d vep1445-8 -m |
890 | addDpdkExternalInterface -f modules/enea/config/uCPEDevices/vep1445-8/lan_dpdk_nic.json</programlisting> | 943 | addDpdkExternalInterface -f modules/enea/config/uCPEDevices/vep1445-8/lan_dpdk_nic.json</programlisting> |
891 | 944 | ||
892 | <para>The syntax for running the | 945 | <para>The syntax for running the |
893 | <literal>addDpdkExternalInterface</literal> functionality:</para> | 946 | <literal>addDpdkExternalInterface</literal> functionality:</para> |
894 | 947 | ||
895 | <programlisting>python automation_framework/uCPEDeviceHandler.py -d <device_name> -m | 948 | <programlisting>python automation_framework/uCPEDeviceHandler.py -d <device_name> -m |
896 | addDpdkExternalInterface <interface_name> <dpdk_type></programlisting> | 949 | addDpdkExternalInterface <interface_name> <dpdk_type></programlisting> |
897 | 950 | ||
898 | <para><emphasis role="bold">Example:</emphasis></para> | 951 | <para><emphasis role="bold">Example:</emphasis></para> |
899 | 952 | ||
900 | <programlisting>python automation_framework/uCPEDeviceHandler.py -d vep1445-8 -m | 953 | <programlisting>python automation_framework/uCPEDeviceHandler.py -d vep1445-8 -m |
901 | addDpdkExternalInterface eno4 vfio-pci</programlisting> | 954 | addDpdkExternalInterface eno4 vfio-pci</programlisting> |
902 | </section> | 955 | </section> |
903 | 956 | ||
@@ -907,23 +960,23 @@ addDpdkExternalInterface eno4 vfio-pci</programlisting> | |||
907 | <para>The Enea Edge Management functionalities regarding the offline | 960 | <para>The Enea Edge Management functionalities regarding the offline |
908 | configuration are implemented as follows:</para> | 961 | configuration are implemented as follows:</para> |
909 | 962 | ||
910 | <itemizedlist> | 963 | <itemizedlist> |
911 | <listitem> | 964 | <listitem> |
912 | <para><filename>automation_framework/OfflineConfigHandler.py</filename> | 965 | <para><filename>automation_framework/OfflineConfigHandler.py</filename> |
913 | - <literal>OfflineConfigHandler</literal> class has methods for | 966 | - <literal>OfflineConfigHandler</literal> class has methods for |
914 | adding an offline config, removing an offline config, uploading | 967 | adding an offline config, removing an offline config, uploading an |
915 | an offline config on a uCPE Device, and so on.</para> | 968 | offline config on a uCPE Device, and so on.</para> |
916 | </listitem> | 969 | </listitem> |
917 | 970 | ||
918 | <listitem> | 971 | <listitem> |
919 | <para><filename>automation_framework/Configuration.py</filename> - | 972 | <para><filename>automation_framework/Configuration.py</filename> - |
920 | <literal>Configuration</literal> class has methods for | 973 | <literal>Configuration</literal> class has methods for configuring |
921 | configuring the uCPE Device: DPDK, external interface, and OVS | 974 | the uCPE Device: DPDK, external interface, and OVS bridges. The |
922 | bridges. The methods of the <literal>Configuration</literal> | 975 | methods of the <literal>Configuration</literal> class are used in |
923 | class are used in the <literal>uCPEDeviceHandler</literal> and | 976 | the <literal>uCPEDeviceHandler</literal> and |
924 | <literal>OfflineConfigHandler</literal> classes.</para> | 977 | <literal>OfflineConfigHandler</literal> classes.</para> |
925 | </listitem> | 978 | </listitem> |
926 | </itemizedlist> | 979 | </itemizedlist> |
927 | 980 | ||
928 | <para>The <literal>OfflineConfigHandler</literal> class inherites the | 981 | <para>The <literal>OfflineConfigHandler</literal> class inherites the |
929 | <literal>Configuration</literal> class with all its methods.</para> | 982 | <literal>Configuration</literal> class with all its methods.</para> |
@@ -931,18 +984,19 @@ addDpdkExternalInterface eno4 vfio-pci</programlisting> | |||
931 | <para>The functionalities for the <literal>adding offline config | 984 | <para>The functionalities for the <literal>adding offline config |
932 | store</literal>, <literal>removing offline config store</literal>, | 985 | store</literal>, <literal>removing offline config store</literal>, |
933 | <literal>configuring external interfaces</literal>, | 986 | <literal>configuring external interfaces</literal>, |
934 | <literal>configuring OVS bridges</literal> can be run using the:</para> | 987 | <literal>configuring OVS bridges</literal> can be run using |
988 | the:</para> | ||
935 | 989 | ||
936 | <itemizedlist | 990 | <itemizedlist spacing="compact"> |
937 | spacing="compact"> | 991 | <listitem> |
938 | <listitem> | 992 | <para>Configuration file located in |
939 | <para>Configuration file located in <literal>modules/enea/config/uCPEDevices</literal>.</para> | 993 | <literal>modules/enea/config/uCPEDevices</literal>.</para> |
940 | </listitem> | 994 | </listitem> |
941 | 995 | ||
942 | <listitem> | 996 | <listitem> |
943 | <para>Input parameters.</para> | 997 | <para>Input parameters.</para> |
944 | </listitem> | 998 | </listitem> |
945 | </itemizedlist> | 999 | </itemizedlist> |
946 | 1000 | ||
947 | <para>The other functionalities can be run using only input | 1001 | <para>The other functionalities can be run using only input |
948 | parameters.</para> | 1002 | parameters.</para> |
@@ -951,7 +1005,7 @@ addDpdkExternalInterface eno4 vfio-pci</programlisting> | |||
951 | script with the <emphasis role="bold">-v/--verbose</emphasis> | 1005 | script with the <emphasis role="bold">-v/--verbose</emphasis> |
952 | option:</para> | 1006 | option:</para> |
953 | 1007 | ||
954 | <programlisting>python automation_framework/OfflineConfigHandler.py -v | 1008 | <programlisting>python automation_framework/OfflineConfigHandler.py -v |
955 | Info about OfflineConfigHandler methods | 1009 | Info about OfflineConfigHandler methods |
956 | ... | 1010 | ... |
957 | Method: addOfflineConfigStore | 1011 | Method: addOfflineConfigStore |
@@ -962,47 +1016,48 @@ Parameters: version, deviceId, deviceGroupingTags, descr='' | |||
962 | <literal>addOfflineConfigStore</literal> using the configuration | 1016 | <literal>addOfflineConfigStore</literal> using the configuration |
963 | file:</para> | 1017 | file:</para> |
964 | 1018 | ||
965 | <programlisting>python automation_framework/OfflineConfigHandler.py -s <store_name> -m | 1019 | <programlisting>python automation_framework/OfflineConfigHandler.py -s <store_name> -m |
966 | addOfflineConfigStore -f <path_to_store_configuration_file></programlisting> | 1020 | addOfflineConfigStore -f <path_to_store_configuration_file></programlisting> |
967 | 1021 | ||
968 | <para><emphasis role="bold">Example:</emphasis></para> | 1022 | <para><emphasis role="bold">Example:</emphasis></para> |
969 | 1023 | ||
970 | <programlisting>python automation_framework/OfflineConfigHandler.py -s testOfflienConfig -m | 1024 | <programlisting>python automation_framework/OfflineConfigHandler.py -s testOfflienConfig -m |
971 | addOfflineConfigStore -f modules/enea/config/uCPEDevices/test/store.json</programlisting> | 1025 | addOfflineConfigStore -f modules/enea/config/uCPEDevices/test/store.json</programlisting> |
972 | 1026 | ||
973 | <para>The syntax for running the <literal>addOfflineConfigStore</literal> | 1027 | <para>The syntax for running the |
974 | functionality using input parameters: <literal>version</literal>, | 1028 | <literal>addOfflineConfigStore</literal> functionality using input |
975 | <literal>deviceId</literal>, <literal>deviceGroupingTags</literal>, | 1029 | parameters: <literal>version</literal>, <literal>deviceId</literal>, |
976 | <literal>desc</literal>:</para> | 1030 | <literal>deviceGroupingTags</literal>, <literal>desc</literal>:</para> |
977 | 1031 | ||
978 | <programlisting>python automation_framework/OfflineConfigHandler.py -s <store_name> -m | 1032 | <programlisting>python automation_framework/OfflineConfigHandler.py -s <store_name> -m |
979 | addOfflineConfigStore <version> <deviceId> <deviceGroupingTags></programlisting> | 1033 | addOfflineConfigStore <version> <deviceId> <deviceGroupingTags></programlisting> |
980 | 1034 | ||
981 | <para><emphasis role="bold">Example:</emphasis></para> | 1035 | <para><emphasis role="bold">Example:</emphasis></para> |
982 | 1036 | ||
983 | <programlisting>python automation_framework/OfflineConfigHandler.py -s testStoreName -m | 1037 | <programlisting>python automation_framework/OfflineConfigHandler.py -s testStoreName -m |
984 | addOfflineConfigStore 2.4.0 deviceId customerTag</programlisting> | 1038 | addOfflineConfigStore 2.4.0 deviceId customerTag</programlisting> |
985 | </section> | 1039 | </section> |
986 | 1040 | ||
987 | <section id="custom_scripts_mg_func"> | 1041 | <section id="custom_scripts_mg_func"> |
988 | <title>Custom scripts</title> | 1042 | <title>Custom scripts</title> |
989 | 1043 | ||
990 | <para>All the Enea Edge Management functionalities regarding the custom | 1044 | <para>All the Enea Edge Management functionalities regarding the |
991 | scripts are implemented in the <filename>CustomScriptsHandler.py</filename> | 1045 | custom scripts are implemented in the |
992 | script.</para> | 1046 | <filename>CustomScriptsHandler.py</filename> script.</para> |
993 | 1047 | ||
994 | <para>The <literal>CustomScriptsHandler</literal> class is implemented | 1048 | <para>The <literal>CustomScriptsHandler</literal> class is implemented |
995 | in <filename>CustomScriptsHandler.py</filename> script.</para> | 1049 | in <filename>CustomScriptsHandler.py</filename> script.</para> |
996 | 1050 | ||
997 | <para>Examples of custom scripts are in the | 1051 | <para>Examples of custom scripts are in the |
998 | <literal>modules/enea/config/customScripts/</literal> directory. They | 1052 | <literal>modules/enea/config/customScripts/</literal> directory. They |
999 | can be used when running a Python method from the <literal>CustomScriptsHandler</literal> class.</para> | 1053 | can be used when running a Python method from the |
1054 | <literal>CustomScriptsHandler</literal> class.</para> | ||
1000 | 1055 | ||
1001 | <para>To list the implemented methods (functionalities), run the | 1056 | <para>To list the implemented methods (functionalities), run the |
1002 | script with the <emphasis role="bold">-v/--verbose</emphasis> | 1057 | script with the <emphasis role="bold">-v/--verbose</emphasis> |
1003 | option:</para> | 1058 | option:</para> |
1004 | 1059 | ||
1005 | <programlisting>python automation_framework/CustomScriptsHandler.py -v | 1060 | <programlisting>python automation_framework/CustomScriptsHandler.py -v |
1006 | Info about CustomScriptHandler methods | 1061 | Info about CustomScriptHandler methods |
1007 | ... | 1062 | ... |
1008 | Method: uploadCustomScript | 1063 | Method: uploadCustomScript |
@@ -1012,7 +1067,7 @@ Parameters: customScript, phase | |||
1012 | <para>The syntax for running the <literal>uploadCustomScript</literal> | 1067 | <para>The syntax for running the <literal>uploadCustomScript</literal> |
1013 | functionality starting from the input parameters:</para> | 1068 | functionality starting from the input parameters:</para> |
1014 | 1069 | ||
1015 | <programlisting>python automation_framework/CustomScriptsHandler.py -m | 1070 | <programlisting>python automation_framework/CustomScriptsHandler.py -m |
1016 | uploadCustomScript <customScript> <phase></programlisting> | 1071 | uploadCustomScript <customScript> <phase></programlisting> |
1017 | 1072 | ||
1018 | <para><emphasis role="bold">Example</emphasis>:</para> | 1073 | <para><emphasis role="bold">Example</emphasis>:</para> |
@@ -1026,9 +1081,9 @@ modules/enea/config/customScripts/test_fail_after_once once-after-startup</progr | |||
1026 | <section id="device_upgrade_mg_func"> | 1081 | <section id="device_upgrade_mg_func"> |
1027 | <title>Device upgrade</title> | 1082 | <title>Device upgrade</title> |
1028 | 1083 | ||
1029 | <para>The Enea Edge Management functionalities regarding the uCPE Device | 1084 | <para>The Enea Edge Management functionalities regarding the uCPE |
1030 | upgrade are implemented in the <filename>DeviceUpgradeHandler.py</filename> | 1085 | Device upgrade are implemented in the |
1031 | script.</para> | 1086 | <filename>DeviceUpgradeHandler.py</filename> script.</para> |
1032 | 1087 | ||
1033 | <para>The <literal>DeviceUpgradeHandler</literal> class is implemented | 1088 | <para>The <literal>DeviceUpgradeHandler</literal> class is implemented |
1034 | in the <filename>DeviceUpgradeHandler.py</filename> script.</para> | 1089 | in the <filename>DeviceUpgradeHandler.py</filename> script.</para> |
@@ -1037,7 +1092,7 @@ modules/enea/config/customScripts/test_fail_after_once once-after-startup</progr | |||
1037 | script with the <emphasis role="bold">-v/--verbose</emphasis> | 1092 | script with the <emphasis role="bold">-v/--verbose</emphasis> |
1038 | option:</para> | 1093 | option:</para> |
1039 | 1094 | ||
1040 | <programlisting>python automation_framework/DeviceUpgradeHandler.py -v | 1095 | <programlisting>python automation_framework/DeviceUpgradeHandler.py -v |
1041 | Info about DeviceUpgradeHandler methods | 1096 | Info about DeviceUpgradeHandler methods |
1042 | ... | 1097 | ... |
1043 | Method: uploadImage | 1098 | Method: uploadImage |
@@ -1047,7 +1102,7 @@ Parameters: imagePath, type, module='VcpeAgent' | |||
1047 | <para>The syntax for running the <literal>uploadImage</literal> | 1102 | <para>The syntax for running the <literal>uploadImage</literal> |
1048 | functionality starting from the input parameters:</para> | 1103 | functionality starting from the input parameters:</para> |
1049 | 1104 | ||
1050 | <programlisting>python automation_framework/DeviceUpgradeHandler.py -m | 1105 | <programlisting>python automation_framework/DeviceUpgradeHandler.py -m |
1051 | uploadImage <imagePath> <type></programlisting> | 1106 | uploadImage <imagePath> <type></programlisting> |
1052 | 1107 | ||
1053 | <para>The default value for the <literal>module</literal> is | 1108 | <para>The default value for the <literal>module</literal> is |
@@ -1068,45 +1123,27 @@ uploadImage <imagePath> <type></programlisting> | |||
1068 | <para>The Enea Edge Management functionalities regarding the VNF are | 1123 | <para>The Enea Edge Management functionalities regarding the VNF are |
1069 | implemented in the <filename>VNFHandler.py</filename> script.</para> | 1124 | implemented in the <filename>VNFHandler.py</filename> script.</para> |
1070 | 1125 | ||
1071 | <para>The <literal>VNFHandler</literal> class is implemented in | 1126 | <para>The <literal>VNFHandler</literal> class is implemented in the |
1072 | the <filename>VNFHandler.py</filename> script.</para> | 1127 | <filename>VNFHandler.py</filename> script.</para> |
1073 | 1128 | ||
1074 | <para>To list the implemented methods (functionalities), run the | 1129 | <para>To list the implemented methods (functionalities), run the |
1075 | script with the <emphasis role="bold">-v/--verbose</emphasis> | 1130 | script with the <emphasis role="bold">-v/--verbose</emphasis> |
1076 | option:</para> | 1131 | option:</para> |
1077 | 1132 | ||
1078 | <programlisting>python automation_framework/VNFHandler.py -v | 1133 | <programlisting>python automation_framework/VNFHandler.py -v |
1079 | Info about VNFHandler methods | 1134 | Info about VNFHandler methods |
1080 | ... | 1135 | ... |
1081 | Method: getVNFDescriptorByName | 1136 | Method: getVNFDescriptorByName |
1082 | Parameters: vnfDescriptorName | 1137 | Parameters: vnfDescriptorName |
1083 | ...</programlisting> | 1138 | ...</programlisting> |
1084 | 1139 | ||
1085 | <para>The syntax for running the <literal>getVNFDescriptorByName</literal> | 1140 | <para>The syntax for running the |
1086 | functionality starting from the input parameters:</para> | 1141 | <literal>getVNFDescriptorByName</literal> functionality starting from |
1087 | 1142 | the input parameters:</para> | |
1088 | <programlisting>python automation_framework/VNFHandler.py | ||
1089 | [-m getVNFDescriptorByName <vnfDescriptorName> [-o]] [-v]</programlisting> | ||
1090 | |||
1091 | <para>Where the following are included:</para> | ||
1092 | |||
1093 | <itemizedlist spacing="compact"> | ||
1094 | <listitem> | ||
1095 | <para><emphasis role="bold">vnfDescriptorName</emphasis> - name | ||
1096 | of the VNF Descriptor</para> | ||
1097 | </listitem> | ||
1098 | |||
1099 | <listitem> | ||
1100 | <para><emphasis role="bold">v</emphasis> - verbose option</para> | ||
1101 | </listitem> | ||
1102 | 1143 | ||
1103 | <listitem> | 1144 | <programlisting>python automation_framework/VNFHandler.py -m getVNFDescriptorByName <vnfDescriptorName> -o</programlisting> |
1104 | <para><emphasis role="bold">o</emphasis> - displays the full | ||
1105 | output</para> | ||
1106 | </listitem> | ||
1107 | </itemizedlist> | ||
1108 | 1145 | ||
1109 | <para><emphasis>Example:</emphasis></para> | 1146 | <para><emphasis role="bold">Example:</emphasis></para> |
1110 | 1147 | ||
1111 | <programlisting>python automation_framework/VNFHandler.py -m getVNFDescriptorByName fortigateImage -o</programlisting> | 1148 | <programlisting>python automation_framework/VNFHandler.py -m getVNFDescriptorByName fortigateImage -o</programlisting> |
1112 | 1149 | ||
@@ -1116,43 +1153,43 @@ Parameters: vnfDescriptorName | |||
1116 | <section id="mg_funcs"> | 1153 | <section id="mg_funcs"> |
1117 | <title>Enea Edge Management</title> | 1154 | <title>Enea Edge Management</title> |
1118 | 1155 | ||
1119 | <para>The functionalities regarding the Enea Edge Management configuration | 1156 | <para>The functionalities regarding the Enea Edge Management |
1120 | are implemented in the <filename>uCPEManagerHandler.py</filename> | 1157 | configuration are implemented in the |
1121 | script.</para> | 1158 | <filename>ManagementHandler.py</filename> script.</para> |
1122 | 1159 | ||
1123 | <para>The <literal>uCPEManagerHandler</literal> class is implemented | 1160 | <para>The <literal>ManagementHandler</literal> class is implemented in |
1124 | in the <filename>uCPEManagerHandler.py</filename> script.</para> | 1161 | the <filename>ManagementHandler.py</filename> script.</para> |
1125 | 1162 | ||
1126 | <para>To list the implemented methods (functionalities), run the | 1163 | <para>To list the implemented methods (functionalities), run the |
1127 | script with the <emphasis role="bold">-v/--verbose</emphasis> | 1164 | script with the <emphasis role="bold">-v/--verbose</emphasis> |
1128 | option:</para> | 1165 | option:</para> |
1129 | 1166 | ||
1130 | <programlisting>python automation_framework/uCPEManagerHandler.py -v | 1167 | <programlisting>python automation_framework/ManagementHandler.py -v |
1131 | Info about uCPEManagerHandler methods | 1168 | Info about ManagementHandler methods |
1132 | ... | 1169 | ... |
1133 | Method: getuCPEManagerVersion | 1170 | Method: getManagementVersion |
1134 | Parameters(not needed): -- | 1171 | Parameters(not needed): -- |
1135 | ...</programlisting> | 1172 | ...</programlisting> |
1136 | 1173 | ||
1137 | <para>The syntax for running the <literal>getuCPEManagerVersion</literal> | 1174 | <para>The syntax for running the |
1138 | functionaltity is:</para> | 1175 | <literal>getManagementVersion</literal> functionaltity is:</para> |
1139 | |||
1140 | <programlisting>python automation_framework/uCPEManagerHandler.py [-m getuCPEManagerVersion [-o]][-v]</programlisting> | ||
1141 | |||
1142 | <para>Where the following are included:</para> | ||
1143 | |||
1144 | <itemizedlist spacing="compact"> | ||
1145 | <listitem> | ||
1146 | <para><emphasis role="bold">v</emphasis> - verbose option</para> | ||
1147 | </listitem> | ||
1148 | 1176 | ||
1149 | <listitem> | 1177 | <programlisting>python automation_framework/ManagementHandler.py -m getManagementVersion -o</programlisting> |
1150 | <para><emphasis role="bold">o</emphasis> - displays the full | ||
1151 | output</para> | ||
1152 | </listitem> | ||
1153 | </itemizedlist> | ||
1154 | 1178 | ||
1155 | <para>All the other methods run in a similar way.</para> | 1179 | <para>All the other methods run in a similar way.</para> |
1180 | |||
1181 | <note> | ||
1182 | <para>The functionalities relating to the Enea Edge Management | ||
1183 | application configuration are also implemented in the | ||
1184 | <filename>uCPEManagerHandler.py</filename> script where the | ||
1185 | <literal>uCPEManagerHandler</literal> class is defined. The | ||
1186 | <literal>uCPEManagerHandler</literal> class is a wrapper of the | ||
1187 | <literal>ManagementHandler</literal> class. The | ||
1188 | <filename>uCPEManagerHandler.py</filename> file is deprecated and | ||
1189 | will be removed starting with the next major release. It is | ||
1190 | recommended to use the <filename>ManagementHandler.py</filename> | ||
1191 | script instead.</para> | ||
1192 | </note> | ||
1156 | </section> | 1193 | </section> |
1157 | </section> | 1194 | </section> |
1158 | 1195 | ||
@@ -1162,13 +1199,14 @@ Parameters(not needed): -- | |||
1162 | <section id="config_class"> | 1199 | <section id="config_class"> |
1163 | <title>The Configuration class</title> | 1200 | <title>The Configuration class</title> |
1164 | 1201 | ||
1165 | <para>The <literal>Configuration</literal> class is implemented in | 1202 | <para>The <literal>Configuration</literal> class is implemented in the |
1166 | the <filename>Configuration.py</filename> script. The | 1203 | <filename>Configuration.py</filename> script. The |
1167 | <literal>Configuration</literal> class cannot be independently | 1204 | <literal>Configuration</literal> class cannot be independently |
1168 | used.</para> | 1205 | used.</para> |
1169 | 1206 | ||
1170 | <para>The <literal>uCPEDeviceHandler</literal> and | 1207 | <para>The <literal>uCPEDeviceHandler</literal> and |
1171 | <literal>OfflineConfigHandler</literal> classes inherit the <literal>Configuration</literal> class. The methods should be | 1208 | <literal>OfflineConfigHandler</literal> classes inherit the |
1209 | <literal>Configuration</literal> class. The methods should be | ||
1172 | implemented for both functionalities: uCPE Device and Offline | 1210 | implemented for both functionalities: uCPE Device and Offline |
1173 | config.</para> | 1211 | config.</para> |
1174 | </section> | 1212 | </section> |
@@ -1176,52 +1214,53 @@ Parameters(not needed): -- | |||
1176 | <section id="logger_class"> | 1214 | <section id="logger_class"> |
1177 | <title>The Logger Class</title> | 1215 | <title>The Logger Class</title> |
1178 | 1216 | ||
1179 | <para>The <literal>Logger</literal> class is implemented in | 1217 | <para>The <literal>Logger</literal> class is implemented in the |
1180 | the <filename>Logger.py</filename> script. It is inherited in all the | 1218 | <filename>Logger.py</filename> script. It is inherited in all the |
1181 | classes defined in <literal>automation_framework</literal>.</para> | 1219 | classes defined in <literal>automation_framework</literal>.</para> |
1182 | 1220 | ||
1183 | <para>This class defines a logger for displaying the logs from Python | 1221 | <para>This class defines a logger for displaying the logs from Python |
1184 | scripts, in console log and file log.</para> | 1222 | scripts, in console log and file log.</para> |
1185 | 1223 | ||
1186 | <para>For console log, the logger has:</para> | 1224 | <para>For console log, the logger has:</para> |
1187 | 1225 | ||
1188 | <itemizedlist spacing="compact"> | 1226 | <itemizedlist spacing="compact"> |
1189 | <listitem> | 1227 | <listitem> |
1190 | <para>Default severity: <literal>INFO</literal></para> | 1228 | <para>Default severity: <literal>INFO</literal></para> |
1191 | </listitem> | 1229 | </listitem> |
1192 | 1230 | ||
1193 | <listitem> | 1231 | <listitem> |
1194 | <para>Format of the logs: <literal>[datetime] [severity] | 1232 | <para>Format of the logs: <literal>[datetime] [severity] |
1195 | message</literal></para> | 1233 | message</literal></para> |
1196 | </listitem> | 1234 | </listitem> |
1197 | </itemizedlist> | 1235 | </itemizedlist> |
1198 | 1236 | ||
1199 | <para>For file log, the logger has:</para> | 1237 | <para>For file log, the logger has:</para> |
1200 | 1238 | ||
1201 | <itemizedlist spacing="compact"> | 1239 | <itemizedlist spacing="compact"> |
1202 | <listitem> | 1240 | <listitem> |
1203 | <para>Logs path: <literal>log/debug.log</literal></para> | 1241 | <para>Logs path: <literal>log/debug.log</literal></para> |
1204 | </listitem> | 1242 | </listitem> |
1205 | 1243 | ||
1206 | <listitem> | 1244 | <listitem> |
1207 | <para>Default severity: <literal>DEBUG</literal></para> | 1245 | <para>Default severity: <literal>DEBUG</literal></para> |
1208 | </listitem> | 1246 | </listitem> |
1209 | 1247 | ||
1210 | <listitem> | 1248 | <listitem> |
1211 | <para>Format of the logs: <literal>[severity] | 1249 | <para>Format of the logs: <literal>[severity] |
1212 | [name_of_Python_script] message</literal></para> | 1250 | [name_of_Python_script] message</literal></para> |
1213 | </listitem> | 1251 | </listitem> |
1214 | </itemizedlist> | 1252 | </itemizedlist> |
1215 | </section> | 1253 | </section> |
1216 | </section> | 1254 | </section> |
1217 | </section> | 1255 | </section> |
1218 | 1256 | ||
1219 | <section id="AFTH_test"> | 1257 | <section id="AFTH_test"> |
1220 | <title>Test Harness</title> | 1258 | <title>Test Harness</title> |
1221 | 1259 | ||
1222 | <para>The Test Harness sources are in the | 1260 | <para>The Test Harness sources are in the |
1223 | <literal><AF-installdir>/test_harness</literal> directory.</para> | 1261 | <literal><Automation-installdir>/test_harness</literal> |
1224 | 1262 | directory.</para> | |
1263 | |||
1225 | <section id="indiv_ansible_playbooks"> | 1264 | <section id="indiv_ansible_playbooks"> |
1226 | <title>Individual Ansible Playbooks</title> | 1265 | <title>Individual Ansible Playbooks</title> |
1227 | 1266 | ||
@@ -1229,8 +1268,8 @@ Parameters(not needed): -- | |||
1229 | structuring the files needed for creating automated test cases using the | 1268 | structuring the files needed for creating automated test cases using the |
1230 | Enea Edge Automation, and provides a way to implement them.</para> | 1269 | Enea Edge Automation, and provides a way to implement them.</para> |
1231 | 1270 | ||
1232 | <para>The <filename>ansible.cfg</filename> file contains an example of the | 1271 | <para>The <filename>ansible.cfg</filename> file contains an example of |
1233 | Ansible default configuration. The default value for | 1272 | the Ansible default configuration. The default value for |
1234 | <literal>stdout_callback</literal> is set to | 1273 | <literal>stdout_callback</literal> is set to |
1235 | <literal>selective</literal>, to print only certain tasks. It is | 1274 | <literal>selective</literal>, to print only certain tasks. It is |
1236 | recommended to switch to <literal>debug</literal> when a test fails. By | 1275 | recommended to switch to <literal>debug</literal> when a test fails. By |
@@ -1238,46 +1277,45 @@ Parameters(not needed): -- | |||
1238 | <literal>True</literal>, task failures are considered fatal errors and | 1277 | <literal>True</literal>, task failures are considered fatal errors and |
1239 | the play execution stops.</para> | 1278 | the play execution stops.</para> |
1240 | 1279 | ||
1241 | <para>All the Playbooks that execute Automation Framework Python modules run on <literal>localhost</literal>. | 1280 | <para>All the Playbooks that execute Automation Framework Python modules |
1242 | New entries have to be created for direct communication over SSH with | 1281 | run on <literal>localhost</literal>. New entries have to be created for |
1243 | the boards.</para> | 1282 | direct communication over SSH with the boards.</para> |
1244 | 1283 | ||
1245 | <para>The <filename>setup_env.sh</filename> script sets up the | 1284 | <para>The <filename>setup_env.sh</filename> script sets up the |
1246 | <literal>testHarness</literal> test environment by creating | 1285 | <literal>testHarness</literal> test environment by creating the |
1247 | the <literal>testHarness-venv</literal> Python virtual environment, | 1286 | <literal>testHarness-venv</literal> Python virtual environment, |
1248 | executing requests needed by Automation Framework Python modules, and | 1287 | executing requests needed by Automation Framework Python modules, and |
1249 | installing Ansible. The Ansible package version is 2.9.6.</para> | 1288 | installing Ansible. The Ansible package version is 2.9.6.</para> |
1250 | 1289 | ||
1251 | <para>The <literal>test_harness</literal> directory contains all the | 1290 | <para>The <literal>test_harness</literal> directory contains all the |
1252 | implemented Ansible Playbooks. This directory contains | 1291 | implemented Ansible Playbooks. This directory contains the |
1253 | the <filename>check_errror.yml</filename> Playbook and many subdirectories, | 1292 | <filename>check_errror.yml</filename> Playbook and many subdirectories, |
1254 | each subdirectory representing an Enea Edge Management module.</para> | 1293 | each subdirectory representing an Enea Edge Management module.</para> |
1255 | 1294 | ||
1256 | <para>The <filename>check_errors.yml</filename> Playbook checks the Python | 1295 | <para>The <filename>check_errors.yml</filename> Playbook checks the |
1257 | output and returns success or fail results. This file is imported in all | 1296 | Python output and returns success or fail results. This file is imported |
1258 | playbooks from the <literal>test_harness</literal> directory and it cannot | 1297 | in all playbooks from the <literal>test_harness</literal> directory and |
1259 | be run standalone.</para> | 1298 | it cannot be run standalone.</para> |
1260 | 1299 | ||
1261 | <para>According to their functionality, the Ansible Playbooks that | 1300 | <para>According to their functionality, the Ansible Playbooks that refer |
1262 | refer to offline configuration are in the <literal>OfflineConfig</literal> | 1301 | to offline configuration are in the <literal>OfflineConfig</literal> |
1263 | directory, the ones that refers to <literal>CustomScript</literal> are | 1302 | directory, the ones that refers to <literal>CustomScript</literal> are |
1264 | in the <literal>CustomScripts</literal>, and so on.</para> | 1303 | in the <literal>CustomScripts</literal>, and so on.</para> |
1265 | 1304 | ||
1266 | <para>Each Ansible Playbook has a help menu for:</para> | 1305 | <para>Each Ansible Playbook has a help menu for:</para> |
1267 | |||
1268 | <itemizedlist | ||
1269 | spacing="compact"> | ||
1270 | <listitem> | ||
1271 | <para>Returning the syntax, and examples for running the | ||
1272 | Playbook.</para> | ||
1273 | </listitem> | ||
1274 | 1306 | ||
1275 | <listitem> | 1307 | <itemizedlist spacing="compact"> |
1276 | <para>Warning if the input parameters are wrong or not | 1308 | <listitem> |
1277 | enough. The input parameters are called <literal>extra-vars</literal> in Ansible | 1309 | <para>Returning the syntax, and examples for running the |
1278 | playbooks.</para> | 1310 | Playbook.</para> |
1279 | </listitem> | 1311 | </listitem> |
1280 | </itemizedlist> | 1312 | |
1313 | <listitem> | ||
1314 | <para>Warning if the input parameters are wrong or not enough. The | ||
1315 | input parameters are called <literal>extra-vars</literal> in Ansible | ||
1316 | playbooks.</para> | ||
1317 | </listitem> | ||
1318 | </itemizedlist> | ||
1281 | 1319 | ||
1282 | <para>The help menu is activated when the Playbook is run without any | 1320 | <para>The help menu is activated when the Playbook is run without any |
1283 | parameters.</para> | 1321 | parameters.</para> |
@@ -1289,7 +1327,7 @@ Parameters(not needed): -- | |||
1289 | <para>Display the help menu for | 1327 | <para>Display the help menu for |
1290 | <filename>addDataPlaneOvsBridge.yml</filename>:</para> | 1328 | <filename>addDataPlaneOvsBridge.yml</filename>:</para> |
1291 | 1329 | ||
1292 | <programlisting>ansible-playbook test_harness/uCPEDevice/addDataPlaneOvsBridge.yml | 1330 | <programlisting>ansible-playbook test_harness/uCPEDevice/addDataPlaneOvsBridge.yml |
1293 | 1331 | ||
1294 | This playbook runs 'addDataPlaneOvsBridge' method from uCPEDeviceHandler module | 1332 | This playbook runs 'addDataPlaneOvsBridge' method from uCPEDeviceHandler module |
1295 | 1333 | ||
@@ -1322,8 +1360,8 @@ Usage: | |||
1322 | <listitem> | 1360 | <listitem> |
1323 | <para>Run the <filename>addDataPlaneOvsBridge.yml</filename> | 1361 | <para>Run the <filename>addDataPlaneOvsBridge.yml</filename> |
1324 | playbook:</para> | 1362 | playbook:</para> |
1325 | 1363 | ||
1326 | <programlisting>ansible-playbook test_harness/uCPEDevice/addDataPlaneOvsBridge.yml -e | 1364 | <programlisting>ansible-playbook test_harness/uCPEDevice/addDataPlaneOvsBridge.yml -e |
1327 | "device=inteld1521-17 bridge_config_file=sfc_br.json" | 1365 | "device=inteld1521-17 bridge_config_file=sfc_br.json" |
1328 | ansible-playbook test_harness/uCPEDevice/addDataPlaneOvsBridge.yml -e | 1366 | ansible-playbook test_harness/uCPEDevice/addDataPlaneOvsBridge.yml -e |
1329 | "device=inteld1521-17 bridge_config_file=lan_br.json" | 1367 | "device=inteld1521-17 bridge_config_file=lan_br.json" |
@@ -1342,17 +1380,17 @@ interfaces=eno4,eno5"</programlisting> | |||
1342 | 1380 | ||
1343 | <para>Each Ansible Playbook from the <literal>test_harness</literal> | 1381 | <para>Each Ansible Playbook from the <literal>test_harness</literal> |
1344 | directory represents an atomic operation, a basic functionality that is | 1382 | directory represents an atomic operation, a basic functionality that is |
1345 | performed on the Enea Edge Management application at a specific period of the time. They can | 1383 | performed on the Enea Edge Management application at a specific period |
1346 | be sequentially run or they can be imported into other playbooks for | 1384 | of the time. They can be sequentially run or they can be imported into |
1347 | creating complex scenarios.</para> | 1385 | other playbooks for creating complex scenarios.</para> |
1348 | 1386 | ||
1349 | <para><emphasis role="bold">Example:</emphasis></para> | 1387 | <para><emphasis role="bold">Example:</emphasis></para> |
1350 | 1388 | ||
1351 | <para>To instantiate a VNF, the following operations have to be | 1389 | <para>To instantiate a VNF, the following operations have to be |
1352 | performed: connect to the uCPE Device, bind NICs, create an OVS | 1390 | performed: connect to the uCPE Device, bind NICs, create an OVS bridge, |
1353 | bridge, create a VNF descriptor, and instantiate the VNF on the | 1391 | create a VNF descriptor, and instantiate the VNF on the device. All |
1354 | device. All these operations can be run Playbook after Playbook using | 1392 | these operations can be run Playbook after Playbook using the |
1355 | the <literal>*.yml</literal> files from the <literal>test_harness</literal> | 1393 | <literal>*.yml</literal> files from the <literal>test_harness</literal> |
1356 | directory.</para> | 1394 | directory.</para> |
1357 | </section> | 1395 | </section> |
1358 | 1396 | ||
@@ -1362,74 +1400,75 @@ interfaces=eno4,eno5"</programlisting> | |||
1362 | <para>All the individual Playbooks can be used as imported Playbooks in | 1400 | <para>All the individual Playbooks can be used as imported Playbooks in |
1363 | complex test scenarios.</para> | 1401 | complex test scenarios.</para> |
1364 | 1402 | ||
1365 | <para>The complex scenarios are defined in: <literal>modules/enea/scenario</literal>.</para> | 1403 | <para>The complex scenarios are defined in: |
1404 | <literal>modules/enea/scenario</literal>.</para> | ||
1366 | 1405 | ||
1367 | <para>The test scenarios are split into the following:</para> | 1406 | <para>The test scenarios are split into the following:</para> |
1368 | 1407 | ||
1369 | <itemizedlist spacing="compact"> | 1408 | <itemizedlist spacing="compact"> |
1370 | <listitem> | 1409 | <listitem> |
1371 | <para>Functionalities to be tested and used: the | 1410 | <para>Functionalities to be tested and used: the |
1372 | <literal>CustomScripts, OfflineConfig, ovsTests</literal> | 1411 | <literal>CustomScripts, OfflineConfig, ovsTests</literal> |
1373 | directories.</para> | 1412 | directories.</para> |
1374 | </listitem> | 1413 | </listitem> |
1375 | 1414 | ||
1376 | <listitem> | 1415 | <listitem> |
1377 | <para>Service Creation and Lifecycle: | 1416 | <para>Service Creation and Lifecycle: the |
1378 | the <literal>chainedVNFsService</literal> directory.</para> | 1417 | <literal>chainedVNFsService</literal> directory.</para> |
1379 | </listitem> | 1418 | </listitem> |
1380 | 1419 | ||
1381 | <listitem> | 1420 | <listitem> |
1382 | <para>VNF Deployment and Lifecycle: | 1421 | <para>VNF Deployment and Lifecycle: the |
1383 | the <literal>fortigateFWService</literal> directory.</para> | 1422 | <literal>fortigateFWService</literal> directory.</para> |
1384 | </listitem> | 1423 | </listitem> |
1385 | </itemizedlist> | 1424 | </itemizedlist> |
1386 | 1425 | ||
1387 | <para>For each test scenario, the <literal>README</literal> file | 1426 | <para>For each test scenario, the <literal>README</literal> file |
1388 | contains:</para> | 1427 | contains:</para> |
1389 | 1428 | ||
1390 | <itemizedlist> | 1429 | <itemizedlist> |
1391 | <listitem> | 1430 | <listitem> |
1392 | <para>Preconditions:</para> | 1431 | <para>Preconditions:</para> |
1393 | |||
1394 | <itemizedlist spacing="compact"> | ||
1395 | <listitem> | ||
1396 | <para>The configuration files to be updated</para> | ||
1397 | </listitem> | ||
1398 | |||
1399 | <listitem> | ||
1400 | <para>The VNF images to be copied</para> | ||
1401 | </listitem> | ||
1402 | |||
1403 | <listitem> | ||
1404 | <para>The license file needed from the provider and added to a | ||
1405 | specific path, etc.</para> | ||
1406 | </listitem> | ||
1407 | </itemizedlist> | ||
1408 | </listitem> | ||
1409 | 1432 | ||
1410 | <listitem> | 1433 | <itemizedlist spacing="compact"> |
1411 | <para>Running procedures:</para> | 1434 | <listitem> |
1412 | 1435 | <para>The configuration files to be updated</para> | |
1413 | <itemizedlist spacing="compact"> | 1436 | </listitem> |
1414 | <listitem> | 1437 | |
1415 | <para>The <literal>ansible-playbook</literal> commands for | 1438 | <listitem> |
1416 | setup the configuration</para> | 1439 | <para>The VNF images to be copied</para> |
1417 | </listitem> | 1440 | </listitem> |
1418 | 1441 | ||
1419 | <listitem> | 1442 | <listitem> |
1420 | <para>Testing the configuration</para> | 1443 | <para>The license file needed from the provider and added to a |
1421 | </listitem> | 1444 | specific path, etc.</para> |
1422 | 1445 | </listitem> | |
1423 | <listitem> | 1446 | </itemizedlist> |
1424 | <para>Cleaning up the configuration</para> | 1447 | </listitem> |
1425 | </listitem> | 1448 | |
1426 | </itemizedlist> | 1449 | <listitem> |
1427 | </listitem> | 1450 | <para>Running procedures:</para> |
1428 | </itemizedlist> | 1451 | |
1452 | <itemizedlist spacing="compact"> | ||
1453 | <listitem> | ||
1454 | <para>The <literal>ansible-playbook</literal> commands for setup | ||
1455 | the configuration</para> | ||
1456 | </listitem> | ||
1457 | |||
1458 | <listitem> | ||
1459 | <para>Testing the configuration</para> | ||
1460 | </listitem> | ||
1461 | |||
1462 | <listitem> | ||
1463 | <para>Cleaning up the configuration</para> | ||
1464 | </listitem> | ||
1465 | </itemizedlist> | ||
1466 | </listitem> | ||
1467 | </itemizedlist> | ||
1429 | 1468 | ||
1430 | <para>The test scenarios have the <filename>variable.yml</filename> file that | 1469 | <para>The test scenarios have the <filename>variable.yml</filename> file |
1431 | contains the input parameters for the Playbooks. These variables can be | 1470 | that contains the input parameters for the Playbooks. These variables |
1432 | reused when the same setup is run on another device.</para> | 1471 | can be reused when the same setup is run on another device.</para> |
1433 | 1472 | ||
1434 | <para><emphasis role="bold">Example:</emphasis></para> | 1473 | <para><emphasis role="bold">Example:</emphasis></para> |
1435 | 1474 | ||
@@ -1450,63 +1489,70 @@ vnfi_name: "fortigateFWInstance"</programlisting> | |||
1450 | <para>The <literal>unit-test</literal> suite is implemented in the | 1489 | <para>The <literal>unit-test</literal> suite is implemented in the |
1451 | <literal>unit_tests</literal> directory.</para> | 1490 | <literal>unit_tests</literal> directory.</para> |
1452 | 1491 | ||
1453 | <para>The <literal>unit-test</literal> suite contains the | 1492 | <para>The <literal>unit-test</literal> suite contains the |
1454 | <literal>unit-test</literal> class defined in <filename>unittestSuite.py</filename>, and examples of JSON configuration | 1493 | <literal>unit-test</literal> class defined in |
1455 | files that can be used for the execution of AF Python classes from the | 1494 | <filename>unittestSuite.py</filename>, and examples of JSON configuration |
1495 | files that can be used for the execution of AF Python classes from the | ||
1456 | <literal>automation_framework</literal> directory.</para> | 1496 | <literal>automation_framework</literal> directory.</para> |
1457 | 1497 | ||
1458 | <para>The Python <literal>unit-test</literal> class defined in the | 1498 | <para>The Python <literal>unit-test</literal> class defined in the |
1459 | <filename>unittestSuite.py</filename> script provides a way to automate the execution of | 1499 | <filename>unittestSuite.py</filename> script provides a way to automate |
1460 | specific test cases for each supported Python script.</para> | 1500 | the execution of specific test cases for each supported Python |
1501 | script.</para> | ||
1461 | 1502 | ||
1462 | <para>This class requires a test suite configuration JSON file that | 1503 | <para>This class requires a test suite configuration JSON file that |
1463 | contains a dictionary list of the Python scripts to be processed. Each dictionary contains the | 1504 | contains a dictionary list of the Python scripts to be processed. Each |
1464 | path of the Python script to be loaded and the path to the file describing the test cases to | 1505 | dictionary contains the path of the Python script to be loaded and the |
1465 | be performed against the designated script.</para> | 1506 | path to the file describing the test cases to be performed against the |
1507 | designated script.</para> | ||
1466 | 1508 | ||
1467 | <para>Python <literal>unit-test</literal> suite examples are in the | 1509 | <para>Python <literal>unit-test</literal> suite examples are in the |
1468 | <literal>unit_tests/scenario</literal> directory.</para> | 1510 | <literal>unit_tests/scenario</literal> directory.</para> |
1469 | 1511 | ||
1470 | <para>Each scenario has 3 parts:</para> | 1512 | <para>Each scenario has 3 parts:</para> |
1471 | 1513 | ||
1472 | <itemizedlist spacing="compact"> | 1514 | <itemizedlist spacing="compact"> |
1473 | <listitem> | 1515 | <listitem> |
1474 | <para><literal>README</literal> - explains the prerequisites needed before running the | 1516 | <para><literal>README</literal> - explains the prerequisites needed |
1475 | Python <literal>unit-test</literal> suite.</para> | 1517 | before running the Python <literal>unit-test</literal> suite.</para> |
1476 | </listitem> | 1518 | </listitem> |
1477 | 1519 | ||
1478 | <listitem> | 1520 | <listitem> |
1479 | <para><literal>config</literal> - contains a JSON file for each | 1521 | <para><literal>config</literal> - contains a JSON file for each |
1480 | functionality that is used in the specified scenario. The JSON files have two keys:</para> | 1522 | functionality that is used in the specified scenario. The JSON files |
1481 | 1523 | have two keys:</para> | |
1482 | <itemizedlist spacing="compact"> | ||
1483 | <listitem> | ||
1484 | <para>name: The description of the functionality.</para> | ||
1485 | </listitem> | ||
1486 | 1524 | ||
1487 | <listitem> | 1525 | <itemizedlist spacing="compact"> |
1488 | <para>args: The arguments of the Python module.</para> | 1526 | <listitem> |
1489 | </listitem> | 1527 | <para>name: The description of the functionality.</para> |
1490 | </itemizedlist> | 1528 | </listitem> |
1491 | </listitem> | ||
1492 | 1529 | ||
1493 | <listitem> | 1530 | <listitem> |
1494 | <para><literal>JSON</literal> - used for running the scenario. Each JSON file contains | 1531 | <para>args: The arguments of the Python module.</para> |
1495 | the calls to the JSON files from the <literal>config</literal> directory, and has two keys:</para> | 1532 | </listitem> |
1496 | 1533 | </itemizedlist> | |
1497 | <itemizedlist spacing="compact"> | 1534 | </listitem> |
1498 | <listitem> | ||
1499 | <para>config: The JSON file from the <literal>config</literal> directory that is used.</para> | ||
1500 | </listitem> | ||
1501 | 1535 | ||
1502 | <listitem> | 1536 | <listitem> |
1503 | <para>module: The Python module that is run.</para> | 1537 | <para><literal>JSON</literal> - used for running the scenario. Each |
1504 | </listitem> | 1538 | JSON file contains the calls to the JSON files from the |
1505 | </itemizedlist> | 1539 | <literal>config</literal> directory, and has two keys:</para> |
1506 | </listitem> | 1540 | |
1507 | </itemizedlist> | 1541 | <itemizedlist spacing="compact"> |
1542 | <listitem> | ||
1543 | <para>config: The JSON file from the <literal>config</literal> | ||
1544 | directory that is used.</para> | ||
1545 | </listitem> | ||
1546 | |||
1547 | <listitem> | ||
1548 | <para>module: The Python module that is run.</para> | ||
1549 | </listitem> | ||
1550 | </itemizedlist> | ||
1551 | </listitem> | ||
1552 | </itemizedlist> | ||
1508 | 1553 | ||
1509 | <para>Steps for running the Python unit-test suite on the Enea Edge Management application are | 1554 | <para>Steps for running the Python unit-test suite on the Enea Edge |
1510 | provided in the <literal>README</literal> file from scenario in use.</para> | 1555 | Management application are provided in the <literal>README</literal> file |
1556 | from scenario in use.</para> | ||
1511 | </section> | 1557 | </section> |
1512 | </chapter> \ No newline at end of file | 1558 | </chapter> \ No newline at end of file |
diff --git a/doc/book-enea-edge-automation-user-guide/doc/book.xml b/doc/book-enea-edge-automation-user-guide/doc/book.xml index 95547b6..3a28109 100644 --- a/doc/book-enea-edge-automation-user-guide/doc/book.xml +++ b/doc/book-enea-edge-automation-user-guide/doc/book.xml | |||
@@ -8,9 +8,9 @@ | |||
8 | User Guide</title> | 8 | User Guide</title> |
9 | 9 | ||
10 | <subtitle>Release Version <xi:include | 10 | <subtitle>Release Version <xi:include |
11 | href="../../s_doceneacommon/doc/eltf_params_updated.xml" | 11 | href="../../eltf_params_updated.xml" |
12 | xmlns:xi="http://www.w3.org/2001/XInclude" | 12 | xmlns:xi="http://www.w3.org/2001/XInclude" |
13 | xpointer="element(EneaLinux_REL_VER/1)" /></subtitle> | 13 | xpointer="element(EneaEdge_REL_VER/1)" /></subtitle> |
14 | 14 | ||
15 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> | 15 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> |
16 | 16 | ||
diff --git a/doc/book-enea-edge-automation-user-guide/doc/getting_started.xml b/doc/book-enea-edge-automation-user-guide/doc/getting_started.xml index 27979cc..517f165 100644 --- a/doc/book-enea-edge-automation-user-guide/doc/getting_started.xml +++ b/doc/book-enea-edge-automation-user-guide/doc/getting_started.xml | |||
@@ -1,4 +1,4 @@ | |||
1 | <?xml version="1.0" encoding="ISO-8859-1"?> | 1 | <?xml version="1.0" encoding="UTF-8"?> |
2 | <chapter id="getting_started"> | 2 | <chapter id="getting_started"> |
3 | <title>Getting Started with Enea Edge Automation</title> | 3 | <title>Getting Started with Enea Edge Automation</title> |
4 | 4 | ||
@@ -10,133 +10,133 @@ | |||
10 | <itemizedlist spacing="compact"> | 10 | <itemizedlist spacing="compact"> |
11 | <listitem> | 11 | <listitem> |
12 | <para>Basic Setup</para> | 12 | <para>Basic Setup</para> |
13 | 13 | ||
14 | <figure> | 14 | <figure> |
15 | <title>Lab setup overview for Basic Setup</title> | 15 | <title>Lab setup overview for Basic Setup</title> |
16 | 16 | ||
17 | <mediaobject> | 17 | <mediaobject> |
18 | <imageobject> | 18 | <imageobject> |
19 | <imagedata align="center" contentwidth="600" | 19 | <imagedata align="center" contentwidth="600" |
20 | fileref="images/environment_basicsetup.png" /> | 20 | fileref="images/environment_basicsetup.png" /> |
21 | </imageobject> | 21 | </imageobject> |
22 | </mediaobject> | 22 | </mediaobject> |
23 | </figure> | 23 | </figure> |
24 | </listitem> | 24 | </listitem> |
25 | 25 | ||
26 | <listitem> | 26 | <listitem> |
27 | <para>Chained VNFs Service</para> | 27 | <para>Chained VNFs Service</para> |
28 | 28 | ||
29 | <figure> | 29 | <figure> |
30 | <title>Lab Setup Overview for Chained VNFs Service</title> | 30 | <title>Lab Setup Overview for Chained VNFs Service</title> |
31 | 31 | ||
32 | <mediaobject> | 32 | <mediaobject> |
33 | <imageobject> | 33 | <imageobject> |
34 | <imagedata align="center" contentwidth="600" | 34 | <imagedata align="center" contentwidth="600" |
35 | fileref="images/ChainedVNFsService_setup.png" /> | 35 | fileref="images/ChainedVNFsService_setup.png" /> |
36 | </imageobject> | 36 | </imageobject> |
37 | </mediaobject> | 37 | </mediaobject> |
38 | </figure> | 38 | </figure> |
39 | </listitem> | 39 | </listitem> |
40 | </itemizedlist> | 40 | </itemizedlist> |
41 | 41 | ||
42 | <para>The following environment setup is needed for running the Enea Edge Automation | 42 | <para>The following environment setup is needed for running the Enea Edge |
43 | tests:</para> | 43 | Automation tests:</para> |
44 | 44 | ||
45 | <itemizedlist> | 45 | <itemizedlist> |
46 | <listitem> | 46 | <listitem> |
47 | <para>Lab Network Requirements:</para> | 47 | <para>Lab Network Requirements:</para> |
48 | 48 | ||
49 | <itemizedlist spacing="compact"> | 49 | <itemizedlist spacing="compact"> |
50 | <listitem> | 50 | <listitem> |
51 | <para>DHCP enabled</para> | 51 | <para>DHCP enabled</para> |
52 | </listitem> | 52 | </listitem> |
53 | 53 | ||
54 | <listitem> | 54 | <listitem> |
55 | <para>Internet connectivity</para> | 55 | <para>Internet connectivity</para> |
56 | </listitem> | 56 | </listitem> |
57 | </itemizedlist> | 57 | </itemizedlist> |
58 | </listitem> | 58 | </listitem> |
59 | 59 | ||
60 | <listitem> | 60 | <listitem> |
61 | <para>Enea Edge Management Host Requirements:</para> | 61 | <para>Enea Edge Management Host Requirements:</para> |
62 | 62 | ||
63 | <itemizedlist spacing="compact"> | 63 | <itemizedlist spacing="compact"> |
64 | <listitem> | 64 | <listitem> |
65 | <para>CentOS 7 installed</para> | 65 | <para>CentOS 7 installed</para> |
66 | </listitem> | 66 | </listitem> |
67 | 67 | ||
68 | <listitem> | 68 | <listitem> |
69 | <para>A connection to the Lab Network</para> | 69 | <para>A connection to the Lab Network</para> |
70 | </listitem> | 70 | </listitem> |
71 | 71 | ||
72 | <listitem> | 72 | <listitem> |
73 | <para>The Enea Edge Management application installed. For details, see <olink | 73 | <para>The Enea Edge Management application installed. For details, |
74 | targetdoc="book_enea_edge_getting_started" | 74 | see <olink targetdoc="book_enea_edge_getting_started" |
75 | targetptr="install_ucpe_mg">Installing the Enea Edge Management application in the | 75 | targetptr="install_ucpe_mg">Installing the Enea Edge Management |
76 | <xi:include href="../../s_docbuild/olinkdb/pardoc-names.xml" | 76 | application in the <xi:include |
77 | xmlns:xi="http://www.w3.org/2001/XInclude" | 77 | href="../../s_docbuild/olinkdb/pardoc-names.xml" |
78 | xpointer="element(book_enea_edge_getting_started/1)" /></olink> | 78 | xmlns:xi="http://www.w3.org/2001/XInclude" |
79 | Manual.</para> | 79 | xpointer="element(book_enea_edge_getting_started/1)" /></olink> |
80 | </listitem> | 80 | Manual.</para> |
81 | </itemizedlist> | 81 | </listitem> |
82 | </itemizedlist> | ||
82 | </listitem> | 83 | </listitem> |
83 | 84 | ||
84 | <listitem> | 85 | <listitem> |
85 | <para>uCPE device Requirements for Basic Setup:</para> | 86 | <para>uCPE device Requirements for Basic Setup:</para> |
86 | 87 | ||
87 | <itemizedlist spacing="compact"> | 88 | <itemizedlist spacing="compact"> |
88 | <listitem> | 89 | <listitem> |
89 | <para>Minimum of 4 Physical Network Devices</para> | 90 | <para>Minimum of 4 Physical Network Devices</para> |
90 | </listitem> | 91 | </listitem> |
91 | 92 | ||
92 | <listitem> | 93 | <listitem> |
93 | <para>4GB RAM and 4 cores (Intel C3000 or Xeon D)</para> | 94 | <para>4GB RAM and 4 cores (Intel C3000 or Xeon D)</para> |
94 | </listitem> | 95 | </listitem> |
95 | 96 | ||
96 | <listitem> | 97 | <listitem> |
97 | <para>2 Physical connections to the Lab Network</para> | 98 | <para>2 Physical connections to the Lab Network</para> |
98 | </listitem> | 99 | </listitem> |
99 | 100 | ||
100 | <listitem> | 101 | <listitem> |
101 | <para>Enea Edge Runtime installed. For more | 102 | <para>Enea Edge Runtime installed. For more details, see <olink |
102 | details, see <olink | 103 | targetdoc="book_enea_edge_getting_started" |
103 | targetdoc="book_enea_edge_getting_started" | 104 | targetptr="prep_usb_ena">Preparing the USB stick for installation |
104 | targetptr="prep_usb_ena">Preparing the USB stick for | 105 | of the Enea Edge Runtime in the <xi:include |
105 | installation of the Enea Edge Runtime in the | 106 | href="../../s_docbuild/olinkdb/pardoc-names.xml" |
106 | <xi:include href="../../s_docbuild/olinkdb/pardoc-names.xml" | 107 | xmlns:xi="http://www.w3.org/2001/XInclude" |
107 | xmlns:xi="http://www.w3.org/2001/XInclude" | 108 | xpointer="element(book_enea_edge_getting_started/1)" /></olink> |
108 | xpointer="element(book_enea_edge_getting_started/1)" /></olink> | 109 | Manual.</para> |
109 | Manual.</para> | 110 | </listitem> |
110 | </listitem> | 111 | </itemizedlist> |
111 | </itemizedlist> | ||
112 | </listitem> | 112 | </listitem> |
113 | 113 | ||
114 | <listitem> | 114 | <listitem> |
115 | <para>uCPE device 1 and 2 Requirements for Chained VNFs | 115 | <para>uCPE device 1 and 2 Requirements for Chained VNFs |
116 | Service:</para> | 116 | Service:</para> |
117 | 117 | ||
118 | <itemizedlist spacing="compact"> | 118 | <itemizedlist spacing="compact"> |
119 | <listitem> | 119 | <listitem> |
120 | <para>Minimum of 4 Physical Network Devices</para> | 120 | <para>Minimum of 4 Physical Network Devices</para> |
121 | </listitem> | 121 | </listitem> |
122 | 122 | ||
123 | <listitem> | 123 | <listitem> |
124 | <para>16GB RAM and 8 cores (Intel C3000 or Xeon D)</para> | 124 | <para>16GB RAM and 8 cores (Intel C3000 or Xeon D)</para> |
125 | </listitem> | 125 | </listitem> |
126 | 126 | ||
127 | <listitem> | 127 | <listitem> |
128 | <para>2 Physical connections to the Lab Network</para> | 128 | <para>2 Physical connections to the Lab Network</para> |
129 | </listitem> | 129 | </listitem> |
130 | 130 | ||
131 | <listitem> | 131 | <listitem> |
132 | <para>1 Physical connection back to back between both uCPE | 132 | <para>1 Physical connection back to back between both uCPE |
133 | devices</para> | 133 | devices</para> |
134 | </listitem> | 134 | </listitem> |
135 | 135 | ||
136 | <listitem> | 136 | <listitem> |
137 | <para>Enea Edge Runtime installed</para> | 137 | <para>Enea Edge Runtime installed</para> |
138 | </listitem> | 138 | </listitem> |
139 | </itemizedlist> | 139 | </itemizedlist> |
140 | </listitem> | 140 | </listitem> |
141 | </itemizedlist> | 141 | </itemizedlist> |
142 | </section> | 142 | </section> |
@@ -154,125 +154,127 @@ | |||
154 | 154 | ||
155 | <listitem> | 155 | <listitem> |
156 | <para>EPEL Repository</para> | 156 | <para>EPEL Repository</para> |
157 | 157 | ||
158 | <programlisting>sudo yum install epel-release</programlisting> | 158 | <programlisting>sudo yum install epel-release</programlisting> |
159 | </listitem> | 159 | </listitem> |
160 | 160 | ||
161 | <listitem> | 161 | <listitem> |
162 | <para>PIP package manager</para> | 162 | <para>PIP package manager</para> |
163 | 163 | ||
164 | <programlisting>sudo yum -y install python-pip</programlisting> | 164 | <programlisting>sudo yum -y install python-pip</programlisting> |
165 | </listitem> | 165 | </listitem> |
166 | 166 | ||
167 | <listitem> | 167 | <listitem> |
168 | <para>Virtualenv tool</para> | 168 | <para>Virtualenv tool</para> |
169 | 169 | ||
170 | <programlisting>sudo pip install virtualenv</programlisting> | 170 | <programlisting>sudo pip install virtualenv</programlisting> |
171 | </listitem> | 171 | </listitem> |
172 | </itemizedlist> | 172 | </itemizedlist> |
173 | 173 | ||
174 | <note> | 174 | <note> |
175 | <para>It is recommended to install Enea Edge Automation and the Enea Edge Management application | 175 | <para>It is recommended to install Enea Edge Automation and the Enea |
176 | on different machines.</para> | 176 | Edge Management application on different machines.</para> |
177 | </note> | 177 | </note> |
178 | </section> | 178 | </section> |
179 | 179 | ||
180 | <section id="initial_setup"> | 180 | <section id="initial_setup"> |
181 | <title>Installing the Enea Edge Automation</title> | 181 | <title>Installing the Enea Edge Automation</title> |
182 | 182 | ||
183 | <para id="install_procedure"><emphasis role="bold">Installing the | 183 | <para id="install_procedure"><emphasis role="bold">Installing the Enea |
184 | Enea Edge Automation</emphasis></para> | 184 | Edge Automation</emphasis></para> |
185 | 185 | ||
186 | <orderedlist> | 186 | <orderedlist> |
187 | <listitem> | 187 | <listitem> |
188 | <para>Log into the host machine</para> | 188 | <para>Log into the host machine</para> |
189 | </listitem> | 189 | </listitem> |
190 | 190 | ||
191 | <listitem> | 191 | <listitem> |
192 | <para><programlisting>cd <AF-installdir></programlisting></para> | 192 | <para><programlisting>cd <Automation-installdir></programlisting></para> |
193 | </listitem> | 193 | </listitem> |
194 | 194 | ||
195 | <listitem> | 195 | <listitem> |
196 | <para>Extract the archive file</para> | 196 | <para>Extract the archive file</para> |
197 | 197 | ||
198 | <programlisting>unzip Enea_Edge_Automation_<version>-build<build_number>.zip</programlisting> | 198 | <programlisting>unzip Enea_Edge_Automation_<version>-build<build_number>.zip</programlisting> |
199 | </listitem> | 199 | </listitem> |
200 | 200 | ||
201 | <listitem> | 201 | <listitem> |
202 | <para>Run the setup of virtual environment script:</para> | 202 | <para>Run the setup of virtual environment script:</para> |
203 | 203 | ||
204 | <programlisting>source setup_env.sh</programlisting> | 204 | <programlisting>source setup_env.sh</programlisting> |
205 | </listitem> | 205 | </listitem> |
206 | 206 | ||
207 | <listitem> | 207 | <listitem> |
208 | <para>Configure the system. For more details, see <xref | 208 | <para>Configure the system. For more details, see <xref |
209 | linkend="AFTH_cofig" />.</para> | 209 | linkend="AFTH_cofig" />.</para> |
210 | </listitem> | 210 | </listitem> |
211 | </orderedlist> | 211 | </orderedlist> |
212 | 212 | ||
213 | <note> | 213 | <note> |
214 | <para>The steps are executed only once, for the initial setup of the | 214 | <para>The steps are executed only once, for the initial setup of the |
215 | environment.</para> | 215 | environment.</para> |
216 | </note> | 216 | </note> |
217 | 217 | ||
218 | <para><emphasis role="bold">Setting up the enviroment for the Enea Edge Automation</emphasis></para> | 218 | <para><emphasis role="bold">Setting up the enviroment for the Enea Edge |
219 | 219 | Automation</emphasis></para> | |
220 | <orderedlist> | 220 | |
221 | <listitem> | 221 | <orderedlist> |
222 | <para>Activate the Python virtual enviroment</para> | 222 | <listitem> |
223 | 223 | <para>Activate the Python virtual enviroment</para> | |
224 | <programlisting>source <AF-installdir>/testHarness-venv/bin/activate</programlisting> | 224 | |
225 | </listitem> | 225 | <programlisting>source <Automation-installdir>/testHarness-venv/bin/activate</programlisting> |
226 | 226 | </listitem> | |
227 | <listitem> | 227 | |
228 | <para>Optionally, check the History Information</para> | 228 | <listitem> |
229 | 229 | <para>Optionally, check the History Information</para> | |
230 | <programlisting>vi <AF-installdir>/CHANGELOG</programlisting> | 230 | |
231 | </listitem> | 231 | <programlisting>vi <Automation-installdir>/CHANGELOG</programlisting> |
232 | 232 | </listitem> | |
233 | <listitem> | 233 | |
234 | <para>Close the Python virtual environment</para> | 234 | <listitem> |
235 | 235 | <para>Close the Python virtual environment</para> | |
236 | <programlisting>deactivate</programlisting> | 236 | |
237 | </listitem> | 237 | <programlisting>deactivate</programlisting> |
238 | </orderedlist> | 238 | </listitem> |
239 | </orderedlist> | ||
239 | </section> | 240 | </section> |
240 | 241 | ||
241 | <section id="upgrade_AF"> | 242 | <section id="upgrade_AF"> |
242 | <title>Upgrading the Enea Edge Automation</title> | 243 | <title>Upgrading the Enea Edge Automation</title> |
243 | 244 | ||
244 | <para><emphasis role="bold">Upgrading the Enea Edge Automation</emphasis></para> | 245 | <para><emphasis role="bold">Upgrading the Enea Edge |
245 | 246 | Automation</emphasis></para> | |
246 | <orderedlist> | 247 | |
247 | <listitem> | 248 | <orderedlist> |
248 | <para>Log into the host machine</para> | 249 | <listitem> |
249 | </listitem> | 250 | <para>Log into the host machine</para> |
250 | 251 | </listitem> | |
251 | <listitem> | 252 | |
252 | <para><programlisting>cd <AF-installdir></programlisting></para> | 253 | <listitem> |
253 | </listitem> | 254 | <para><programlisting>cd <Automation-installdir></programlisting></para> |
254 | 255 | </listitem> | |
255 | <listitem> | 256 | |
256 | <para>Back up the configuration files from | 257 | <listitem> |
257 | <literal>modules/enea/config</literal>.</para> | 258 | <para>Back up the configuration files from |
258 | </listitem> | 259 | <literal>modules/enea/config</literal>.</para> |
259 | 260 | </listitem> | |
260 | <listitem> | 261 | |
261 | <para>Extract the archive file:</para> | 262 | <listitem> |
262 | 263 | <para>Extract the archive file:</para> | |
263 | <programlisting>unzip Enea_Edge_Automation_<version>-build<build_number>.zip</programlisting> | 264 | |
264 | </listitem> | 265 | <programlisting>unzip Enea_Edge_Automation_<version>-build<build_number>.zip</programlisting> |
265 | 266 | </listitem> | |
266 | <listitem> | 267 | |
267 | <para>Restore the configuration files from step 2 into | 268 | <listitem> |
268 | <literal>modules/enea/config </literal>.</para> | 269 | <para>Restore the configuration files from step 2 into |
269 | </listitem> | 270 | <literal>modules/enea/config </literal>.</para> |
270 | 271 | </listitem> | |
271 | <listitem> | 272 | |
272 | <para>Run the setup of virtual environment script:</para> | 273 | <listitem> |
273 | 274 | <para>Run the setup of virtual environment script:</para> | |
274 | <programlisting>source setup_env.sh</programlisting> | 275 | |
275 | </listitem> | 276 | <programlisting>source setup_env.sh</programlisting> |
276 | </orderedlist> | 277 | </listitem> |
278 | </orderedlist> | ||
277 | </section> | 279 | </section> |
278 | </chapter> \ No newline at end of file | 280 | </chapter> \ No newline at end of file |
diff --git a/doc/book-enea-edge-example-usecases/doc/book.xml b/doc/book-enea-edge-example-usecases/doc/book.xml index fc69b88..e872c95 100644 --- a/doc/book-enea-edge-example-usecases/doc/book.xml +++ b/doc/book-enea-edge-example-usecases/doc/book.xml | |||
@@ -8,9 +8,9 @@ | |||
8 | Use-cases</title> | 8 | Use-cases</title> |
9 | 9 | ||
10 | <subtitle>Release Version <xi:include | 10 | <subtitle>Release Version <xi:include |
11 | href="../../s_doceneacommon/doc/eltf_params_updated.xml" | 11 | href="../../eltf_params_updated.xml" |
12 | xmlns:xi="http://www.w3.org/2001/XInclude" | 12 | xmlns:xi="http://www.w3.org/2001/XInclude" |
13 | xpointer="element(EneaLinux_REL_VER/1)" /></subtitle> | 13 | xpointer="element(EneaEdge_REL_VER/1)" /></subtitle> |
14 | 14 | ||
15 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> | 15 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> |
16 | 16 | ||
diff --git a/doc/book-enea-edge-getting-started/doc/book.xml b/doc/book-enea-edge-getting-started/doc/book.xml index 07021cb..f317f15 100644 --- a/doc/book-enea-edge-getting-started/doc/book.xml +++ b/doc/book-enea-edge-getting-started/doc/book.xml | |||
@@ -8,9 +8,9 @@ | |||
8 | Started</title> | 8 | Started</title> |
9 | 9 | ||
10 | <subtitle>Release Version <xi:include | 10 | <subtitle>Release Version <xi:include |
11 | href="../../s_doceneacommon/doc/eltf_params_updated.xml" | 11 | href="../../eltf_params_updated.xml" |
12 | xmlns:xi="http://www.w3.org/2001/XInclude" | 12 | xmlns:xi="http://www.w3.org/2001/XInclude" |
13 | xpointer="element(EneaLinux_REL_VER/1)" /></subtitle> | 13 | xpointer="element(EneaEdge_REL_VER/1)" /></subtitle> |
14 | 14 | ||
15 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> | 15 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> |
16 | 16 | ||
diff --git a/doc/book-enea-edge-getting-started/doc/net_config_options.xml b/doc/book-enea-edge-getting-started/doc/net_config_options.xml index 5f265fb..39ef10a 100644 --- a/doc/book-enea-edge-getting-started/doc/net_config_options.xml +++ b/doc/book-enea-edge-getting-started/doc/net_config_options.xml | |||
@@ -580,9 +580,9 @@ | |||
580 | 580 | ||
581 | <listitem> | 581 | <listitem> |
582 | <para>DeviceVersion: <xi:include | 582 | <para>DeviceVersion: <xi:include |
583 | href="../../s_doceneacommon/doc/eltf_params_updated.xml" | 583 | href="../../eltf_params_updated.xml" |
584 | xmlns:xi="http://www.w3.org/2001/XInclude" | 584 | xmlns:xi="http://www.w3.org/2001/XInclude" |
585 | xpointer="element(EneaLinux_REL_VER/1)" /></para> | 585 | xpointer="element(EneaEdge_REL_VER/1)" /></para> |
586 | </listitem> | 586 | </listitem> |
587 | 587 | ||
588 | <listitem> | 588 | <listitem> |
diff --git a/doc/book-enea-edge-management-open-source/doc/about.xml b/doc/book-enea-edge-management-open-source/doc/about.xml index e13cd41..350852b 100644 --- a/doc/book-enea-edge-management-open-source/doc/about.xml +++ b/doc/book-enea-edge-management-open-source/doc/about.xml | |||
@@ -7,7 +7,7 @@ | |||
7 | <para>This document contains the open source and license information | 7 | <para>This document contains the open source and license information |
8 | pertaining to packages relating to the Enea Edge Management application | 8 | pertaining to packages relating to the Enea Edge Management application |
9 | provided with Enea Edge <xi:include | 9 | provided with Enea Edge <xi:include |
10 | href="../../s_doceneacommon/doc/eltf_params_updated.xml" | 10 | href="../../eltf_params_updated.xml" |
11 | xmlns:xi="http://www.w3.org/2001/XInclude" | 11 | xmlns:xi="http://www.w3.org/2001/XInclude" |
12 | xpointer="element(EneaLinux_REL_VER/1)" />.</para> | 12 | xpointer="element(EneaEdge_REL_VER/1)" />.</para> |
13 | </chapter> \ No newline at end of file | 13 | </chapter> \ No newline at end of file |
diff --git a/doc/book-enea-edge-management-open-source/doc/book.xml b/doc/book-enea-edge-management-open-source/doc/book.xml index 715fbe6..cb63551 100644 --- a/doc/book-enea-edge-management-open-source/doc/book.xml +++ b/doc/book-enea-edge-management-open-source/doc/book.xml | |||
@@ -6,7 +6,7 @@ | |||
6 | <book id="book_enea_edge_management_open_source"> | 6 | <book id="book_enea_edge_management_open_source"> |
7 | <title><trademark class="registered">Enea</trademark> Edge Management Open Source Report</title> | 7 | <title><trademark class="registered">Enea</trademark> Edge Management Open Source Report</title> |
8 | <subtitle>Release Version | 8 | <subtitle>Release Version |
9 | <xi:include href="../../s_doceneacommon/doc/eltf_params_updated.xml" xpointer="element(EneaLinux_REL_VER/1)" | 9 | <xi:include href="../../eltf_params_updated.xml" xpointer="element(EneaEdge_REL_VER/1)" |
10 | xmlns:xi="http://www.w3.org/2001/XInclude" /></subtitle> | 10 | xmlns:xi="http://www.w3.org/2001/XInclude" /></subtitle> |
11 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> | 11 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> |
12 | <xi:include href="../../s_docbuild/template/docsrc_common/bookinfo_userdoc.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /> | 12 | <xi:include href="../../s_docbuild/template/docsrc_common/bookinfo_userdoc.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /> |
diff --git a/doc/book-enea-edge-release-info/doc/about_release.xml b/doc/book-enea-edge-release-info/doc/about_release.xml index 349c955..2260bce 100644 --- a/doc/book-enea-edge-release-info/doc/about_release.xml +++ b/doc/book-enea-edge-release-info/doc/about_release.xml | |||
@@ -12,9 +12,9 @@ | |||
12 | private or public cloud.</para> | 12 | private or public cloud.</para> |
13 | 13 | ||
14 | <para>The Enea Edge <xi:include | 14 | <para>The Enea Edge <xi:include |
15 | href="../../s_doceneacommon/doc/eltf_params_updated.xml" | 15 | href="../../eltf_params_updated.xml" |
16 | xmlns:xi="http://www.w3.org/2001/XInclude" | 16 | xmlns:xi="http://www.w3.org/2001/XInclude" |
17 | xpointer="element(EneaLinux_REL_VER/1)" /> Release includes new features, | 17 | xpointer="element(EneaEdge_REL_VER/1)" /> Release includes new features, |
18 | optimizations, corrections, and updates to the user documentation.. | 18 | optimizations, corrections, and updates to the user documentation.. |
19 | A list of major new features and improvements can be found in | 19 | A list of major new features and improvements can be found in |
20 | <xref linkend="relinfo-changes-other">Section 2.1 New Features and Improvements</xref>.</para> | 20 | <xref linkend="relinfo-changes-other">Section 2.1 New Features and Improvements</xref>.</para> |
@@ -103,7 +103,7 @@ | |||
103 | it is in the beginning. The subtitles shall have the directory name of the | 103 | it is in the beginning. The subtitles shall have the directory name of the |
104 | target in the manifest.</remark> | 104 | target in the manifest.</remark> |
105 | 105 | ||
106 | <xi:include href="../../s_doceneacommon/doc/eltf_params_updated.xml" | 106 | <xi:include href="../../eltf_params_updated.xml" |
107 | xmlns:xi="http://www.w3.org/2001/XInclude" | 107 | xmlns:xi="http://www.w3.org/2001/XInclude" |
108 | xpointer="element(eltf-target-tables-section)" /> | 108 | xpointer="element(eltf-target-tables-section)" /> |
109 | 109 | ||
diff --git a/doc/book-enea-edge-release-info/doc/book.xml b/doc/book-enea-edge-release-info/doc/book.xml index 0b77f41..6897c6f 100644 --- a/doc/book-enea-edge-release-info/doc/book.xml +++ b/doc/book-enea-edge-release-info/doc/book.xml | |||
@@ -8,9 +8,9 @@ | |||
8 | Information</title> | 8 | Information</title> |
9 | 9 | ||
10 | <subtitle>Release Version <xi:include | 10 | <subtitle>Release Version <xi:include |
11 | href="../../s_doceneacommon/doc/eltf_params_updated.xml" | 11 | href="../../eltf_params_updated.xml" |
12 | xmlns:xi="http://www.w3.org/2001/XInclude" | 12 | xmlns:xi="http://www.w3.org/2001/XInclude" |
13 | xpointer="element(EneaLinux_REL_VER/1)" /></subtitle> | 13 | xpointer="element(EneaEdge_REL_VER/1)" /></subtitle> |
14 | 14 | ||
15 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> | 15 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> |
16 | 16 | ||
diff --git a/doc/book-enea-edge-release-info/doc/getting_enea_nfv_access.xml b/doc/book-enea-edge-release-info/doc/getting_enea_nfv_access.xml deleted file mode 100644 index 9eecd3c..0000000 --- a/doc/book-enea-edge-release-info/doc/getting_enea_nfv_access.xml +++ /dev/null | |||
@@ -1,54 +0,0 @@ | |||
1 | <?xml version="1.0" encoding="ISO-8859-1"?> | ||
2 | <!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" | ||
3 | "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"> | ||
4 | <chapter id="relinfo-getting-enea-nfv-access"> | ||
5 | <title>Getting Enea NFV Access</title> | ||
6 | |||
7 | <para>Enea NFV Access releases and updates are available as binaries ready | ||
8 | for download.</para> | ||
9 | |||
10 | <para><emphasis role="bold">Downloading Enea NFV Access</emphasis></para> | ||
11 | <remark>Does the content below need to be revised to no longer make reference or mention to Enea Portal?</remark> | ||
12 | <orderedlist> | ||
13 | <listitem> | ||
14 | <para>Log in to the link above using the credentials provided by | ||
15 | Enea.</para> | ||
16 | </listitem> | ||
17 | |||
18 | <listitem> | ||
19 | <para>From the right corner of the top main menu, choose the | ||
20 | <literal>Access</literal> section.</para> | ||
21 | </listitem> | ||
22 | |||
23 | <listitem> | ||
24 | <para>The <literal>Files</literal> section on the left will display each | ||
25 | official release of Enea NFV Access, with the latest at the top.</para> | ||
26 | |||
27 | <para>Each release listing displays the dates for release and updates | ||
28 | available, along with a <literal>Download</literal> button that allows | ||
29 | you to directly save the version you wish to use.</para> | ||
30 | </listitem> | ||
31 | |||
32 | <listitem> | ||
33 | <para>By clicking on the link at the top of any listing of Enea NFV | ||
34 | Access, you'll access the changelog page for that version. At the bottom | ||
35 | of the page are clearly labeled region-specific zip files containing the | ||
36 | binary sources.</para> | ||
37 | |||
38 | <para>Documentation is also available at the bottom of the page.</para> | ||
39 | </listitem> | ||
40 | |||
41 | <listitem> | ||
42 | <para>On the right side of the main <literal>Access</literal> page is | ||
43 | the <literal>Online Documentation</literal> section, listing pdfs for | ||
44 | the latest versions of documentation. They can all be accessed for | ||
45 | indiviudual downloading without the need to download the binaries | ||
46 | first.</para> | ||
47 | </listitem> | ||
48 | </orderedlist> | ||
49 | |||
50 | <para>For details about the books delivered and their purpose, refer to | ||
51 | <xref linkend="relinfo-documentation" />. For information concerning the | ||
52 | contents of the release package, please see <xref | ||
53 | linkend="release-content" />.</para> | ||
54 | </chapter> | ||
diff --git a/doc/book-enea-edge-release-info/doc/system_requirements_prerequisites.xml b/doc/book-enea-edge-release-info/doc/system_requirements_prerequisites.xml deleted file mode 100644 index b0317b3..0000000 --- a/doc/book-enea-edge-release-info/doc/system_requirements_prerequisites.xml +++ /dev/null | |||
@@ -1,62 +0,0 @@ | |||
1 | <?xml version="1.0" encoding="ISO-8859-1"?> | ||
2 | <!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" | ||
3 | "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"> | ||
4 | <chapter id="sys-req-prerequisites"> | ||
5 | <title>Host Requirements</title> | ||
6 | |||
7 | <para>Using Enea NFV Access or compiling applications requires certain | ||
8 | packages to be installed on your build host. The requirements listed below | ||
9 | are extensive to allow getting Enea NFV Access to be booted on target | ||
10 | machines and for building applications.</para> | ||
11 | |||
12 | <informaltable> | ||
13 | <tgroup cols="2"> | ||
14 | <colspec align="left" colname="1" colwidth="1*" /> | ||
15 | |||
16 | <colspec align="left" colname="2" colwidth="3*" /> | ||
17 | |||
18 | <spanspec nameend="2" namest="1" spanname="onetwo" /> | ||
19 | |||
20 | <tbody> | ||
21 | <row> | ||
22 | <entry spanname="onetwo"><emphasis role="bold"> Build Host | ||
23 | Requirements<indexterm> | ||
24 | <primary>host requirements</primary> | ||
25 | </indexterm></emphasis></entry> | ||
26 | </row> | ||
27 | |||
28 | <row> | ||
29 | <entry>Linux distribution</entry> | ||
30 | |||
31 | <entry>The downloaded product can installed on the target machine | ||
32 | using a Linux host. For information about supported hosts and | ||
33 | targets, see <xref | ||
34 | linkend="relinfo-supported-host-environment" />.</entry> | ||
35 | </row> | ||
36 | |||
37 | <row> | ||
38 | <entry>Packages</entry> | ||
39 | |||
40 | <entry>Depending on the Linux distribution and version of the host, | ||
41 | certain packages may be required. See details on what packages are | ||
42 | needed and how to install them in the following sections.</entry> | ||
43 | </row> | ||
44 | |||
45 | <row> | ||
46 | <entry>Disk space</entry> | ||
47 | |||
48 | <entry>Your build host should have at least 50 GB of free disk space | ||
49 | for installing the SDK, eSDK or cross-compiling | ||
50 | applications.</entry> | ||
51 | </row> | ||
52 | |||
53 | <row> | ||
54 | <entry>Recommended RAM</entry> | ||
55 | |||
56 | <entry>Your build host must have at least 4 GB available | ||
57 | RAM.</entry> | ||
58 | </row> | ||
59 | </tbody> | ||
60 | </tgroup> | ||
61 | </informaltable> | ||
62 | </chapter> \ No newline at end of file | ||
diff --git a/doc/book-enea-edge-runtime-open-source/doc/about.xml b/doc/book-enea-edge-runtime-open-source/doc/about.xml index 94136a3..d1e04b4 100644 --- a/doc/book-enea-edge-runtime-open-source/doc/about.xml +++ b/doc/book-enea-edge-runtime-open-source/doc/about.xml | |||
@@ -7,7 +7,7 @@ | |||
7 | <para>This document contains the open source and license information | 7 | <para>This document contains the open source and license information |
8 | pertaining to packages relating to the Enea Edge Runtime and the Installer | 8 | pertaining to packages relating to the Enea Edge Runtime and the Installer |
9 | provided with Enea Edge <ns:include | 9 | provided with Enea Edge <ns:include |
10 | href="../../s_doceneacommon/doc/eltf_params_updated.xml" | 10 | href="../../eltf_params_updated.xml" |
11 | xpointer="element(EneaLinux_REL_VER/1)" | 11 | xpointer="element(EneaEdge_REL_VER/1)" |
12 | xmlns:ns="http://www.w3.org/2001/XInclude" />.</para> | 12 | xmlns:ns="http://www.w3.org/2001/XInclude" />.</para> |
13 | </chapter> \ No newline at end of file | 13 | </chapter> \ No newline at end of file |
diff --git a/doc/book-enea-edge-runtime-open-source/doc/book.xml b/doc/book-enea-edge-runtime-open-source/doc/book.xml index a575375..4e2ecf2 100644 --- a/doc/book-enea-edge-runtime-open-source/doc/book.xml +++ b/doc/book-enea-edge-runtime-open-source/doc/book.xml | |||
@@ -6,7 +6,7 @@ | |||
6 | <book id="book_enea_edge_runtime_open_source"> | 6 | <book id="book_enea_edge_runtime_open_source"> |
7 | <title><trademark class="registered">Enea</trademark> Edge Runtime Open Source Report</title> | 7 | <title><trademark class="registered">Enea</trademark> Edge Runtime Open Source Report</title> |
8 | <subtitle>Release Version | 8 | <subtitle>Release Version |
9 | <xi:include href="../../s_doceneacommon/doc/eltf_params_updated.xml" xpointer="element(EneaLinux_REL_VER/1)" | 9 | <xi:include href="../../eltf_params_updated.xml" xpointer="element(EneaEdge_REL_VER/1)" |
10 | xmlns:xi="http://www.w3.org/2001/XInclude" /></subtitle> | 10 | xmlns:xi="http://www.w3.org/2001/XInclude" /></subtitle> |
11 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> | 11 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> |
12 | <xi:include href="../../s_docbuild/template/docsrc_common/bookinfo_userdoc.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /> | 12 | <xi:include href="../../s_docbuild/template/docsrc_common/bookinfo_userdoc.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /> |
diff --git a/doc/book-enea-edge-system-test-specification/doc/book.xml b/doc/book-enea-edge-system-test-specification/doc/book.xml index bcc2dcd..0884348 100644 --- a/doc/book-enea-edge-system-test-specification/doc/book.xml +++ b/doc/book-enea-edge-system-test-specification/doc/book.xml | |||
@@ -7,7 +7,7 @@ | |||
7 | <title><trademark class="registered">Enea</trademark> Edge System Test Specification</title> | 7 | <title><trademark class="registered">Enea</trademark> Edge System Test Specification</title> |
8 | 8 | ||
9 | <subtitle>Release Version | 9 | <subtitle>Release Version |
10 | <xi:include href="../../s_doceneacommon/doc/eltf_params_updated.xml" xpointer="element(EneaLinux_REL_VER/1)" | 10 | <xi:include href="../../eltf_params_updated.xml" xpointer="element(EneaEdge_REL_VER/1)" |
11 | xmlns:xi="http://www.w3.org/2001/XInclude" /></subtitle> | 11 | xmlns:xi="http://www.w3.org/2001/XInclude" /></subtitle> |
12 | 12 | ||
13 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> | 13 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> |
diff --git a/doc/book-enea-edge-telemetry-open-source/doc/about.xml b/doc/book-enea-edge-telemetry-open-source/doc/about.xml index 443bf36..3c64d62 100644 --- a/doc/book-enea-edge-telemetry-open-source/doc/about.xml +++ b/doc/book-enea-edge-telemetry-open-source/doc/about.xml | |||
@@ -6,7 +6,7 @@ | |||
6 | 6 | ||
7 | <para>This document contains the open source and license information | 7 | <para>This document contains the open source and license information |
8 | pertaining to Telemetry packages provided with Enea Edge <xi:include | 8 | pertaining to Telemetry packages provided with Enea Edge <xi:include |
9 | href="../../s_doceneacommon/doc/eltf_params_updated.xml" | 9 | href="../../eltf_params_updated.xml" |
10 | xmlns:xi="http://www.w3.org/2001/XInclude" | 10 | xmlns:xi="http://www.w3.org/2001/XInclude" |
11 | xpointer="element(EneaLinux_REL_VER/1)" />.</para> | 11 | xpointer="element(EneaEdge_REL_VER/1)" />.</para> |
12 | </chapter> \ No newline at end of file | 12 | </chapter> \ No newline at end of file |
diff --git a/doc/book-enea-edge-telemetry-open-source/doc/book.xml b/doc/book-enea-edge-telemetry-open-source/doc/book.xml index 9b0aa33..0c54870 100644 --- a/doc/book-enea-edge-telemetry-open-source/doc/book.xml +++ b/doc/book-enea-edge-telemetry-open-source/doc/book.xml | |||
@@ -6,7 +6,7 @@ | |||
6 | <book id="book_enea_edge_telemetry_open_source"> | 6 | <book id="book_enea_edge_telemetry_open_source"> |
7 | <title><trademark class="registered">Enea</trademark> Edge Telemetry Open Source Report</title> | 7 | <title><trademark class="registered">Enea</trademark> Edge Telemetry Open Source Report</title> |
8 | <subtitle>Release Version | 8 | <subtitle>Release Version |
9 | <xi:include href="../../s_doceneacommon/doc/eltf_params_updated.xml" xpointer="element(EneaLinux_REL_VER/1)" | 9 | <xi:include href="../../eltf_params_updated.xml" xpointer="element(EneaEdge_REL_VER/1)" |
10 | xmlns:xi="http://www.w3.org/2001/XInclude" /></subtitle> | 10 | xmlns:xi="http://www.w3.org/2001/XInclude" /></subtitle> |
11 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> | 11 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> |
12 | <xi:include href="../../s_docbuild/template/docsrc_common/bookinfo_userdoc.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /> | 12 | <xi:include href="../../s_docbuild/template/docsrc_common/bookinfo_userdoc.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /> |
diff --git a/doc/book-enea-nfv-access-evalkit/doc/book.xml b/doc/book-enea-nfv-access-evalkit/doc/book.xml index 90399a7..68b36af 100644 --- a/doc/book-enea-nfv-access-evalkit/doc/book.xml +++ b/doc/book-enea-nfv-access-evalkit/doc/book.xml | |||
@@ -7,7 +7,7 @@ | |||
7 | <title><trademark class="registered">Enea</trademark> NFV Access Evaluation Kit</title> | 7 | <title><trademark class="registered">Enea</trademark> NFV Access Evaluation Kit</title> |
8 | 8 | ||
9 | <subtitle>Release Version | 9 | <subtitle>Release Version |
10 | <xi:include href="../../s_doceneacommon/doc/eltf_params_updated.xml" xpointer="element(EneaLinux_REL_VER/1)" | 10 | <xi:include href="../../eltf_params_updated.xml" xpointer="element(EneaEdge_REL_VER/1)" |
11 | xmlns:xi="http://www.w3.org/2001/XInclude" /></subtitle> | 11 | xmlns:xi="http://www.w3.org/2001/XInclude" /></subtitle> |
12 | 12 | ||
13 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> | 13 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> |
diff --git a/doc/book-enea-nfv-access-evalkit/doc/prerequisites.xml b/doc/book-enea-nfv-access-evalkit/doc/prerequisites.xml index fca409c..7204f7b 100644 --- a/doc/book-enea-nfv-access-evalkit/doc/prerequisites.xml +++ b/doc/book-enea-nfv-access-evalkit/doc/prerequisites.xml | |||
@@ -153,10 +153,10 @@ | |||
153 | </listitem> | 153 | </listitem> |
154 | </itemizedlist> | 154 | </itemizedlist> |
155 | 155 | ||
156 | <para>See the Enea NFV Access <xi:include | 156 | <para>See the Enea Edge <xi:include |
157 | href="../../s_doceneacommon/doc/eltf_params_updated.xml" | 157 | href="../../eltf_params_updated.xml" |
158 | xmlns:xi="http://www.w3.org/2001/XInclude" | 158 | xmlns:xi="http://www.w3.org/2001/XInclude" |
159 | xpointer="element(EneaLinux_REL_VER/1)" /> Release Information for more | 159 | xpointer="element(EneaEdge_REL_VER/1)" /> Release Information Manual for more |
160 | details.</para> | 160 | details.</para> |
161 | </section> | 161 | </section> |
162 | </chapter> \ No newline at end of file | 162 | </chapter> \ No newline at end of file |
diff --git a/doc/eltf_params_template.xml b/doc/eltf_params_template.xml new file mode 100644 index 0000000..8a05079 --- /dev/null +++ b/doc/eltf_params_template.xml | |||
@@ -0,0 +1,151 @@ | |||
1 | <?xml version="1.0" encoding="ISO-8859-1"?> | ||
2 | <!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" | ||
3 | "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"> | ||
4 | <section id="eltf_created_params"> | ||
5 | <title>File with Parameters in the Book Auto-updated by ELFT</title> | ||
6 | |||
7 | <note> | ||
8 | <para>See the <emphasis | ||
9 | role="bold">eltf_params_updated_template_howto_use.txt</emphasis> text | ||
10 | file for description of how to create the final <emphasis | ||
11 | role="bold">eltf_params_updated.xml</emphasis> from this template and for | ||
12 | all <emphasis role="bold">REQUIREMENTS</emphasis>. Use the command | ||
13 | "<emphasis role="bold">make eltf</emphasis>" to extract a full list of all | ||
14 | ELTF variables, which always begins with ELTF_ and don't only rely on the | ||
15 | howto text file list! The plan is that ELTF will auto-update this when | ||
16 | needed.</para> | ||
17 | </note> | ||
18 | |||
19 | <section id="host_prereq"> | ||
20 | <title>Common Parameters</title> | ||
21 | |||
22 | <bridgehead>A programlisting, ID | ||
23 | "eltf-prereq-apt-get-commands-host"</bridgehead> | ||
24 | |||
25 | <para id="eltf-prereq-apt-get-commands-host"><programlisting>ELTF_PL_HOST_PREREQ</programlisting></para> | ||
26 | |||
27 | <bridgehead>A programlisting, ID | ||
28 | "eltf-getting-repo-install-command"</bridgehead> | ||
29 | |||
30 | <para id="eltf-getting-repo-install-command"><programlisting>ELTF_PL_GET_REPO</programlisting></para> | ||
31 | |||
32 | <bridgehead>Several phrase elements, various IDs. Ensure EL_REL_VER is | ||
33 | correct also compared to the "previous" REL VER in pardoc-distro.xml | ||
34 | "prev_baseline".</bridgehead> | ||
35 | |||
36 | <para id="EneaEdge_REL_VER"><phrase>ELTF_EL_REL_VER</phrase></para> | ||
37 | |||
38 | <para id="Yocto_VER"><phrase>ELTF_YOCTO_VER</phrase></para> | ||
39 | |||
40 | <para id="Yocto_NAME"><phrase>ELTF_YOCTO_NAME</phrase></para> | ||
41 | |||
42 | <para id="ULINK_YOCTO_PROJECT_DOWNLOAD"><ulink | ||
43 | url="ELTF_YOCTO_PROJ_DOWNLOAD_URL">ELTF_YOCTO_PROJ_DOWNLOAD_TXTURL</ulink></para> | ||
44 | |||
45 | <para id="ULINK_ENEA_LINUX_URL"><ulink | ||
46 | url="ELTF_EL_DOWNLOAD_URL">ELTF_EL_DOWNLOAD_TXTURL</ulink></para> | ||
47 | |||
48 | <bridgehead>A programlisting, ID "eltf-repo-cloning-enea-linux". Use | ||
49 | $MACHINE/default.xml as parameter, where MACHINE is one of the target | ||
50 | directory names in the manifest.</bridgehead> | ||
51 | |||
52 | <para id="eltf-repo-cloning-enea-linux"><programlisting>ELTF_PL_CLONE_W_REPO</programlisting></para> | ||
53 | |||
54 | <bridgehead>A table with ONE row, only the row with ID | ||
55 | "eltf-eclipse-version-row" is included in the book. MANUALLY BOTH in the | ||
56 | template.xml and in the updated.xml, set condition hidden on the | ||
57 | <row>, if eclipse is not in the release.</bridgehead> | ||
58 | |||
59 | <informaltable> | ||
60 | <tgroup cols="1"> | ||
61 | <tbody> | ||
62 | <row id="eltf-eclipse-version-row"> | ||
63 | <entry>Eclipse version ELTF_ECLIPSE_VERSION plus command line | ||
64 | development tools are included in this Enea Linux release.</entry> | ||
65 | </row> | ||
66 | </tbody> | ||
67 | </tgroup> | ||
68 | </informaltable> | ||
69 | |||
70 | <bridgehead>Below is one big section with title "Supported Targets with | ||
71 | Parameters". The entire section is included completely in the book via ID | ||
72 | "eltf-target-tables-section" and shall be LAST in the template. The | ||
73 | template contains ONE target subsection. COPY/APPEND it, if multiple | ||
74 | targets exist in the release and optionally add rows with additional | ||
75 | target parameters in each target subsection table.</bridgehead> | ||
76 | </section> | ||
77 | |||
78 | <section id="eltf-target-tables-section"> | ||
79 | <title>Supported Targets with Parameters</title> | ||
80 | |||
81 | <para>The tables below describes the target(s) supported in this Enea | ||
82 | Linux release.</para> | ||
83 | |||
84 | <section id="eltf-target-table-ELTF_T_MANIFEST_DIR"> | ||
85 | <title>MACHINE ELTF_T_MANIFEST_DIR - Information</title> | ||
86 | |||
87 | <para><informaltable> | ||
88 | <tgroup cols="2"> | ||
89 | <colspec colwidth="6*" /> | ||
90 | |||
91 | <colspec colwidth="9*" /> | ||
92 | |||
93 | <tbody> | ||
94 | <row> | ||
95 | <entry>Target official name</entry> | ||
96 | |||
97 | <entry>ELTF_T_NAME</entry> | ||
98 | </row> | ||
99 | |||
100 | <row> | ||
101 | <entry>Architecture and Description</entry> | ||
102 | |||
103 | <entry>ELTF_T_ARC_DESC</entry> | ||
104 | </row> | ||
105 | |||
106 | <row> | ||
107 | <entry>Link to target datasheet</entry> | ||
108 | |||
109 | <entry>See <ulink | ||
110 | url="ELTF_T_DS_URL">ELTF_T_DS_TXTURL</ulink></entry> | ||
111 | </row> | ||
112 | |||
113 | <row> | ||
114 | <entry>Poky version</entry> | ||
115 | |||
116 | <entry>ELTF_T_POKY_VER</entry> | ||
117 | </row> | ||
118 | |||
119 | <row> | ||
120 | <entry>GCC version</entry> | ||
121 | |||
122 | <entry>ELTF_T_GCC_VER</entry> | ||
123 | </row> | ||
124 | |||
125 | <row> | ||
126 | <entry>Linux Kernel Version</entry> | ||
127 | |||
128 | <entry>ELTF_T_KERN_VER</entry> | ||
129 | </row> | ||
130 | |||
131 | <row> | ||
132 | <entry>Supported Drivers</entry> | ||
133 | |||
134 | <entry>ELTF_T_DRIVERS</entry> | ||
135 | </row> | ||
136 | |||
137 | <row> | ||
138 | <entry>Enea rpm folder for downloading RPM packages for this | ||
139 | target</entry> | ||
140 | |||
141 | <entry><ulink | ||
142 | url="ELTF_T_EL_RPM_URL">ELTF_T_EL_RPM_TXTURL</ulink></entry> | ||
143 | </row> | ||
144 | </tbody> | ||
145 | </tgroup> | ||
146 | </informaltable></para> | ||
147 | </section> | ||
148 | |||
149 | <!-- ELTFADD_MORE_TARGET_SECTIONS_BELOW_IF_NEEDED --> | ||
150 | </section> | ||
151 | </section> \ No newline at end of file | ||
diff --git a/doc/eltf_params_updated.xml b/doc/eltf_params_updated.xml new file mode 100644 index 0000000..34739ee --- /dev/null +++ b/doc/eltf_params_updated.xml | |||
@@ -0,0 +1,240 @@ | |||
1 | <?xml version="1.0" encoding="UTF-8"?> | ||
2 | <!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" | ||
3 | "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"> | ||
4 | <section id="eltf_created_params"> | ||
5 | <title>File with Parameters in the Book Auto-updated by ELFT</title> | ||
6 | |||
7 | <note> | ||
8 | <para>See the <emphasis | ||
9 | role="bold">eltf_params_updated_template_howto_use.txt</emphasis> text | ||
10 | file for description of how to create the final <emphasis | ||
11 | role="bold">eltf_params_updated.xml</emphasis> from this template and for | ||
12 | all <emphasis role="bold">REQUIREMENTS</emphasis>. Use the command | ||
13 | "<emphasis role="bold">make eltf</emphasis>" to extract a full list of all | ||
14 | ELTF variables, which always begins with ELTF_ and don't only rely on the | ||
15 | howto text file list! The plan is that ELTF will auto-update this when | ||
16 | needed.</para> | ||
17 | </note> | ||
18 | |||
19 | <section id="host_prereq"> | ||
20 | <title>Common Parameters</title> | ||
21 | |||
22 | <bridgehead>A programlisting, ID | ||
23 | "eltf-prereq-apt-get-commands-host"</bridgehead> | ||
24 | |||
25 | <para id="eltf-prereq-apt-get-commands-host"><programlisting># Host Ubuntu 16.04 LTS 64bit | ||
26 | sudo apt-get -y update | ||
27 | sudo apt-get -y install sed wget subversion git-core coreutils unzip texi2html \ | ||
28 | texinfo libsdl1.2-dev docbook-utils fop gawk python-pysqlite2 diffstat \ | ||
29 | make gcc build-essential xsltproc g++ desktop-file-utils chrpath \ | ||
30 | libgl1-mesa-dev libglu1-mesa-dev autoconf automake groff libtool xterm \ | ||
31 | libxml-parser-perl</programlisting></para> | ||
32 | |||
33 | <bridgehead>A programlisting, ID | ||
34 | "eltf-getting-repo-install-command"</bridgehead> | ||
35 | |||
36 | <para id="eltf-getting-repo-install-command"><programlisting>mkdir -p ~/bin | ||
37 | curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo | ||
38 | chmod a+x ~/bin/repo | ||
39 | export PATH=~/bin:$PATH</programlisting></para> | ||
40 | |||
41 | <bridgehead>Several phrase elements, various IDs. Ensure EL_REL_VER is | ||
42 | correct also compared to the "previous" REL VER in pardoc-distro.xml | ||
43 | "prev_baseline".</bridgehead> | ||
44 | |||
45 | <para id="EneaEdge_REL_VER"><phrase>2.5.0</phrase></para> | ||
46 | |||
47 | <para id="ENA_BUILD_VER"><phrase>1</phrase></para> | ||
48 | |||
49 | <para id="Yocto_VER"><phrase>2.4</phrase></para> | ||
50 | |||
51 | <para id="Yocto_NAME"><phrase>rocko</phrase></para> | ||
52 | |||
53 | <para id="ULINK_YOCTO_PROJECT_DOWNLOAD"><ulink | ||
54 | url="http://www.yoctoproject.org/downloads">http://www.yoctoproject.org/downloads</ulink></para> | ||
55 | |||
56 | <para id="ULINK_ENEA_LINUX_URL"><ulink | ||
57 | url="https://linux.enea.com/6">https://linux.enea.com/6</ulink></para> | ||
58 | |||
59 | <bridgehead>A programlisting, ID "eltf-repo-cloning-enea-linux". Use | ||
60 | $MACHINE/default.xml as parameter, where MACHINE is one of the target | ||
61 | directory names in the manifest.</bridgehead> | ||
62 | |||
63 | <para id="eltf-repo-cloning-enea-linux"><programlisting>mkdir enea-linux | ||
64 | cd enea-linux | ||
65 | repo init -u git@git.enea.com:linux/manifests/el_manifests-virtualization.git \ | ||
66 | -b refs/tags/EL6 -m $MACHINE/default.xml | ||
67 | repo sync</programlisting></para> | ||
68 | |||
69 | <bridgehead>A table with ONE row, only the row with ID | ||
70 | "eltf-eclipse-version-row" is included in the book. MANUALLY in book, set | ||
71 | condition hidden if eclipse is not in the release. Do this both in | ||
72 | template.xml and updated.xml.</bridgehead> | ||
73 | |||
74 | <informaltable> | ||
75 | <tgroup cols="1"> | ||
76 | <tbody> | ||
77 | <row condition="hidden" id="eltf-eclipse-version-row"> | ||
78 | <entry>Eclipse version 4.3 (Mars) plus command line development | ||
79 | tools are included in this Enea Edge release.</entry> | ||
80 | </row> | ||
81 | </tbody> | ||
82 | </tgroup> | ||
83 | </informaltable> | ||
84 | |||
85 | <bridgehead>Below is one big section with title "Supported Processor with | ||
86 | Parameters". The entire section is included completely in the book via ID | ||
87 | "eltf-target-tables-section" and shall be LAST in the template. The | ||
88 | template contains ONE target subsection. COPY/APPEND it, if multiple | ||
89 | targets exist in the release and optionally add rows with additional | ||
90 | target parameters in each target subsection table.</bridgehead> | ||
91 | </section> | ||
92 | |||
93 | <section id="eltf-target-tables-section"> | ||
94 | <title>Reference Processors with Parameters</title> | ||
95 | |||
96 | <para>The table(s) below describes the tested processors for this Enea | ||
97 | Edge release.</para> | ||
98 | |||
99 | <table> | ||
100 | <title>Processor Product Family Information - Intel Xeon D-1500</title> | ||
101 | |||
102 | <tgroup cols="2"> | ||
103 | <colspec align="left" /> | ||
104 | |||
105 | <thead> | ||
106 | <row> | ||
107 | <entry align="center">Component</entry> | ||
108 | |||
109 | <entry align="center">Description</entry> | ||
110 | </row> | ||
111 | </thead> | ||
112 | |||
113 | <tbody> | ||
114 | <row> | ||
115 | <entry>Processor official product family name</entry> | ||
116 | |||
117 | <entry>Intel Xeon D-1500 (Broadwell)</entry> | ||
118 | </row> | ||
119 | |||
120 | <row> | ||
121 | <entry>Architecture and Description</entry> | ||
122 | |||
123 | <entry>x86-64</entry> | ||
124 | </row> | ||
125 | |||
126 | <row> | ||
127 | <entry>Link to processor datasheet</entry> | ||
128 | |||
129 | <entry><ulink | ||
130 | url="https://www.intel.com/content/www/us/en/processors/xeon/xeon-d-1500-datasheet-vol-1.html">Intel's | ||
131 | datasheet</ulink></entry> | ||
132 | </row> | ||
133 | |||
134 | <row condition="hidden"> | ||
135 | <entry>Supported Drivers</entry> | ||
136 | |||
137 | <entry>Ethernet, RTC, UART</entry> | ||
138 | </row> | ||
139 | |||
140 | <row> | ||
141 | <entry>Tested Whiteboxes</entry> | ||
142 | |||
143 | <entrytbl cols="1"> | ||
144 | <tbody> | ||
145 | <row> | ||
146 | <entry>Supermicro X10SDV-4C-TLN2F (Intel Xeon | ||
147 | D-1521)</entry> | ||
148 | </row> | ||
149 | |||
150 | <row> | ||
151 | <entry>Kontron ME1100 (Intel Xeon D-1548).</entry> | ||
152 | </row> | ||
153 | </tbody> | ||
154 | </entrytbl> | ||
155 | </row> | ||
156 | </tbody> | ||
157 | </tgroup> | ||
158 | </table> | ||
159 | |||
160 | <table> | ||
161 | <title>Processor Product Family Information - Intel Atom C3000</title> | ||
162 | |||
163 | <tgroup cols="2"> | ||
164 | <colspec align="left" /> | ||
165 | |||
166 | <thead> | ||
167 | <row> | ||
168 | <entry align="center">Component</entry> | ||
169 | |||
170 | <entry align="center">Description</entry> | ||
171 | </row> | ||
172 | </thead> | ||
173 | |||
174 | <tbody> | ||
175 | <row> | ||
176 | <entry>Processor official product family name</entry> | ||
177 | |||
178 | <entry>Intel Atom C3000 (Denverton)</entry> | ||
179 | </row> | ||
180 | |||
181 | <row> | ||
182 | <entry>Architecture and Description</entry> | ||
183 | |||
184 | <entry>x86-64</entry> | ||
185 | </row> | ||
186 | |||
187 | <row> | ||
188 | <entry>Link to the processor datasheet</entry> | ||
189 | |||
190 | <entry><ulink | ||
191 | url="https://www.intel.com/content/www/us/en/products/docs/processors/atom/c-series/c3000-family-datasheet.html">Intel's | ||
192 | datasheet</ulink></entry> | ||
193 | </row> | ||
194 | |||
195 | <row condition="hidden"> | ||
196 | <entry>Supported Drivers</entry> | ||
197 | |||
198 | <entry>Ethernet, RTC, UART</entry> | ||
199 | </row> | ||
200 | |||
201 | <row> | ||
202 | <entry>Tested Whiteboxes</entry> | ||
203 | |||
204 | <entrytbl cols="1"> | ||
205 | <tbody> | ||
206 | <row> | ||
207 | <entry>Dell EMC Networking VEP1445 (Intel Atom | ||
208 | C3758)</entry> | ||
209 | </row> | ||
210 | |||
211 | <row> | ||
212 | <entry>Advantech FWA-1012VCR-4CA1S (Intel Atom | ||
213 | C3558)</entry> | ||
214 | </row> | ||
215 | |||
216 | <row> | ||
217 | <entry>Advantech FWA-1112VCL-2CA1S (Intel Atom | ||
218 | C3558-4C)</entry> | ||
219 | </row> | ||
220 | |||
221 | <row> | ||
222 | <entry>Supermicro A2SDi-TP8F (Intel Atom C3858)</entry> | ||
223 | </row> | ||
224 | |||
225 | <row> | ||
226 | <entry>Supermicro SuperServer 5019A-12TN4 (Intel Atom | ||
227 | C3850)</entry> | ||
228 | </row> | ||
229 | |||
230 | <row> | ||
231 | <entry>Silicom C3000 (Intel Atom 3558)</entry> | ||
232 | </row> | ||
233 | </tbody> | ||
234 | </entrytbl> | ||
235 | </row> | ||
236 | </tbody> | ||
237 | </tgroup> | ||
238 | </table> | ||
239 | </section> | ||
240 | </section> \ No newline at end of file | ||
diff --git a/doc/eltf_params_updated_template_how_to_use.txt b/doc/eltf_params_updated_template_how_to_use.txt new file mode 100644 index 0000000..97b07aa --- /dev/null +++ b/doc/eltf_params_updated_template_how_to_use.txt | |||
@@ -0,0 +1,320 @@ | |||
1 | eltf_params_template_updated_howto_use.txt | ||
2 | |||
3 | This is a way to collect all parameters for an Enea Edge release | ||
4 | in one parameter file, easy to automatically update by ELTF regularly. | ||
5 | |||
6 | NOTE: Both the release info AND the open source books use parameters from | ||
7 | here, but the XML file is inside the release info book directory. | ||
8 | |||
9 | NOTE: The manifest_conf.mk, or overridden by the environment variable | ||
10 | MANIFESTHASH, contains the full tag (or hashvalue) for downloading | ||
11 | the manifest when the books are built. The list of target | ||
12 | directories are fetched from the manifest into the book. | ||
13 | The eltf_params_updates.xml can all the time contain | ||
14 | the final next complete tag e.g. refs/tags/EL6 or similar | ||
15 | in the ELTF_PL_CLONE_W_REPO parameter command lines. | ||
16 | |||
17 | The ordinary book XML files use xi:include statements to include elements | ||
18 | from this parameter file. The book XML files can thus be manually edited. | ||
19 | Before editing, you must run "make init". | ||
20 | Any other text in the template or updated.xml file, outside the parts that | ||
21 | are included in the book, are not used but still all must be correct | ||
22 | DocBook XML files. | ||
23 | |||
24 | ELTF work: | ||
25 | template => ELTF replaces ALL ELTF_xxx variables => updated XML file | ||
26 | => push to git only if changed | ||
27 | |||
28 | |||
29 | eltf_params_template.xml (in git) | ||
30 | File used by ELTF to autocreate/update the real parameter | ||
31 | file eltf_params_updated.xml. | ||
32 | |||
33 | eltf_params_updated.xml (in git) | ||
34 | Real parameter file where ELTF has replaced all ELTF_xx variables with | ||
35 | strings, in several cases with multiline strings. | ||
36 | No spaces or linefeed allowed in beginning or end of the variable values! | ||
37 | |||
38 | |||
39 | xi:include: Each parameter is xi:include'ed in various book files, using | ||
40 | the IDs existing in the parameter files. | ||
41 | In most cases the 1:st element inside an element with an ID is included | ||
42 | using a format like eltf-prereq-apt-get-commands-host/1. | ||
43 | In very few cases the element with the ID is included in the book, one | ||
44 | example is the target section which has an ID, but which contains | ||
45 | multiple subsections, one per target. | ||
46 | All IDs in a book must be unique. | ||
47 | |||
48 | DocBook XML: All XML files must be correct DocBook XML files. | ||
49 | |||
50 | Do NOT edit/save the real *updated.xml file with XMLmind to avoid changes | ||
51 | not done by ELTF. But it is OK to open the real file in XMLmind to | ||
52 | check that the format is correct. | ||
53 | |||
54 | ELTF should autocreate a temporary "real" file but only replace | ||
55 | and push the eltf_params_updated.xml if it is changed. | ||
56 | |||
57 | |||
58 | make eltf | ||
59 | This lists all ELTF_xxx variables and some rules how to treat them | ||
60 | |||
61 | DocBook Format: All elements - rules: | ||
62 | Several strict generic XML rules apply for all strings: | ||
63 | 1. No TABs allowed or any other control chr than "linefeed" | ||
64 | 2. Only 7-bit ASCII | ||
65 | 3. Any < > & must be converted to < > and & | ||
66 | Similar for any other non-7-bit-ASCII but avoid those! | ||
67 | 4. No leading spaces or linefeeds when replacing the ELTF_* variable | ||
68 | 5. No trailing spaces or linefeeds when replacing the ELTF_* variable | ||
69 | 6. Note: Keep existing spaces before/efter ELTF_* in a few cases. | ||
70 | |||
71 | DocBook Format: <programlisting> - rules: ELTF*PL* variables | ||
72 | Several strict rules apply for the multiline string in programlisting | ||
73 | in addition to the general XML rules above: | ||
74 | 7. Max line length < 80 char | ||
75 | 8. Use backslash (\) to break longer lines | ||
76 | 9. Use spaces (e.g. 4) to indent continuation lines in programlistings | ||
77 | 10. No trailing spaces on any line | ||
78 | 11. No spaces or linefeed immediately after leading <programlisting> | ||
79 | 12. No spaces or linefeed before trailing </programlisting> | ||
80 | |||
81 | DocBook Format: <ulink> - rules: ELTF_*URL* variables | ||
82 | 13. ELTF_*URL and corresponding ELTF_*TXTURL shall be identical strings | ||
83 | 14. Only if the URL is extremely long, the TXTURL can be a separate string | ||
84 | |||
85 | Each target has one section with target parameters: | ||
86 | <section id="eltf-target-table-ELTF_T_MANIFEST_DIR"> | ||
87 | <title>MACHINE ELTF_T_MANIFEST_DIR - Information</title> | ||
88 | ..... with many ELTF_ variables .... | ||
89 | </section> | ||
90 | |||
91 | 15. If there is only one target. ELTF just replaces ELTF parameters | ||
92 | |||
93 | 16. It there are multiple targets. ELTF copies the section and appends the | ||
94 | section the required number of times. | ||
95 | Each section ID will become unique: eltf-target-table-ELTF_T_MANIFEST_DIR | ||
96 | Each section title will become unique | ||
97 | |||
98 | Tables with target parameters in each target section: | ||
99 | 17. It is possible for ELTF to append more rows with one parameter each | ||
100 | to these tables, because the entire tables are included in the book | ||
101 | |||
102 | Special - NOT YET READY DEFINED how to handle the optionally included | ||
103 | Eclipse and its version, but this is a first suggestion: | ||
104 | 18. Just now ELTF can define ELFT_ECLIPSE_VERSION as a full string | ||
105 | with both version number and name, | ||
106 | 19. MANUALLY if Eclipse is NOT included in the release, | ||
107 | the release manager should manually set condition="hidden" on | ||
108 | the entire section in the book XML about Eclipse | ||
109 | |||
110 | |||
111 | |||
112 | BELOW WE TRY TO EXPLAIN EACH ELTF_* variable, but always check with make eltf | ||
113 | if there are more new variables, missing in this description file. | ||
114 | |||
115 | _____________________________________________________________________________ | ||
116 | ELTF_PL_HOST_PREREQ Multiline list of host prerequisites, e.g. commands | ||
117 | like sudo apt-get install xxxx or similar. | ||
118 | First line = comment with the complete host name! | ||
119 | It is possible to include multiple hosts by just | ||
120 | adding an empty line, comment with host name, etc. | ||
121 | xi:include eltf-prereq-apt-get-commands-host/1 | ||
122 | This is a <programlisting>...</programlisting> | ||
123 | Example: | ||
124 | # Host Ubuntu 14.04.5 LTS 64bit | ||
125 | sudo apt-get update | ||
126 | sudo apt-get install sed wget subversion git-core coreutils unzip texi2html \ | ||
127 | texinfo libsdl1.2-dev docbook-utils fop gawk python-pysqlite2 diffstat \ | ||
128 | make gcc build-essential xsltproc g++ desktop-file-utils chrpath \ | ||
129 | libgl1-mesa-dev libglu1-mesa-dev autoconf automake groff libtool xterm \ | ||
130 | libxml-parser-perl | ||
131 | |||
132 | _____________________________________________________________________________ | ||
133 | ELTF_PL_GET_REPO Multiline commands to download the repo tool | ||
134 | xi:include eltf-getting-repo-install-command/1 | ||
135 | This is a <programlisting>...</programlisting> | ||
136 | Example: | ||
137 | mkdir -p ~/bin | ||
138 | curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo | ||
139 | chmod a+x ~/bin/repo | ||
140 | export PATH=~/bin:$PATH | ||
141 | |||
142 | _____________________________________________________________________________ | ||
143 | ELTF_EL_REL_VER General parameter string: The version of this Enea | ||
144 | NFV Access release. Major version and optional .Minor | ||
145 | Typically created from MAJOR and MINOR in enea.conf | ||
146 | MINOR in enea.conf is empty or contains a dot+minor | ||
147 | xi_include EneaEdge_REL_VER/1 | ||
148 | This is a <phrase>X.x</phrase> used in many places. | ||
149 | Examples: | ||
150 | 6 | ||
151 | or | ||
152 | 6.1 | ||
153 | |||
154 | _____________________________________________________________________________ | ||
155 | ELTF_YOCTO_VER General parameter string: Yocto version, created | ||
156 | from DISTRO in poky.ent | ||
157 | xi:include Yocto_VER/1 | ||
158 | This is a <phrase>X.x</phrase> used in many places. | ||
159 | Example: | ||
160 | 2.1 | ||
161 | |||
162 | _____________________________________________________________________________ | ||
163 | ELTF_YOCTO_NAME General parameter string: Yocto name (branch), created | ||
164 | from DISTRO_NAME_NO_CAP in poky.ent | ||
165 | xi:include Yocto_NAME/1 | ||
166 | This is a <phrase>X.x</phrase> used in many places. | ||
167 | Example: | ||
168 | krogoth | ||
169 | |||
170 | _____________________________________________________________________________ | ||
171 | ELTF_YOCTO_PROJ_DOWNLOAD_TXTURL General parameters. These two are IDENTICAL | ||
172 | ELTF_YOCTO_PROJ_DOWNLOAD_URL strings with correct Yocto version string | ||
173 | at the end, typically without "dot". | ||
174 | xi:include ULINK_YOCTO_PROJECT_DOWNLOAD/1 | ||
175 | This is an <ulink url="...">...</ulink> | ||
176 | Example: | ||
177 | http://www.yoctoproject.org/downloads/core/krogoth/21 | ||
178 | |||
179 | _____________________________________________________________________________ | ||
180 | ELTF_EL_DOWNLOAD_TXTURL General parameters. These two are IDENTICAL strings | ||
181 | ELTF_EL_DOWNLOAD_URL and shall be the http:/..... address where | ||
182 | Enea NFV Access can be downloaded | ||
183 | Often containing same version as in ELTF_EL_REL_VER | ||
184 | xi:include ULINK_ENEA_LINUX_URL/1 | ||
185 | This is an <ulink url="...">...</ulink> | ||
186 | Example: | ||
187 | http://linux.enea.com/6 | ||
188 | |||
189 | _____________________________________________________________________________ | ||
190 | ELTF_PL_CLONE_W_REPO Multiline commands to run repo to clone everything. | ||
191 | Use the variable $MACHINE/default.xml (the text in | ||
192 | the book will list the avaiable values of MACHINE, | ||
193 | taken from the manifest repository) | ||
194 | xi:include eltf-repo-cloning-enea-linux/1 | ||
195 | This is a <programlisting>...</programlisting> | ||
196 | Example: | ||
197 | mkdir enea-linux | ||
198 | cd enea-linux | ||
199 | repo init -u git@git.enea.com:linux/manifests/el_manifests-virtualization.git \ | ||
200 | -b refs/tags/EL6 -m $MACHINE/default.xml | ||
201 | repo sync | ||
202 | |||
203 | _____________________________________________________________________________ | ||
204 | ELTF_ECLIPSE_VERSION Optional general parameter string. | ||
205 | NOT YET READY DEFINED | ||
206 | Just now a release manage must manually set | ||
207 | condition="hidden" on the Eclipse section, | ||
208 | if Eclipse is not included in the release. | ||
209 | ELTF just replaces ELTF_ECLIPSE_VERSION with a full | ||
210 | string with "X.Y (name)" | ||
211 | It includes the ID and can only be ONCE in the book. | ||
212 | xi:include eltf-eclipse-version-row | ||
213 | Example. | ||
214 | 4.5 (Mars) | ||
215 | |||
216 | |||
217 | _____________________________________________________________________________ | ||
218 | ELTF_T_* All these are in each target (MACHINE) and ELTF | ||
219 | must separately replace them with strings for | ||
220 | each target | ||
221 | NOTE: All (except the MANIFEST_DIR) are in rows | ||
222 | in a table and ELTF can select to append | ||
223 | more parameters by adding more rows | ||
224 | |||
225 | _____________________________________________________________________________ | ||
226 | ELTF_T_MANIFEST_DIR This happens to be in two places. Must be exactly | ||
227 | ELTF_T_MANIFEST_DIR the directory name in the manifest, e.g. same | ||
228 | as the MACHINE names in $MACHINE/default.xml. | ||
229 | In book: a) Part of section ID | ||
230 | b) Part of section title | ||
231 | Examples: | ||
232 | p2041rgb | ||
233 | or | ||
234 | ls1021aiot | ||
235 | or | ||
236 | qemuarm | ||
237 | |||
238 | _____________________________________________________________________________ | ||
239 | ELTF_T_NAME Target specific: "Target Official Name" | ||
240 | NOT same as the target directory name in most cases. | ||
241 | In book: An <entry> element in a row | ||
242 | Examples: | ||
243 | P2041RGB | ||
244 | or | ||
245 | LS1021a-IoT | ||
246 | or | ||
247 | qemuarm | ||
248 | |||
249 | _____________________________________________________________________________ | ||
250 | ELTF_T_ARC_DESC Target specific: "Architecture and Description" | ||
251 | It can be a short identification string or | ||
252 | it can be a longer descriptive sentence. | ||
253 | In book: An <entry> element in a row | ||
254 | Examples: | ||
255 | Power, e500mc | ||
256 | or | ||
257 | ARM Cortex-A7 | ||
258 | |||
259 | _____________________________________________________________________________ | ||
260 | ELTF_T_DS_TXTURL Target specific: "Link to target datasheet. These | ||
261 | ELTF_T_DS_URL two usually are IDENTICAL strings with correct | ||
262 | hyperlink to the target's official datasheet. | ||
263 | In book: an <ulink url="...">...</ulink> | ||
264 | Only if the link is VERY LONG, the text part shall | ||
265 | instead be a descriptive string (see 2:nd example). | ||
266 | NOTE: Also here no spaces or line-feeds! | ||
267 | Examples: | ||
268 | url="http://wiki.qemu.org">http://wiki.qemu.org | ||
269 | or | ||
270 | url="http://www.nxp.com/products/microcontrollers-and-processors/arm-processors/qoriq-arm-processors/qoriq-ls1021a-iot-gateway-reference-design:LS1021A-IoT">link to NXP's datasheet | ||
271 | |||
272 | _____________________________________________________________________________ | ||
273 | ELTF_T_POKY_VER Target specific: "Poky version" created either | ||
274 | from POKYVERSION in poky.ent | ||
275 | or using a hashvalue with a leading string, in | ||
276 | which case it may be different per target. | ||
277 | In book: An <entry> in a row | ||
278 | Examples: | ||
279 | 15.0.0 | ||
280 | or | ||
281 | Git commit id: 75ca53211488a3e268037a44ee2a7ac5c7181bd2 | ||
282 | |||
283 | _____________________________________________________________________________ | ||
284 | ELTF_T_GCC_VER Target specific: "GCC Version". Should be in poky | ||
285 | but not easy to find among various parameters. | ||
286 | ELTF would extract it from build logs building SDK | ||
287 | and it is possibly different per target. | ||
288 | In book: An <entry> in a row | ||
289 | Example: | ||
290 | 5.3 | ||
291 | |||
292 | _____________________________________________________________________________ | ||
293 | ELTF_T_KERN_VER Target specific: "Linux Kernel Version". Often | ||
294 | different per target. | ||
295 | In book: An <entry> in a row | ||
296 | Example: | ||
297 | 3.12 | ||
298 | |||
299 | _____________________________________________________________________________ | ||
300 | ELTF_T_DRIVERS Target specific: "Supported Drivers". This is a | ||
301 | comma-separated list of driver names. | ||
302 | ELTF should create the list in same order for each | ||
303 | target, e.g. alphabetic migth be OK. | ||
304 | In book: An <entry> in a row | ||
305 | Example: | ||
306 | Ethernet, I2C, SPI, PCI, USB, SD/SDHC/SDXC | ||
307 | |||
308 | |||
309 | _____________________________________________________________________________ | ||
310 | ELTF_T_EL_RPM_TXTURL Target specific: "Enea rpm folder for downloading | ||
311 | ELTF_T_EL_RPM_URL RPM packages for this target". These two are | ||
312 | INDENTICAL strings with hyperlink to the web site | ||
313 | at Enea where the customer can download RPMs | ||
314 | Note: Often the ELFT_EL_REL_VER value and | ||
315 | the ELTF_T_MANIFEST_DIR are used in the link. | ||
316 | In book: an <ulink url="...">...</ulink> | ||
317 | Example: | ||
318 | url="https://linux.enea.com/6/ls1021aiot/rpm">https://linux.enea.com/6/ls1021aiot/rpm | ||
319 | |||
320 | _____________________________________________________________________________ | ||