Add static MAC entries to configuration 87/9987/10
authorPeter Mikus <pmikus@cisco.com>
Mon, 8 Jan 2018 10:50:23 +0000 (11:50 +0100)
committerPeter Mikus <pmikus@cisco.com>
Tue, 9 Jan 2018 09:58:37 +0000 (09:58 +0000)
- Add static MAC entries to sfc_controller configuration of all l2bdbase
tests.

Change-Id: I38ba32246ed20204c5be1f98b0454b71dcff2e00
Signed-off-by: Peter Mikus <pmikus@cisco.com>
VPP_AGENT_STABLE_VER
bootstrap-verify-perf-ligato.sh
resources/libraries/python/KubernetesUtils.py
resources/templates/kubernetes/configmaps/ch-eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc.yaml
resources/templates/kubernetes/configmaps/ch-eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc.yaml
resources/templates/kubernetes/configmaps/ho-eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc.yaml
resources/templates/kubernetes/configmaps/ho-eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc.yaml
tests/kubernetes/perf/container_memif/10ge2p1x520-ch-eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc-k8s-ndrpdrdisc.robot
tests/kubernetes/perf/container_memif/10ge2p1x520-ch-eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc-k8s-ndrpdrdisc.robot
tests/kubernetes/perf/container_memif/10ge2p1x520-ho-eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc-k8s-ndrpdrdisc.robot
tests/kubernetes/perf/container_memif/10ge2p1x520-ho-eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc-k8s-ndrpdrdisc.robot

index 037b62f..f1080a2 100644 (file)
@@ -1 +1 @@
-v1.0.8-6-gd4339b8
\ No newline at end of file
+gpantheon-dev
\ No newline at end of file
index 6654972..79fdba6 100644 (file)
@@ -62,7 +62,6 @@ then
         VPP_DEBS="$( readlink -f *.deb | tr '\n' ' ' )"
     fi
 
-    dpkg -x vpp-${VPP_STABLE_VER}${VPP_CLASSIFIER}.deb /tmp/vpp
     # Temporary workaround as ligato docker file requires specific file name
     rename -v 's/^(.*)-(\d.*)-deb.deb/$1_$2.deb/' *.deb
     cd ${SCRIPT_DIR}
@@ -78,14 +77,14 @@ then
     VPP_STABLE_VER="$( expr match $1 'vpp-\(.*\)-deb.deb' )"
     # Move files to build-root for packing
     for deb in ${VPP_DEBS}; do mv ${deb} vpp/build-root/; done
-    dpkg -x vpp/build-root/vpp_${VPP_STABLE_VER}.deb /tmp/vpp
 else
     echo "Unable to identify job type based on JOB_NAME variable: ${JOB_NAME}"
     exit 1
 fi
+dpkg -x vpp/build-root/vpp_${VPP_STABLE_VER}.deb /tmp/vpp
 
 # Compress all VPP debs and remove temporary directory
-tar -zcvf ${SCRIPT_DIR}/vpp.tar.gz vpp/*  && rm -R vpp
+tar -zcvf ${SCRIPT_DIR}/vpp.tar.gz vpp/* && rm -R vpp
 
 LIGATO_REPO_URL=$(cat ${SCRIPT_DIR}/LIGATO_REPO_URL)
 VPP_AGENT_STABLE_VER=$(cat ${SCRIPT_DIR}/VPP_AGENT_STABLE_VER)
@@ -116,18 +115,28 @@ if [ $? != 0 ]; then
 fi
 
 # Pull ligato/dev_vpp_agent docker image and re-tag as local
-sudo docker pull ligato/dev-vpp-agent:${VPP_AGENT_STABLE_VER}
-sudo docker tag ligato/dev-vpp-agent:${VPP_AGENT_STABLE_VER}\
-    dev_vpp_agent:latest
+if [[ ${VPP_AGENT_STABLE_VER} == g* ]] ;
+then
+    sudo docker pull ligato/dev-vpp-agent:${VPP_AGENT_STABLE_COMMIT}
+    sudo docker tag ligato/dev-vpp-agent:${VPP_AGENT_STABLE_COMMIT}\
+        dev_vpp_agent:latest
+else
+    sudo docker pull ligato/dev-vpp-agent:${VPP_AGENT_STABLE_VER}
+    sudo docker tag ligato/dev-vpp-agent:${VPP_AGENT_STABLE_VER}\
+        dev_vpp_agent:latest
+fi
 sudo docker images
-
 # Start dev_vpp_agent container as daemon
 sudo docker run --rm -itd --name agentcnt dev_vpp_agent bash
 # Copy latest vpp api into running container
 sudo docker cp /tmp/vpp/usr/share/vpp/api agentcnt:/usr/share/vpp
 # Recompile vpp-agent
 sudo docker exec -i agentcnt \
-    script -qc '. ~/.bashrc; cd /root/go/src/github.com/ligato/vpp-agent && make generate && make install'
+    script -qec '. ~/.bashrc; cd /root/go/src/github.com/ligato/vpp-agent && make generate && make install'
+if [ $? != 0 ]; then
+    echo "Failed to build vpp-agent in Docker image."
+    exit 1
+fi
 # Extract vpp-agent
 rm -rf agent
 mkdir -p agent
index 89c5bd2..8d658c6 100644 (file)
@@ -322,6 +322,10 @@ class KubernetesUtils(object):
             "{nspace} $p; done".format(nspace=nspace)
         ssh.exec_command(cmd)
 
+        cmd = "kubectl exec {nspace} etcdv3 -- etcdctl --endpoints "\
+            "\"localhost:22379\" get \"/\" --prefix=true".format(nspace=nspace)
+        ssh.exec_command(cmd)
+
     @staticmethod
     def get_kubernetes_logs_on_all_duts(nodes, nspace):
         """Get Kubernetes logs from all PODs in namespace on all DUTs.
index e06146f..46f7953 100644 (file)
@@ -24,10 +24,14 @@ data:
           - container: vswitch
             port_label: $$VSWITCH_IF1$$
             etcd_vpp_switch_key: vswitch
+            l2fib_macs:
+              - "$$TG_IF1_MAC1$$"
             type: 5
           - container: vnf1
             port_label: port1
             etcd_vpp_switch_key: vswitch
+            l2fib_macs:
+              - "$$TG_IF2_MAC1$$"
             type: 2
       - name: vswitch-vnf2
         description: VNF2 to vswitch - memif
@@ -36,14 +40,18 @@ data:
           - container: vswitch
             port_label: $$VSWITCH_IF2$$
             etcd_vpp_switch_key: vswitch
+            l2fib_macs:
+              - "$$TG_IF2_MAC1$$"
             type: 5
           - container: vnf2
             port_label: port2
             etcd_vpp_switch_key: vswitch
+            l2fib_macs:
+              - "$$TG_IF1_MAC1$$"
             type: 2
       - name: vnf1-vnf2
         description: vnf1 to vnf2 via vswitch - memifs
-        type: 8
+        type: 5
         elements:
           - container: vnf1
             port_label: port2
index 5cdf99e..3dbc2ce 100644 (file)
@@ -24,10 +24,14 @@ data:
           - container: vswitch
             port_label: $$VSWITCH_IF1$$
             etcd_vpp_switch_key: vswitch
+            l2fib_macs:
+              - "$$TG_IF1_MAC1$$"
             type: 5
           - container: vnf1
             port_label: port1
             etcd_vpp_switch_key: vswitch
+            l2fib_macs:
+              - "$$TG_IF2_MAC1$$"
             type: 2
       - name: vswitch-vnf4
         description: VNF4 to vswitch - memif
@@ -36,14 +40,18 @@ data:
           - container: vswitch
             port_label: $$VSWITCH_IF2$$
             etcd_vpp_switch_key: vswitch
+            l2fib_macs:
+              - "$$TG_IF2_MAC1$$"
             type: 5
           - container: vnf4
             port_label: port2
             etcd_vpp_switch_key: vswitch
+            l2fib_macs:
+              - "$$TG_IF1_MAC1$$"
             type: 2
       - name: vnf1-vnf2
         description: vnf1 to vnf2 via vswitch - memifs
-        type: 8
+        type: 5
         elements:
           - container: vnf1
             port_label: port2
index c9693aa..e672846 100644 (file)
@@ -24,10 +24,14 @@ data:
           - container: vswitch
             port_label: $$VSWITCH_IF1$$
             etcd_vpp_switch_key: vswitch
+            l2fib_macs:
+              - "$$TG_IF1_MAC1$$"
             type: 5
           - container: vnf1
             port_label: port1
             etcd_vpp_switch_key: vswitch
+            l2fib_macs:
+              - "$$TG_IF2_MAC1$$"
             type: 2
       - name: vswitch-vnf2
         description: VNF2 to vswitch - memif
@@ -36,10 +40,14 @@ data:
           - container: vswitch
             port_label: $$VSWITCH_IF2$$
             etcd_vpp_switch_key: vswitch
+            l2fib_macs:
+              - "$$TG_IF2_MAC1$$"
             type: 5
           - container: vnf2
             port_label: port2
             etcd_vpp_switch_key: vswitch
+            l2fib_macs:
+              - "$$TG_IF1_MAC1$$"
             type: 2
       - name: vnf1-vnf2
         description: vnf1 to vnf2 via direct - memifs
index 4a2ba86..4b3d301 100644 (file)
@@ -24,10 +24,14 @@ data:
           - container: vswitch
             port_label: $$VSWITCH_IF1$$
             etcd_vpp_switch_key: vswitch
+            l2fib_macs:
+              - "$$TG_IF1_MAC1$$"
             type: 5
           - container: vnf1
             port_label: port1
             etcd_vpp_switch_key: vswitch
+            l2fib_macs:
+              - "$$TG_IF2_MAC1$$"
             type: 2
       - name: vswitch-vnf4
         description: VNF4 to vswitch - memif
@@ -36,10 +40,14 @@ data:
           - container: vswitch
             port_label: $$VSWITCH_IF2$$
             etcd_vpp_switch_key: vswitch
+            l2fib_macs:
+              - "$$TG_IF2_MAC1$$"
             type: 5
           - container: vnf4
             port_label: port2
             etcd_vpp_switch_key: vswitch
+            l2fib_macs:
+              - "$$TG_IF1_MAC1$$"
             type: 2
       - name: vnf1-vnf2
         description: vnf1 to vnf2 via direct - memifs
index 2f5ee13..cd054c8 100644 (file)
 | | ${dut1_if2_name}= | Get interface name | ${dut1} | ${dut1_if2}
 | | ${dut2_if1_name}= | Get interface name | ${dut2} | ${dut2_if1}
 | | ${dut2_if2_name}= | Get interface name | ${dut2} | ${dut2_if2}
+| | ${tg_if1_mac}= | Get Interface MAC | ${tg} | ${tg_if1}
+| | ${tg_if2_mac}= | Get Interface MAC | ${tg} | ${tg_if2}
 | | Create Kubernetes VSWITCH startup config on all DUTs | ${get_framesize}
 | | ... | ${wt} | ${rxq}
 | | Create Kubernetes VNF'1' startup config on all DUTs
 | | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME}
 | | ... | $$VSWITCH_IF1$$=${dut1_if1_name}
 | | ... | $$VSWITCH_IF2$$=${dut1_if2_name}
+| | ... | $$TG_IF1_MAC1$$=${tg_if1_mac}
+| | ... | $$TG_IF2_MAC1$$=${tg_if2_mac}
 | | Apply Kubernetes resource on node | ${dut2}
 | | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME}
 | | ... | $$VSWITCH_IF1$$=${dut2_if1_name}
 | | ... | $$VSWITCH_IF2$$=${dut2_if2_name}
+| | ... | $$TG_IF1_MAC1$$=${tg_if1_mac}
+| | ... | $$TG_IF2_MAC1$$=${tg_if2_mac}
 | | Wait for Kubernetes PODs on all DUTs | ${nodes} | csit
 | | Set Kubernetes PODs affinity on all DUTs | ${nodes}
 | | Run Keyword If | '${search_type}' == 'NDR'
index f8cfac7..cc4d0c9 100644 (file)
 | | ${dut1_if2_name}= | Get interface name | ${dut1} | ${dut1_if2}
 | | ${dut2_if1_name}= | Get interface name | ${dut2} | ${dut2_if1}
 | | ${dut2_if2_name}= | Get interface name | ${dut2} | ${dut2_if2}
+| | ${tg_if1_mac}= | Get Interface MAC | ${tg} | ${tg_if1}
+| | ${tg_if2_mac}= | Get Interface MAC | ${tg} | ${tg_if2}
 | | Create Kubernetes VSWITCH startup config on all DUTs | ${get_framesize}
 | | ... | ${wt} | ${rxq}
 | | Create Kubernetes VNF'1' startup config on all DUTs
 | | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME}
 | | ... | $$VSWITCH_IF1$$=${dut1_if1_name}
 | | ... | $$VSWITCH_IF2$$=${dut1_if2_name}
+| | ... | $$TG_IF1_MAC1$$=${tg_if1_mac}
+| | ... | $$TG_IF2_MAC1$$=${tg_if2_mac}
 | | Apply Kubernetes resource on node | ${dut2}
 | | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME}
 | | ... | $$VSWITCH_IF1$$=${dut2_if1_name}
 | | ... | $$VSWITCH_IF2$$=${dut2_if2_name}
+| | ... | $$TG_IF1_MAC1$$=${tg_if1_mac}
+| | ... | $$TG_IF2_MAC1$$=${tg_if2_mac}
 | | Wait for Kubernetes PODs on all DUTs | ${nodes} | csit
 | | Set Kubernetes PODs affinity on all DUTs | ${nodes}
 | | Run Keyword If | '${search_type}' == 'NDR'
index 17e85f5..5fe0802 100644 (file)
 | | ${dut1_if2_name}= | Get interface name | ${dut1} | ${dut1_if2}
 | | ${dut2_if1_name}= | Get interface name | ${dut2} | ${dut2_if1}
 | | ${dut2_if2_name}= | Get interface name | ${dut2} | ${dut2_if2}
+| | ${tg_if1_mac}= | Get Interface MAC | ${tg} | ${tg_if1}
+| | ${tg_if2_mac}= | Get Interface MAC | ${tg} | ${tg_if2}
 | | Create Kubernetes VSWITCH startup config on all DUTs | ${get_framesize}
 | | ... | ${wt} | ${rxq}
 | | Create Kubernetes VNF'1' startup config on all DUTs
 | | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME}
 | | ... | $$VSWITCH_IF1$$=${dut1_if1_name}
 | | ... | $$VSWITCH_IF2$$=${dut1_if2_name}
+| | ... | $$TG_IF1_MAC1$$=${tg_if1_mac}
+| | ... | $$TG_IF2_MAC1$$=${tg_if2_mac}
 | | Apply Kubernetes resource on node | ${dut2}
 | | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME}
 | | ... | $$VSWITCH_IF1$$=${dut2_if1_name}
 | | ... | $$VSWITCH_IF2$$=${dut2_if2_name}
+| | ... | $$TG_IF1_MAC1$$=${tg_if1_mac}
+| | ... | $$TG_IF2_MAC1$$=${tg_if2_mac}
 | | Wait for Kubernetes PODs on all DUTs | ${nodes} | csit
 | | Set Kubernetes PODs affinity on all DUTs | ${nodes}
 | | Run Keyword If | '${search_type}' == 'NDR'
index 5695688..88437b2 100644 (file)
 | | ${dut1_if2_name}= | Get interface name | ${dut1} | ${dut1_if2}
 | | ${dut2_if1_name}= | Get interface name | ${dut2} | ${dut2_if1}
 | | ${dut2_if2_name}= | Get interface name | ${dut2} | ${dut2_if2}
+| | ${tg_if1_mac}= | Get Interface MAC | ${tg} | ${tg_if1}
+| | ${tg_if2_mac}= | Get Interface MAC | ${tg} | ${tg_if2}
 | | Create Kubernetes VSWITCH startup config on all DUTs | ${get_framesize}
 | | ... | ${wt} | ${rxq}
 | | Create Kubernetes VNF'1' startup config on all DUTs
 | | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME}
 | | ... | $$VSWITCH_IF1$$=${dut1_if1_name}
 | | ... | $$VSWITCH_IF2$$=${dut1_if2_name}
+| | ... | $$TG_IF1_MAC1$$=${tg_if1_mac}
+| | ... | $$TG_IF2_MAC1$$=${tg_if2_mac}
 | | Apply Kubernetes resource on node | ${dut2}
 | | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME}
 | | ... | $$VSWITCH_IF1$$=${dut2_if1_name}
 | | ... | $$VSWITCH_IF2$$=${dut2_if2_name}
+| | ... | $$TG_IF1_MAC1$$=${tg_if1_mac}
+| | ... | $$TG_IF2_MAC1$$=${tg_if2_mac}
 | | Wait for Kubernetes PODs on all DUTs | ${nodes} | csit
 | | Set Kubernetes PODs affinity on all DUTs | ${nodes}
 | | Run Keyword If | '${search_type}' == 'NDR'