X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=resources%2Flibraries%2Fbash%2Ffunction%2Fcommon.sh;h=ec95f9227cbb45ea9ef052c33f25511f17fd9f7c;hp=a3878015f9e858b5c20f590f78f562bbc0281bc3;hb=425a606f9adb93da33a9ce861d0aa09e8c6b0526;hpb=493684d9a6d22dc86f8260fe8cc4244ba71b5e9e diff --git a/resources/libraries/bash/function/common.sh b/resources/libraries/bash/function/common.sh index a3878015f9..ec95f9227c 100644 --- a/resources/libraries/bash/function/common.sh +++ b/resources/libraries/bash/function/common.sh @@ -441,6 +441,14 @@ function get_test_code () { NODENESS="1n" FLAVOR="tx2" ;; + *"2n-aws"*) + NODENESS="2n" + FLAVOR="aws" + ;; + *"3n-aws"*) + NODENESS="3n" + FLAVOR="aws" + ;; *"2n-skx"*) NODENESS="2n" FLAVOR="skx" @@ -641,7 +649,7 @@ function reserve_and_cleanup_testbed () { } die "Trap attempt failed, unreserve succeeded. Aborting." } - # Cleanup + calibration checks. + # Cleanup + calibration checks set +e ansible_playbook "cleanup, calibration" result="$?" @@ -803,6 +811,9 @@ function select_tags () { *"3n-hsw"* | *"2n-tx2"* | *"mrr-daily-master") default_nic="nic_intel-xl710" ;; + *"2n-aws"* | *"3n-aws"*) + default_nic="nic_amazon-nitro-50g" + ;; *) default_nic="nic_intel-x710" ;; @@ -818,6 +829,7 @@ function select_tags () { awk_nics_sub_cmd+='gsub("cx556a","100ge2p1cx556a");' awk_nics_sub_cmd+='gsub("vic1227","10ge2p1vic1227");' awk_nics_sub_cmd+='gsub("vic1385","40ge2p1vic1385");' + awk_nics_sub_cmd+='gsub("nitro-50g","50ge1p1ENA");' awk_nics_sub_cmd+='if ($9 =="drv_avf") drv="avf-";' awk_nics_sub_cmd+='else if ($9 =="drv_rdma_core") drv ="rdma-";' awk_nics_sub_cmd+='else drv="";' @@ -930,6 +942,9 @@ function select_tags () { # which we do not want to even run. test_tag_array+=("!ipsechwNOTnic_intel-xl710") ;; + *"2n-aws"* | *"3n-aws"*) + test_tag_array+=("!ipsechw") + ;; *) # Default to 3n-hsw due to compatibility. test_tag_array+=("!drv_avf") @@ -1043,6 +1058,14 @@ function select_topology () { TOPOLOGIES=( "${TOPOLOGIES_DIR}"/*2n_tx2*.yaml ) TOPOLOGIES_TAGS="2_node_single_link_topo" ;; + "2n_aws") + TOPOLOGIES=( "${TOPOLOGIES_DIR}"/*2n_aws*.yaml ) + TOPOLOGIES_TAGS="2_node_single_link_topo" + ;; + "3n_aws") + TOPOLOGIES=( "${TOPOLOGIES_DIR}"/*3n_aws*.yaml ) + TOPOLOGIES_TAGS="3_node_single_link_topo" + ;; *) # No falling back to 3n_hsw default, that should have been done # by the function which has set NODENESS and FLAVOR. @@ -1115,6 +1138,31 @@ function select_vpp_device_tags () { done } + +function set_environment_variables () { + + # Depending on testbed topology, overwrite defaults set in the + # resources/libraries/python/Constants.py file + # + # Variables read: + # - TEST_CODE - String affecting test selection, usually jenkins job name. + # Variables set: + # See specific cases + + set -exuo pipefail + + case "${TEST_CODE}" in + *"2n-aws"* | *"3n-aws"*) + # T-Rex 2.88 workaround for ENA NICs + export TREX_RX_DESCRIPTORS_COUNT=1024 + export TREX_EXTRA_CMDLINE="--mbuf-factor 19" + # Settings to prevent duration stretching + export PERF_TRIAL_STL_DELAY=0.1 + ;; + esac +} + + function untrap_and_unreserve_testbed () { # Use this as a trap function to ensure testbed does not remain reserved.