3n-tsh timeout, testbed tags and ansible update 85/20785/6
authorjuraj.linkes <juraj.linkes@pantheon.tech>
Thu, 18 Jul 2019 09:39:39 +0000 (11:39 +0200)
committerPeter Mikus <pmikus@cisco.com>
Tue, 23 Jul 2019 10:06:41 +0000 (10:06 +0000)
* disable AVF tests which don't work with x520
* increase VPPApiClient timeout to 14s, as x520 show hardware is slower
  on Taishan
* re-enable vhost and memif tests
* remove tx2 mrr daily tag list; no tx2 is used for perf testing
* remove taishan workaround
* add scipy arm prerequisites and scipy workaround
* rework inventories/lf_inventory/hosts; move cpu_microarchitecture to
host files

Change-Id: I5f10bd07b8146ac3b8be8c54fbb4d924a9373813
Signed-off-by: juraj.linkes <juraj.linkes@pantheon.tech>
46 files changed:
resources/libraries/bash/function/common.sh
resources/libraries/bash/function/mrr-daily-tx2.txt [deleted symlink]
resources/libraries/python/PapiExecutor.py
resources/tools/testbed-setup/ansible/inventories/lf_inventory/group_vars/all.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.16.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.17.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.18.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.20.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.21.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.22.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.24.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.25.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.26.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.28.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.36.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.37.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.44.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.45.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.46.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.47.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.48.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.49.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.50.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.51.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.52.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.53.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.54.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.55.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.56.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.57.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.58.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.59.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.60.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.30.51.69.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.32.8.10.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.32.8.11.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.32.8.12.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/host_vars/10.32.8.13.yaml
resources/tools/testbed-setup/ansible/inventories/lf_inventory/hosts
resources/tools/testbed-setup/ansible/roles/sut/files/taishan_workaround.service [deleted file]
resources/tools/testbed-setup/ansible/roles/sut/tasks/dpdk.yaml
resources/tools/testbed-setup/ansible/roles/sut/tasks/main.yaml
resources/tools/testbed-setup/ansible/roles/sut/tasks/taishan_workaround.yaml [deleted file]
resources/tools/testbed-setup/ansible/roles/tg_sut/tasks/aarch64.yaml
resources/tools/testbed-setup/ansible/roles/tg_sut/tasks/main.yaml
resources/tools/testbed-setup/ansible/roles/tg_sut/tasks/x86_64.yaml

index e576f99..89c8f31 100644 (file)
@@ -800,11 +800,9 @@ function select_tags () {
             test_tag_array+=("!drv_avf")
             ;;
         *"3n-tsh"*)
+            # 3n-tsh only has x520 NICs which don't work with AVF
+            test_tag_array+=("!drv_avf")
             test_tag_array+=("!ipsechw")
-            test_tag_array+=("!memif")
-            test_tag_array+=("!srv6_proxy")
-            test_tag_array+=("!vhost")
-            test_tag_array+=("!vts")
             ;;
         *"3n-hsw"*)
             # TODO: Introduce NOIOMMU version of AVF tests.
@@ -905,7 +903,7 @@ function select_topology () {
             ;;
         "3n_tsh")
             TOPOLOGIES=( "${TOPOLOGIES_DIR}"/*3n_tsh*.yaml )
-            TOPOLOGIES_TAGS="3_node_*_link_topo"
+            TOPOLOGIES_TAGS="3_node_single_link_topo"
             ;;
         *)
             # No falling back to 3n_hsw default, that should have been done
diff --git a/resources/libraries/bash/function/mrr-daily-tx2.txt b/resources/libraries/bash/function/mrr-daily-tx2.txt
deleted file mode 120000 (symlink)
index addc759..0000000
+++ /dev/null
@@ -1 +0,0 @@
-mrr-daily.txt
\ No newline at end of file
index 77732c7..a3f2479 100644 (file)
@@ -193,7 +193,7 @@ class PapiSocketExecutor(object):
             # We need to create instance before removing from sys.path.
             cls.cached_vpp_instance = vpp_class(
                 use_socket=True, server_address="TBD", async_thread=False,
-                read_timeout=6, logger=FilteredLogger(logger, "INFO"))
+                read_timeout=14, logger=FilteredLogger(logger, "INFO"))
             # Cannot use loglevel parameter, robot.api.logger lacks support.
             # TODO: Stop overriding read_timeout when VPP-1722 is fixed.
         finally:
index f21ef47..907f5af 100644 (file)
@@ -47,6 +47,9 @@ dpdk:
   target_dir: '/opt'
   version: 'dpdk-19.02'
   url: 'https://fast.dpdk.org/rel'
+  build_targets:
+    aarch64: "arm64-armv8a"
+    x86_64: "x86_64-native"
 
 # Calibration settings.
 jitter:
index 80655ba..af29bea 100644 (file)
@@ -1,66 +1,45 @@
 all:
   children:
-    haswell:
-      children:
-        tg:
-          hosts:
-            10.30.51.16: null #t1-tg1
-            10.30.51.20: null #t2-tg1
-            10.30.51.24: null #t3-tg1
-        sut:
-          hosts:
-            10.30.51.17: null #t1-sut1
-            10.30.51.18: null #t1-sut2
-            10.30.51.21: null #t2-sut1
-            10.30.51.22: null #t2-sut2
-            10.30.51.25: null #t3-sut1
-            10.30.51.26: null #t3-sut2
-        cobbler:
-          hosts:
-            10.30.51.28: null #s4-virl1
-    skylake:
-      children:
-        tg:
-          hosts:
-            10.30.51.45: null #s4-t21-tg1
-            10.30.51.48: null #s13-t31-tg1
-            10.30.51.49: null #s19-t33t34-tg1
-            10.30.51.53: null #s6-t22-tg1
-            10.30.51.55: null #s8-t23-tg1
-            10.30.51.57: null #s10-t24-tg1
-            10.30.51.60: null #s16-t32-tg1
-            10.32.8.10: null #s28-t26t35-tg1
-        sut:
-          hosts:
-            10.30.51.44: null #s3-t21-sut1
-            10.30.51.46: null #s11-t31-sut1
-            10.30.51.47: null #s12-t31-sut2
-            10.30.51.52: null #s5-t22-sut1
-            10.30.51.54: null #s7-t23-sut1
-            10.30.51.56: null #s9-t24-sut1
-            10.30.51.58: null #s14-t32-sut1
-            10.30.51.59: null #s15-t32-sut2
-        vpp_device:
-          hosts:
-            10.30.51.50: null #s1-t11-sut1
-            10.30.51.51: null #s2-t12-sut1
-    denverton:
-      children:
-        sut:
-          hosts:
-            10.32.8.11: null #s29-t26-sut1
-            10.32.8.12: null #s30-t35-sut1
-            10.32.8.13: null #s31-t35-sut2
-    thunderx2:
-      children:
-        vpp_device:
-          hosts:
-            10.30.51.69: null #s27-t13-sut1
-    taishan:
-      children:
-#        tg:
-#          hosts:
-        sut:
-          hosts:
-            10.30.51.36: null #s17-t33-sut1
-            10.30.51.37: null #s18-t33-sut2
+    tg:
+      hosts:
+        10.30.51.16: #t1-tg1 - haswell
+        10.30.51.20: #t2-tg1 - haswell
+        10.30.51.24: #t3-tg1 - haswell
+        10.30.51.45: #s4-t21-tg1 - skylake
+        10.30.51.48: #s13-t31-tg1 - skylake
+        10.30.51.49: #s19-t33t34-tg1 - skylake
+        10.30.51.53: #s6-t22-tg1 - skylake
+        10.30.51.55: #s8-t23-tg1 - skylake
+        10.30.51.57: #s10-t24-tg1 - skylake
+        10.30.51.60: #s16-t32-tg1 - skylake
+        10.32.8.10: #s28-t26t35-tg1 - skylake
+    sut:
+      hosts:
+        10.30.51.17: #t1-sut1 - haswell
+        10.30.51.18: #t1-sut2 - haswell
+        10.30.51.21: #t2-sut1 - haswell
+        10.30.51.22: #t2-sut2 - haswell
+        10.30.51.25: #t3-sut1 - haswell
+        10.30.51.26: #t3-sut2 - haswell
+        10.30.51.36: #s17-t33-sut1 - taishan
+        10.30.51.37: #s18-t33-sut2 - taishan
+        10.30.51.44: #s3-t21-sut1 - skylake
+        10.30.51.46: #s11-t31-sut1 - skylake
+        10.30.51.47: #s12-t31-sut2 - skylake
+        10.30.51.52: #s5-t22-sut1 - skylake
+        10.30.51.54: #s7-t23-sut1 - skylake
+        10.30.51.56: #s9-t24-sut1 - skylake
+        10.30.51.58: #s14-t32-sut1 - skylake
+        10.30.51.59: #s15-t32-sut2 - skylake
+        10.32.8.11: #s29-t26-sut1 - denverton
+        10.32.8.12: #s30-t35-sut1 - denverton
+        10.32.8.13: #s31-t35-sut2 - denverton
+
+    vpp_device:
+      hosts:
+        10.30.51.50: #s1-t11-sut1 - skylake
+        10.30.51.51: #s2-t12-sut1 - skylake
+        10.30.51.69: #s27-t13-sut1 - thunderx2
+    cobbler:
+      hosts:
+        10.30.51.28: #s4-virl1 - haswell
diff --git a/resources/tools/testbed-setup/ansible/roles/sut/files/taishan_workaround.service b/resources/tools/testbed-setup/ansible/roles/sut/files/taishan_workaround.service
deleted file mode 100644 (file)
index 246c985..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-[Unit]
-Description=Numa node workaround configuration
-
-[Service]
-ExecStart=/bin/sh -c 'echo 1 > /sys/bus/pci/devices/0000:11:00.0/numa_node'
-ExecStart=/bin/sh -c 'echo 1 > /sys/bus/pci/devices/0000:11:00.1/numa_node'
-Type=oneshot
-RemainAfterExit=yes
-
-[Install]
-WantedBy=multi-user.target
\ No newline at end of file
index a4ae779..f2fc83e 100644 (file)
@@ -18,6 +18,6 @@
 
 - name: Compile DPDK release
   become: yes
-  command: 'make install T={{ ansible_machine }}-native-linuxapp-gcc DESTDIR={{ dpdk.target_dir }}/{{ dpdk.version }} chdir={{ dpdk.target_dir }}/{{ dpdk.version }}'
+  command: 'make install T={{ dpdk.build_targets[ansible_machine] }}-linuxapp-gcc DESTDIR={{ dpdk.target_dir }}/{{ dpdk.version }} chdir={{ dpdk.target_dir }}/{{ dpdk.version }}'
   when: 'linux__dpdk_extracted'
   tags: install-dpdk
index e4115e4..a882001 100644 (file)
@@ -5,10 +5,6 @@
   include_tasks: '{{ ansible_distribution|lower }}_{{ ansible_distribution_release }}.yaml'
   tags: [ install-csit-dependencies, install-kernel-image ]
 
-- name: Taishan aarch64 specific
-  import_tasks: taishan_workaround.yaml
-  when: taishan_workaround is defined
-
 - name: Copy 80-vpp.conf
   file:
     src: '/dev/null'
diff --git a/resources/tools/testbed-setup/ansible/roles/sut/tasks/taishan_workaround.yaml b/resources/tools/testbed-setup/ansible/roles/sut/tasks/taishan_workaround.yaml
deleted file mode 100644 (file)
index e262e72..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
----
-# file: roles/sut/tasks/taishan_workaround.yaml
-
-- name: Ensure systemd directory exists
-  file:
-    path: "/etc/systemd/system"
-    state: "directory"
-    owner: "root"
-    group: "root"
-    mode: "0755"
-  tags: taishan-workaround
-
-- name: Copy systemd numa config unit file
-  template:
-    src: "files/taishan_workaround.service"
-    dest: "/etc/systemd/system/nic-numa-config.service"
-    owner: "root"
-    group: "root"
-    mode: "0644"
-  register: numa_config_service
-  tags: taishan-workaround
-
-- name: Reload systemd daemon
-  command: "systemctl daemon-reload"
-  when: (numa_config_service and numa_config_service is changed)
-  tags: taishan-workaround
-
-- name: Enable numa config service
-  command: "systemctl enable nic-numa-config.service"
-  tags: taishan-workaround
index 5910026..2a48133 100644 (file)
   notify: ['Update GRUB']
   tags: set-grub
 
+- name: Install SciPy dependencies
+  apt:
+    name:
+      - 'gfortran'
+      - 'libblas-dev'
+      - 'liblapack-dev'
+    state: 'present'
+    install_recommends: False
+  tags: install-pip
+
+- name: Install CSIT PIP requirements without SciPy
+  pip:
+    name:
+      - 'docopt==0.6.2'
+      - 'ecdsa==0.13'
+      - 'enum34==1.1.2'
+      - 'ipaddress==1.0.16'
+      - 'paramiko==1.16.0'
+      - 'pexpect==4.6.0'
+      - 'pycrypto==2.6.1'
+      - 'pykwalify==1.5.0'
+      - 'pypcap==1.1.5'
+      - 'python-dateutil==2.4.2'
+      - 'PyYAML==3.11'
+      - 'requests==2.9.1'
+      - 'robotframework==2.9.2'
+      - 'scapy==2.3.1'
+      - 'scp==0.10.2'
+      - 'six==1.12.0'
+      - 'dill==0.2.8.2'
+      - 'numpy==1.14.5'
+  tags: install-pip
+
+- name: Install CSIT PIP requirements - SciPy workaround
+  pip:
+    name:
+      - 'scipy==1.1.0'
+  tags: install-pip
index d9026e9..f586e87 100644 (file)
@@ -7,9 +7,9 @@
 - name: Machine specifics
   include_tasks: '{{ ansible_machine }}.yaml'
 
-- name: skylake specific
+- name: Skylake specific
   import_tasks: skylake.yaml
-  when: ("skylake" in groups) and inventory_hostname in groups['skylake']
+  when: cpu_microarchitecture == "skylake"
 
 - name: Copy netplan network config file
   template:
     enabled: 'no'
   tags: set-ondemand
 
-- name: Install CSIT PIP requirements
-  pip:
-    name:
-      - 'docopt==0.6.2'
-      - 'ecdsa==0.13'
-      - 'enum34==1.1.2'
-      - 'ipaddress==1.0.16'
-      - 'paramiko==1.16.0'
-      - 'pexpect==4.6.0'
-      - 'pycrypto==2.6.1'
-      - 'pykwalify==1.5.0'
-      - 'pypcap==1.1.5'
-      - 'python-dateutil==2.4.2'
-      - 'PyYAML==3.11'
-      - 'requests==2.9.1'
-      - 'robotframework==2.9.2'
-      - 'scapy==2.3.1'
-      - 'scp==0.10.2'
-      - 'six==1.12.0'
-      - 'dill==0.2.8.2'
-      - 'numpy==1.14.5'
-      - 'scipy==1.1.0'
-  tags: install-pip
-
 - name: Install VPP PIP requirements
   pip:
     name:
index dc0b685..45d6cc3 100644 (file)
   tags: set-grub
 
 - meta: flush_handlers
+
+- name: Install CSIT PIP requirements
+  pip:
+    name:
+      - 'docopt==0.6.2'
+      - 'ecdsa==0.13'
+      - 'enum34==1.1.2'
+      - 'ipaddress==1.0.16'
+      - 'paramiko==1.16.0'
+      - 'pexpect==4.6.0'
+      - 'pycrypto==2.6.1'
+      - 'pykwalify==1.5.0'
+      - 'pypcap==1.1.5'
+      - 'python-dateutil==2.4.2'
+      - 'PyYAML==3.11'
+      - 'requests==2.9.1'
+      - 'robotframework==2.9.2'
+      - 'scapy==2.3.1'
+      - 'scp==0.10.2'
+      - 'six==1.12.0'
+      - 'dill==0.2.8.2'
+      - 'numpy==1.14.5'
+      - 'scipy==1.1.0'
+  tags: install-pip
+