go.ligato.io/vpp-agent/v3@v3.5.0/tests/robot/suites/traffic/libmemif/libmemif_master_trafic1.robot (about) 1 *** Settings *** 2 Library OperatingSystem 3 #Library RequestsLibrary 4 #Library SSHLibrary timeout=60s 5 #Library String 6 7 Resource ../../../variables/${VARIABLES}_variables.robot 8 9 Resource ../../../libraries/all_libs.robot 10 11 Force Tags traffic IPv4 ExpectedFailure 12 Suite Setup Testsuite Setup 13 Suite Teardown Testsuite Teardown 14 Test Setup TestSetup 15 Test Teardown TestTeardown 16 17 *** Variables *** 18 ${VARIABLES}= common 19 ${ENV}= common 20 ${WAIT_TIMEOUT}= 20s 21 ${SYNC_SLEEP}= 3s 22 23 ${LIBMEMIF_IP1}= 192.168.1.2 24 ${VPP2MEMIF_IP1}= 192.168.1.2 25 ${VPP1MEMIF_IP1}= 192.168.1.1 26 ${LIBMEMIF_IP2}= 192.168.2.2 27 ${VPP2MEMIF_IP2}= 192.168.2.2 28 ${VPP1MEMIF_IP2}= 192.168.2.1 29 # wait for resync vpps after restart 30 ${RESYNC_WAIT}= 30s 31 32 *** Test Cases *** 33 Configure Environment 34 [Tags] setup 35 Configure Environment 3 36 37 Show Interfaces Before Setup 38 vpp_term: Show Interfaces agent_vpp_1 39 40 Add Memif1 Interface On VPP1 41 Put Memif Interface With IP node=agent_vpp_1 name=vpp1_memif1 mac=62:61:61:61:61:61 master=false id=0 ip=${VPP1MEMIF_IP1} prefix=24 socket=memif.sock 42 43 44 Check Memif1 Interface Created On VPP1 45 Wait Until Keyword Succeeds ${WAIT_TIMEOUT} ${SYNC_SLEEP} vpp_term: Interface Is Created node=agent_vpp_1 mac=62:61:61:61:61:61 46 Wait Until Keyword Succeeds ${WAIT_TIMEOUT} ${SYNC_SLEEP} vat_term: Check Memif Interface State agent_vpp_1 vpp1_memif1 mac=62:61:61:61:61:61 role=slave id=0 ipv4=${VPP1MEMIF_IP1}/24 connected=0 enabled=1 socket=${AGENT_LIBMEMIF_1_MEMIF_SOCKET_FOLDER}/memif.sock 47 48 Modify Memif1 Interface On VPP1 49 Put Memif Interface With IP node=agent_vpp_1 name=vpp1_memif1 mac=62:61:61:61:61:62 master=false id=0 ip=${VPP1MEMIF_IP2} prefix=24 socket=memif.sock 50 51 52 Check Memif1 Interface On VPP1 is Modified 53 Wait Until Keyword Succeeds ${WAIT_TIMEOUT} ${SYNC_SLEEP} vpp_term: Interface Is Created node=agent_vpp_1 mac=62:61:61:61:61:62 54 Wait Until Keyword Succeeds ${WAIT_TIMEOUT} ${SYNC_SLEEP} vat_term: Check Memif Interface State agent_vpp_1 vpp1_memif1 mac=62:61:61:61:61:62 role=slave id=0 ipv4=${VPP1MEMIF_IP2}/24 connected=0 enabled=1 socket=${AGENT_LIBMEMIF_1_MEMIF_SOCKET_FOLDER}/memif.sock 55 56 Create And Chek Memif1 On Agent Libmemif 1 57 ${out}= lmterm: Issue Command agent_libmemif_1 conn 0 1 58 ${out}= lmterm: Issue Command agent_libmemif_1 show 59 Should Contain ${out} interface ip: ${LIBMEMIF_IP1} 60 Should Contain ${out} link: up 61 62 Check Memif1 Interface On VPP1 Connected To LibMemif 63 Wait Until Keyword Succeeds ${WAIT_TIMEOUT} ${SYNC_SLEEP} vpp_term: Interface Is Created node=agent_vpp_1 mac=62:61:61:61:61:62 64 Wait Until Keyword Succeeds ${WAIT_TIMEOUT} ${SYNC_SLEEP} vat_term: Check Memif Interface State agent_vpp_1 vpp1_memif1 mac=62:61:61:61:61:62 role=slave id=0 ipv4=${VPP1MEMIF_IP2}/24 connected=1 enabled=1 socket=${AGENT_LIBMEMIF_1_MEMIF_SOCKET_FOLDER}/memif.sock 65 66 Modify Memif1 On VPP1 back 67 Put Memif Interface With IP node=agent_vpp_1 name=vpp1_memif1 mac=62:61:61:61:61:61 master=false id=0 ip=${VPP1MEMIF_IP1} prefix=24 socket=memif.sock 68 69 70 Check Memif1 on Vpp1 is connected 71 Wait Until Keyword Succeeds ${WAIT_TIMEOUT} ${SYNC_SLEEP} vat_term: Check Memif Interface State agent_vpp_1 vpp1_memif1 mac=62:61:61:61:61:61 role=slave id=0 ipv4=${VPP1MEMIF_IP1}/24 connected=1 enabled=1 socket=${AGENT_LIBMEMIF_1_MEMIF_SOCKET_FOLDER}/memif.sock 72 73 Check Ping VPP1 -> Agent Libmemif 1 74 vpp_term: Check Ping agent_vpp_1 ${LIBMEMIF_IP1} 75 76 77 Remove VPP Nodes 78 Remove All VPP Nodes 79 Sleep ${SYNC_SLEEP} 80 Add Agent VPP Node agent_vpp_1 81 #Add Agent VPP Node agent_vpp_2 82 Sleep ${RESYNC_WAIT} 83 84 Check Memif1 Interface On VPP1 Connected To LibMemif After Resync 85 vpp_term: Interface Is Created node=agent_vpp_1 mac=62:61:61:61:61:61 86 vat_term: Check Memif Interface State agent_vpp_1 vpp1_memif1 mac=62:61:61:61:61:61 role=slave id=0 ipv4=${VPP1MEMIF_IP1}/24 connected=1 enabled=1 socket=${AGENT_LIBMEMIF_1_MEMIF_SOCKET_FOLDER}/memif.sock 87 88 Check Ping VPP1 -> Agent Libmemif 1 After Resync 89 vpp_term: Check Ping agent_vpp_1 ${LIBMEMIF_IP1} 90 91 ############################################################################## 92 93 94 Delete Memif On Agent Libmemif 1 95 ${out}= lmterm: Issue Command agent_libmemif_1 del 0 96 97 98 Check Memif1 Interface On VPP1 Disconnected After Master Deleted 99 Wait Until Keyword Succeeds ${WAIT_TIMEOUT} ${SYNC_SLEEP} vpp_term: Interface Is Created node=agent_vpp_1 mac=62:61:61:61:61:61 100 Wait Until Keyword Succeeds ${WAIT_TIMEOUT} ${SYNC_SLEEP} vat_term: Check Memif Interface State agent_vpp_1 vpp1_memif1 mac=62:61:61:61:61:61 role=slave id=0 ipv4=${VPP1MEMIF_IP1}/24 connected=0 enabled=1 socket=${AGENT_LIBMEMIF_1_MEMIF_SOCKET_FOLDER}/memif.sock 101 102 Create Memif1 On Agent Libmemif 1 Again 103 ${out}= lmterm: Issue Command agent_libmemif_1 conn 0 1 104 105 Check Memif1 Interface On VPP1 Connected After Master Deleted and Created 106 Wait Until Keyword Succeeds ${WAIT_TIMEOUT} ${SYNC_SLEEP} vpp_term: Interface Is Created node=agent_vpp_1 mac=62:61:61:61:61:61 107 Wait Until Keyword Succeeds ${WAIT_TIMEOUT} ${SYNC_SLEEP} vat_term: Check Memif Interface State agent_vpp_1 vpp1_memif1 mac=62:61:61:61:61:61 role=slave id=0 ipv4=${VPP1MEMIF_IP1}/24 connected=1 enabled=1 socket=${AGENT_LIBMEMIF_1_MEMIF_SOCKET_FOLDER}/memif.sock 108 109 Check Ping VPP1 -> Agent Libmemif 1 After Delete and Create 110 vpp_term: Check Ping agent_vpp_1 ${LIBMEMIF_IP1} 111 112 ###### Here VPP crashes 113 Modify Memif1 Interface On VPP1 While Connected 114 Put Memif Interface With IP node=agent_vpp_1 name=vpp1_memif1 mac=62:61:61:61:61:62 master=false id=0 ip=${VPP1MEMIF_IP2} prefix=24 socket=memif.sock 115 116 117 Check Memif1 Interface On VPP1 Modified 118 Wait Until Keyword Succeeds ${WAIT_TIMEOUT} ${SYNC_SLEEP} vpp_term: Interface Is Created node=agent_vpp_1 mac=62:61:61:61:61:62 119 Wait Until Keyword Succeeds ${WAIT_TIMEOUT} ${SYNC_SLEEP} vat_term: Check Memif Interface State agent_vpp_1 vpp1_memif1 mac=62:61:61:61:61:62 role=slave id=0 ipv4=${VPP1MEMIF_IP2}/24 connected=1 enabled=1 socket=${AGENT_LIBMEMIF_1_MEMIF_SOCKET_FOLDER}/memif.sock 120 121 ########################################################### 122 123 124 *** Keywords *** 125 TestSetup 126 Make Datastore Snapshots ${TEST_NAME}_test_setup 127 128 TestTeardown 129 Make Datastore Snapshots ${TEST_NAME}_test_teardown