doc gen: fix doc generator 78/33878/11
authorViliam Luc <vluc@cisco.com>
Tue, 28 Sep 2021 17:46:36 +0000 (19:46 +0200)
committerPeter Mikus <pmikus@cisco.com>
Wed, 20 Oct 2021 09:30:48 +0000 (09:30 +0000)
Change-Id: I75e836ce728fd333764f17d69813093cb947ef4f
Signed-off-by: Viliam Luc <vluc@cisco.com>
docs/job_specs/report_iterative/2n-clx/vpp-mlr-00.md
docs/job_specs/report_iterative/2n-clx/vsap-00.md
resources/libraries/bash/function/docs.sh
resources/tools/doc_gen/gen_rst.py
resources/tools/doc_gen/src/index.rst
resources/tools/doc_gen/src/tests.trex.perf.rst [new file with mode: 0644]
tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-ldpreload-nginx-1_14_2-cps.robot [moved from tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-ldpreload-nginx-1.14.2-cps.robot with 88% similarity]
tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-ldpreload-nginx-1_14_2-rps.robot [moved from tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-ldpreload-nginx-1.14.2-rps.robot with 88% similarity]
tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-ldpreload-nginx-1_15_0-cps.robot [moved from tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-ldpreload-nginx-1.15.0-cps.robot with 88% similarity]
tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-ldpreload-nginx-1_15_0-rps.robot [moved from tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-ldpreload-nginx-1.15.0-rps.robot with 88% similarity]

index 6928bbc..04f1764 100644 (file)
 ## ./hoststack
 ### intel-e810cq
 #### dpdk-vfio-pci
 ## ./hoststack
 ### intel-e810cq
 #### dpdk-vfio-pci
-##### eth-ip4tcphttp-ldpreload-nginx-1.14.2
-1c AND 0b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.14.2
-1c AND 64b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.14.2
-1c AND 1024b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.14.2
-1c AND 2048b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.14.2
-1c AND 0b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.14.2
-1c AND 64b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.14.2
-1c AND 1024b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.14.2
-1c AND 2048b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.14.2
-##### eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 0b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 64b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 1024b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 2048b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 0b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 64b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 1024b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 2048b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
+##### eth-ip4tcphttp-ldpreload-nginx-1_14_2
+1c AND 0b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_14_2
+1c AND 64b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_14_2
+1c AND 1024b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_14_2
+1c AND 2048b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_14_2
+1c AND 0b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_14_2
+1c AND 64b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_14_2
+1c AND 1024b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_14_2
+1c AND 2048b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_14_2
+##### eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 0b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 64b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 1024b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 2048b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 0b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 64b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 1024b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 2048b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
 ### mellanox-cx556a
 #### dpdk-vfio-pci
 ### mellanox-cx556a
 #### dpdk-vfio-pci
-##### eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 0b AND cps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 64b AND cps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 1024b AND cps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 2048b AND cps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 0b AND rps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 64b AND rps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 1024b AND rps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 2048b AND rps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
+##### eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 0b AND cps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 64b AND cps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 1024b AND cps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 2048b AND cps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 0b AND rps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 64b AND rps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 1024b AND rps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 2048b AND rps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
 ## ./ip4
 ### intel-x710
 #### af_xdp
 ## ./ip4
 ### intel-x710
 #### af_xdp
index 99c170a..b537bdc 100644 (file)
 ## ./hoststack
 ### intel-e810cq
 #### dpdk-vfio-pci
 ## ./hoststack
 ### intel-e810cq
 #### dpdk-vfio-pci
-##### eth-ip4tcphttp-ldpreload-nginx-1.14.2
-1c AND 0b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.14.2
-1c AND 64b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.14.2
-1c AND 1024b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.14.2
-1c AND 2048b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.14.2
-1c AND 0b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.14.2
-1c AND 64b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.14.2
-1c AND 1024b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.14.2
-1c AND 2048b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.14.2
-##### eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 0b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 64b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 1024b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 2048b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 0b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 64b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 1024b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 2048b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
+##### eth-ip4tcphttp-ldpreload-nginx-1_14_2
+1c AND 0b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_14_2
+1c AND 64b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_14_2
+1c AND 1024b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_14_2
+1c AND 2048b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_14_2
+1c AND 0b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_14_2
+1c AND 64b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_14_2
+1c AND 1024b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_14_2
+1c AND 2048b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_14_2
+##### eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 0b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 64b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 1024b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 2048b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 0b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 64b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 1024b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 2048b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
 ### mellanox-cx556a
 #### dpdk-vfio-pci
 ### mellanox-cx556a
 #### dpdk-vfio-pci
-##### eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 0b AND cps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 64b AND cps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 1024b AND cps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 2048b AND cps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 0b AND rps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 64b AND rps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 1024b AND rps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
-1c AND 2048b AND rps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1.15.0
+##### eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 0b AND cps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 64b AND cps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 1024b AND cps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 2048b AND cps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 0b AND rps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 64b AND rps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 1024b AND rps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
+1c AND 2048b AND rps AND cx556a AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_15_0
 ## ./vm_vhost
 ## ./vm_vhost
index be3f986..c589416 100644 (file)
@@ -47,12 +47,13 @@ function generate_docs () {
 
     pushd "${TOOLS_DIR}"/doc_gen || die "Pushd failed!"
 
 
     pushd "${TOOLS_DIR}"/doc_gen || die "Pushd failed!"
 
-    WORKING_DIR="tmp"
     BUILD_DIR="_build"
 
     # Remove the old build:
     rm -rf ${BUILD_DIR} || true
     BUILD_DIR="_build"
 
     # Remove the old build:
     rm -rf ${BUILD_DIR} || true
-    rm -rf ${WORKING_DIR} || true
+    rm -rf /tmp/tmp-csit* || true
+
+    export WORKING_DIR=$(mktemp -d /tmp/tmp-csitXXX) || die "export failed"
 
     # Create working directories
     mkdir -p "${BUILD_DIR}" || die "Mkdir failed!"
 
     # Create working directories
     mkdir -p "${BUILD_DIR}" || die "Mkdir failed!"
@@ -81,17 +82,12 @@ function generate_docs () {
         die "Touch index.robot file failed!"
     }
 
         die "Touch index.robot file failed!"
     }
 
-    # Due to hoststack tests having dots in the name of suite, tests will become
-    # disabled as spihnxdoc cannot properly work with the path. gen_rst
-    # is generating dots scheme. The solution is to rename suites as
-    # having dots is misleading with robot framework naming conventions.
-
-    #from_dir="${CSIT_DIR}/tests/"
-    #to_dir="${WORKING_DIR}/tests/"
-    #dirs="${from_dir} ${to_dir}"
-    #rsync -ar --include='*/' --include '*.robot' --exclude '*' ${dirs} || {
-    #    die "rSync failed!"
-    #}
+    from_dir="${CSIT_DIR}/tests/"
+    to_dir="${WORKING_DIR}/tests/"
+    dirs="${from_dir} ${to_dir}"
+    rsync -ar --include='*/' --include '*.robot' --exclude '*' ${dirs} || {
+        die "rSync failed!"
+    }
 
     find ${WORKING_DIR}/ -type d -exec echo {} \; -exec touch {}/__init__.py \;
 
 
     find ${WORKING_DIR}/ -type d -exec echo {} \; -exec touch {}/__init__.py \;
 
index 1cb1005..d3f7d96 100755 (executable)
 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 # See the License for the specific language governing permissions and
 # limitations under the License.
 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 # See the License for the specific language governing permissions and
 # limitations under the License.
-
-
-from os import walk, listdir
+from os import walk, listdir, scandir, environ
 from os.path import isfile, isdir, join, getsize
 
 from os.path import isfile, isdir, join, getsize
 
-# Temporary working directory. It is created and deleted by run_doc.sh
-WORKING_DIR = u"tmp"
+# Temporary working directory. It is created and deleted by docs.sh
+WORKING_DIR = environ.get("WORKING_DIR")
 
 # Directory with resources to be documented.
 RESOURCES_DIR = u"resources"
 
 # Directory with resources to be documented.
 RESOURCES_DIR = u"resources"
@@ -83,7 +81,7 @@ def get_files(path, extension):
     for root, dirs, files in walk(path):
         for filename in files:
             if extension:
     for root, dirs, files in walk(path):
         for filename in files:
             if extension:
-                if filename.endswith(extension):
+                if filename.endswith(extension) and u"__init__" not in filename:
                     file_list.append(join(root, filename))
             else:
                 file_list.append(join(root, filename))
                     file_list.append(join(root, filename))
             else:
                 file_list.append(join(root, filename))
@@ -126,6 +124,34 @@ def create_rst_file_names_set(files, start):
     return file_names
 
 
     return file_names
 
 
+def add_nested_folders_in_rst_set(file_names, path):
+    """Add RST files from folders where are only folders without tests.
+
+    :param file_names: List of all files to be documented with path beginning
+        in the working directory.
+    :param path: Path where it starts adding missing RST files.
+    :type file_names: list
+    :type path: str
+    """
+
+    # When we split directory tree by "/" we don't need to create RST file in
+    # folders in depth <= 5. It's because the WORKING_DIR folder structure i
+    # as following:
+    # /tmp/tmp-csitXXX/tests/<subject_of_test>/<type_of_test>/<what_is_tested>
+    # That splits to ie:
+    # ['', 'tmp', 'tmp-csitXXX', 'tests', 'vpp', 'device', 'container_memif']
+    # We need to generate RST files for folders after <subject_of_test> which
+    # is in depth > 5
+
+    for directory in fast_scandir(path):
+        dir_list = directory.split(u"/")
+        if len(dir_list) > 5:
+            # cut ['', 'tmp', 'tmp-csitXXX']
+            dir_rst = u".".join(dir_list[3:]) + u".rst"
+            if dir_rst not in file_names and u"__pycache__" not in dir_rst:
+                file_names.add(dir_rst)
+
+
 def scan_dir(path):
     """Create a list of files and directories in the given directory.
 
 def scan_dir(path):
     """Create a list of files and directories in the given directory.
 
@@ -157,8 +183,8 @@ def write_toc(fh, path, dirs):
     :type dirs: list
     """
     fh.write(rst_toc)
     :type dirs: list
     """
     fh.write(rst_toc)
-    for dir in dirs:
-        fh.write(f"    {u'.'.join(path)}.{dir}\n")
+    for directory in dirs:
+        fh.write(f"    {u'.'.join(path)}.{directory}\n")
 
 
 def write_module_title(fh, module_name):
 
 
 def write_module_title(fh, module_name):
@@ -274,12 +300,20 @@ def generate_tests_rst_files():
 
     tests = get_files(PATH_TESTS, RF_EXT)
     file_names = create_rst_file_names_set(tests, TESTS_DIR)
 
     tests = get_files(PATH_TESTS, RF_EXT)
     file_names = create_rst_file_names_set(tests, TESTS_DIR)
+    add_nested_folders_in_rst_set(file_names, PATH_TESTS)
 
     generate_rf_rst_files(
         file_names, incl_suite_setup=True, incl_variables=True
     )
 
 
 
     generate_rf_rst_files(
         file_names, incl_suite_setup=True, incl_variables=True
     )
 
 
+def fast_scandir(dirname):
+    subfolders = [f.path for f in scandir(dirname) if f.is_dir()]
+    for dirname in list(subfolders):
+        subfolders.extend(fast_scandir(dirname))
+    return subfolders
+
+
 if __name__ == u"__main__":
 
     # Generate all rst files:
 if __name__ == u"__main__":
 
     # Generate all rst files:
index 39f1d38..82f01db 100644 (file)
@@ -10,6 +10,7 @@ Contents
     resources.libraries.python
     resources.libraries.robot
     tests.dpdk.perf
     resources.libraries.python
     resources.libraries.robot
     tests.dpdk.perf
+    tests.trex.perf
     tests.vpp.device
     tests.vpp.perf
     indices
     tests.vpp.device
     tests.vpp.perf
     indices
diff --git a/resources/tools/doc_gen/src/tests.trex.perf.rst b/resources/tools/doc_gen/src/tests.trex.perf.rst
new file mode 100644 (file)
index 0000000..55ab087
--- /dev/null
@@ -0,0 +1,2 @@
+TREX Performance Tests
+======================
@@ -17,7 +17,7 @@
 |
 | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV
 | ... | LDP_NGINX | TCP | NIC_Intel-X710 | DRV_VFIO_PCI
 |
 | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV
 | ... | LDP_NGINX | TCP | NIC_Intel-X710 | DRV_VFIO_PCI
-| ... | TCP_CPS | eth-ip4tcphttp-ldpreload-nginx-1.14.2
+| ... | TCP_CPS | eth-ip4tcphttp-ldpreload-nginx-1_14_2
 |
 | Suite Setup | Setup suite topology interfaces | ab | nginx
 | Suite Teardown | Tear down suite | ab
 |
 | Suite Setup | Setup suite topology interfaces | ab | nginx
 | Suite Teardown | Tear down suite | ab
 | | ... | ${ciphers} | ${frame_size} | ${tls_tcp} | ${rps_cps}
 
 *** Test Cases ***
 | | ... | ${ciphers} | ${frame_size} | ${tls_tcp} | ${rps_cps}
 
 *** Test Cases ***
-| 0B-1c-eth-ip4tcphttp-ldpreload-nginx-1.14.2-cps
+| 0B-1c-eth-ip4tcphttp-ldpreload-nginx-1_14_2-cps
 | | [Tags] | 0B | 1C
 | | frame_size=${0} | phy_cores=${1}
 
 | | [Tags] | 0B | 1C
 | | frame_size=${0} | phy_cores=${1}
 
-| 0B-2c-eth-ip4tcphttp-ldpreload-nginx-1.14.2-cps
+| 0B-2c-eth-ip4tcphttp-ldpreload-nginx-1_14_2-cps
 | | [Tags] | 0B | 2C
 | | frame_size=${0} | phy_cores=${2}
 
 | | [Tags] | 0B | 2C
 | | frame_size=${0} | phy_cores=${2}
 
-| 64B-1c-eth-ip4tcphttp-ldpreload-nginx-1.14.2-cps
+| 64B-1c-eth-ip4tcphttp-ldpreload-nginx-1_14_2-cps
 | | [Tags] | 64B | 1C
 | | frame_size=${64} | phy_cores=${1}
 
 | | [Tags] | 64B | 1C
 | | frame_size=${64} | phy_cores=${1}
 
-| 64B-2c-eth-ip4tcphttp-ldpreload-nginx-1.14.2-cps
+| 64B-2c-eth-ip4tcphttp-ldpreload-nginx-1_14_2-cps
 | | [Tags] | 64B | 2C
 | | frame_size=${64} | phy_cores=${2}
 
 | | [Tags] | 64B | 2C
 | | frame_size=${64} | phy_cores=${2}
 
-| 1024B-1c-eth-ip4tcphttp-ldpreload-nginx-1.14.2-cps
+| 1024B-1c-eth-ip4tcphttp-ldpreload-nginx-1_14_2-cps
 | | [Tags] | 1024B | 1C
 | | frame_size=${1024} | phy_cores=${1}
 
 | | [Tags] | 1024B | 1C
 | | frame_size=${1024} | phy_cores=${1}
 
-| 1024B-2c-eth-ip4tcphttp-ldpreload-nginx-1.14.2-cps
+| 1024B-2c-eth-ip4tcphttp-ldpreload-nginx-1_14_2-cps
 | | [Tags] | 1024B | 2C
 | | frame_size=${1024} | phy_cores=${2}
 
 | | [Tags] | 1024B | 2C
 | | frame_size=${1024} | phy_cores=${2}
 
-| 2048B-1c-eth-ip4tcphttp-ldpreload-nginx-1.14.2-cps
+| 2048B-1c-eth-ip4tcphttp-ldpreload-nginx-1_14_2-cps
 | | [Tags] | 2048B | 1C
 | | frame_size=${2048} | phy_cores=${1}
 
 | | [Tags] | 2048B | 1C
 | | frame_size=${2048} | phy_cores=${1}
 
-| 2048B-2c-eth-ip4tcphttp-ldpreload-nginx-1.14.2-cps
+| 2048B-2c-eth-ip4tcphttp-ldpreload-nginx-1_14_2-cps
 | | [Tags] | 2048B | 2C
 | | frame_size=${2048} | phy_cores=${2}
 | | [Tags] | 2048B | 2C
 | | frame_size=${2048} | phy_cores=${2}
@@ -17,7 +17,7 @@
 |
 | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV
 | ... | LDP_NGINX | TCP | NIC_Intel-X710 | DRV_VFIO_PCI
 |
 | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV
 | ... | LDP_NGINX | TCP | NIC_Intel-X710 | DRV_VFIO_PCI
-| ... | TCP_RPS | eth-ip4tcphttp-ldpreload-nginx-1.14.2
+| ... | TCP_RPS | eth-ip4tcphttp-ldpreload-nginx-1_14_2
 |
 | Suite Setup | Setup suite topology interfaces | ab | nginx
 | Suite Teardown | Tear down suite | ab
 |
 | Suite Setup | Setup suite topology interfaces | ab | nginx
 | Suite Teardown | Tear down suite | ab
 | | ... | ${ciphers} | ${frame_size} | ${tls_tcp} | ${rps_cps}
 
 *** Test Cases ***
 | | ... | ${ciphers} | ${frame_size} | ${tls_tcp} | ${rps_cps}
 
 *** Test Cases ***
-| 0B-1c-eth-ip4tcphttp-ldpreload-nginx-1.14.2-rps
+| 0B-1c-eth-ip4tcphttp-ldpreload-nginx-1_14_2-rps
 | | [Tags] | 0B | 1C
 | | frame_size=${0} | phy_cores=${1}
 
 | | [Tags] | 0B | 1C
 | | frame_size=${0} | phy_cores=${1}
 
-| 0B-2c-eth-ip4tcphttp-ldpreload-nginx-1.14.2-rps
+| 0B-2c-eth-ip4tcphttp-ldpreload-nginx-1_14_2-rps
 | | [Tags] | 0B | 2C
 | | frame_size=${0} | phy_cores=${2}
 
 | | [Tags] | 0B | 2C
 | | frame_size=${0} | phy_cores=${2}
 
-| 64B-1c-eth-ip4tcphttp-ldpreload-nginx-1.14.2-rps
+| 64B-1c-eth-ip4tcphttp-ldpreload-nginx-1_14_2-rps
 | | [Tags] | 64B | 1C
 | | frame_size=${64} | phy_cores=${1}
 
 | | [Tags] | 64B | 1C
 | | frame_size=${64} | phy_cores=${1}
 
-| 64B-2c-eth-ip4tcphttp-ldpreload-nginx-1.14.2-rps
+| 64B-2c-eth-ip4tcphttp-ldpreload-nginx-1_14_2-rps
 | | [Tags] | 64B | 2C
 | | frame_size=${64} | phy_cores=${2}
 
 | | [Tags] | 64B | 2C
 | | frame_size=${64} | phy_cores=${2}
 
-| 1024B-1c-eth-ip4tcphttp-ldpreload-nginx-1.14.2-rps
+| 1024B-1c-eth-ip4tcphttp-ldpreload-nginx-1_14_2-rps
 | | [Tags] | 1024B | 1C
 | | frame_size=${1024} | phy_cores=${1}
 
 | | [Tags] | 1024B | 1C
 | | frame_size=${1024} | phy_cores=${1}
 
-| 1024B-2c-eth-ip4tcphttp-ldpreload-nginx-1.14.2-rps
+| 1024B-2c-eth-ip4tcphttp-ldpreload-nginx-1_14_2-rps
 | | [Tags] | 1024B | 2C
 | | frame_size=${1024} | phy_cores=${2}
 
 | | [Tags] | 1024B | 2C
 | | frame_size=${1024} | phy_cores=${2}
 
-| 2048B-1c-eth-ip4tcphttp-ldpreload-nginx-1.14.2-rps
+| 2048B-1c-eth-ip4tcphttp-ldpreload-nginx-1_14_2-rps
 | | [Tags] | 2048B | 1C
 | | frame_size=${2048} | phy_cores=${1}
 
 | | [Tags] | 2048B | 1C
 | | frame_size=${2048} | phy_cores=${1}
 
-| 2048B-2c-eth-ip4tcphttp-ldpreload-nginx-1.14.2-rps
+| 2048B-2c-eth-ip4tcphttp-ldpreload-nginx-1_14_2-rps
 | | [Tags] | 2048B | 2C
 | | frame_size=${2048} | phy_cores=${2}
 | | [Tags] | 2048B | 2C
 | | frame_size=${2048} | phy_cores=${2}
@@ -17,7 +17,7 @@
 |
 | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV
 | ... | LDP_NGINX | TCP | NIC_Intel-X710 | DRV_VFIO_PCI
 |
 | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV
 | ... | LDP_NGINX | TCP | NIC_Intel-X710 | DRV_VFIO_PCI
-| ... | TCP_CPS | eth-ip4tcphttp-ldpreload-nginx-1.15.0
+| ... | TCP_CPS | eth-ip4tcphttp-ldpreload-nginx-1_15_0
 |
 | Suite Setup | Setup suite topology interfaces | ab | nginx
 | Suite Teardown | Tear down suite | ab
 |
 | Suite Setup | Setup suite topology interfaces | ab | nginx
 | Suite Teardown | Tear down suite | ab
 | | ... | ${ciphers} | ${frame_size} | ${tls_tcp} | ${rps_cps}
 
 *** Test Cases ***
 | | ... | ${ciphers} | ${frame_size} | ${tls_tcp} | ${rps_cps}
 
 *** Test Cases ***
-| 0B-1c-eth-ip4tcphttp-ldpreload-nginx-1.15.0-cps
+| 0B-1c-eth-ip4tcphttp-ldpreload-nginx-1_15_0-cps
 | | [Tags] | 0B | 1C
 | | frame_size=${0} | phy_cores=${1}
 
 | | [Tags] | 0B | 1C
 | | frame_size=${0} | phy_cores=${1}
 
-| 0B-2c-eth-ip4tcphttp-ldpreload-nginx-1.15.0-cps
+| 0B-2c-eth-ip4tcphttp-ldpreload-nginx-1_15_0-cps
 | | [Tags] | 0B | 2C
 | | frame_size=${0} | phy_cores=${2}
 
 | | [Tags] | 0B | 2C
 | | frame_size=${0} | phy_cores=${2}
 
-| 64B-1c-eth-ip4tcphttp-ldpreload-nginx-1.15.0-cps
+| 64B-1c-eth-ip4tcphttp-ldpreload-nginx-1_15_0-cps
 | | [Tags] | 64B | 1C
 | | frame_size=${64} | phy_cores=${1}
 
 | | [Tags] | 64B | 1C
 | | frame_size=${64} | phy_cores=${1}
 
-| 64B-2c-eth-ip4tcphttp-ldpreload-nginx-1.15.0-cps
+| 64B-2c-eth-ip4tcphttp-ldpreload-nginx-1_15_0-cps
 | | [Tags] | 64B | 2C
 | | frame_size=${64} | phy_cores=${2}
 
 | | [Tags] | 64B | 2C
 | | frame_size=${64} | phy_cores=${2}
 
-| 1024B-1c-eth-ip4tcphttp-ldpreload-nginx-1.15.0-cps
+| 1024B-1c-eth-ip4tcphttp-ldpreload-nginx-1_15_0-cps
 | | [Tags] | 1024B | 1C
 | | frame_size=${1024} | phy_cores=${1}
 
 | | [Tags] | 1024B | 1C
 | | frame_size=${1024} | phy_cores=${1}
 
-| 1024B-2c-eth-ip4tcphttp-ldpreload-nginx-1.15.0-cps
+| 1024B-2c-eth-ip4tcphttp-ldpreload-nginx-1_15_0-cps
 | | [Tags] | 1024B | 2C
 | | frame_size=${1024} | phy_cores=${2}
 
 | | [Tags] | 1024B | 2C
 | | frame_size=${1024} | phy_cores=${2}
 
-| 2048B-1c-eth-ip4tcphttp-ldpreload-nginx-1.15.0-cps
+| 2048B-1c-eth-ip4tcphttp-ldpreload-nginx-1_15_0-cps
 | | [Tags] | 2048B | 1C
 | | frame_size=${2048} | phy_cores=${1}
 
 | | [Tags] | 2048B | 1C
 | | frame_size=${2048} | phy_cores=${1}
 
-| 2048B-2c-eth-ip4tcphttp-ldpreload-nginx-1.15.0-cps
+| 2048B-2c-eth-ip4tcphttp-ldpreload-nginx-1_15_0-cps
 | | [Tags] | 2048B | 2C
 | | frame_size=${2048} | phy_cores=${2}
 | | [Tags] | 2048B | 2C
 | | frame_size=${2048} | phy_cores=${2}
@@ -17,7 +17,7 @@
 |
 | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV
 | ... | LDP_NGINX | TCP | NIC_Intel-X710 | DRV_VFIO_PCI
 |
 | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV
 | ... | LDP_NGINX | TCP | NIC_Intel-X710 | DRV_VFIO_PCI
-| ... | TCP_RPS | eth-ip4tcphttp-ldpreload-nginx-1.15.0
+| ... | TCP_RPS | eth-ip4tcphttp-ldpreload-nginx-1_15_0
 |
 | Suite Setup | Setup suite topology interfaces | ab | nginx
 | Suite Teardown | Tear down suite | ab
 |
 | Suite Setup | Setup suite topology interfaces | ab | nginx
 | Suite Teardown | Tear down suite | ab
 | | ... | ${ciphers} | ${frame_size} | ${tls_tcp} | ${rps_cps}
 
 *** Test Cases ***
 | | ... | ${ciphers} | ${frame_size} | ${tls_tcp} | ${rps_cps}
 
 *** Test Cases ***
-| 0B-1c-eth-ip4tcphttp-ldpreload-nginx-1.15.0-rps
+| 0B-1c-eth-ip4tcphttp-ldpreload-nginx-1_15_0-rps
 | | [Tags] | 0B | 1C
 | | frame_size=${0} | phy_cores=${1}
 
 | | [Tags] | 0B | 1C
 | | frame_size=${0} | phy_cores=${1}
 
-| 0B-2c-eth-ip4tcphttp-ldpreload-nginx-1.15.0-rps
+| 0B-2c-eth-ip4tcphttp-ldpreload-nginx-1_15_0-rps
 | | [Tags] | 0B | 2C
 | | frame_size=${0} | phy_cores=${2}
 
 | | [Tags] | 0B | 2C
 | | frame_size=${0} | phy_cores=${2}
 
-| 64B-1c-eth-ip4tcphttp-ldpreload-nginx-1.15.0-rps
+| 64B-1c-eth-ip4tcphttp-ldpreload-nginx-1_15_0-rps
 | | [Tags] | 64B | 1C
 | | frame_size=${64} | phy_cores=${1}
 
 | | [Tags] | 64B | 1C
 | | frame_size=${64} | phy_cores=${1}
 
-| 64B-2c-eth-ip4tcphttp-ldpreload-nginx-1.15.0-rps
+| 64B-2c-eth-ip4tcphttp-ldpreload-nginx-1_15_0-rps
 | | [Tags] | 64B | 2C
 | | frame_size=${64} | phy_cores=${2}
 
 | | [Tags] | 64B | 2C
 | | frame_size=${64} | phy_cores=${2}
 
-| 1024B-1c-eth-ip4tcphttp-ldpreload-nginx-1.15.0-rps
+| 1024B-1c-eth-ip4tcphttp-ldpreload-nginx-1_15_0-rps
 | | [Tags] | 1024B | 1C
 | | frame_size=${1024} | phy_cores=${1}
 
 | | [Tags] | 1024B | 1C
 | | frame_size=${1024} | phy_cores=${1}
 
-| 1024B-2c-eth-ip4tcphttp-ldpreload-nginx-1.15.0-rps
+| 1024B-2c-eth-ip4tcphttp-ldpreload-nginx-1_15_0-rps
 | | [Tags] | 1024B | 2C
 | | frame_size=${1024} | phy_cores=${2}
 
 | | [Tags] | 1024B | 2C
 | | frame_size=${1024} | phy_cores=${2}
 
-| 2048B-1c-eth-ip4tcphttp-ldpreload-nginx-1.15.0-rps
+| 2048B-1c-eth-ip4tcphttp-ldpreload-nginx-1_15_0-rps
 | | [Tags] | 2048B | 1C
 | | frame_size=${2048} | phy_cores=${1}
 
 | | [Tags] | 2048B | 1C
 | | frame_size=${2048} | phy_cores=${1}
 
-| 2048B-2c-eth-ip4tcphttp-ldpreload-nginx-1.15.0-rps
+| 2048B-2c-eth-ip4tcphttp-ldpreload-nginx-1_15_0-rps
 | | [Tags] | 2048B | 2C
 | | frame_size=${2048} | phy_cores=${2}
 | | [Tags] | 2048B | 2C
 | | frame_size=${2048} | phy_cores=${2}