go.ligato.io/vpp-agent/v3@v3.5.0/tests/robot/suites/crudIPv6/vxlan_crudIPv6.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/vpp_api.robot
    10  Resource     ../../libraries/vpp_term.robot
    11  Resource     ../../libraries/docker.robot
    12  Resource     ../../libraries/setup-teardown.robot
    13  Resource     ../../libraries/configurations.robot
    14  Resource     ../../libraries/etcdctl.robot
    15  Resource     ../../libraries/linux.robot
    16  
    17  Resource     ../../libraries/interface/vxlan.robot
    18  Resource     ../../libraries/interface/interface_generic.robot
    19  
    20  Force Tags        crud     IPv6
    21  Suite Setup       Testsuite Setup
    22  Suite Teardown    Testsuite Teardown
    23  Test Setup        TestSetup
    24  Test Teardown     TestTeardown
    25  
    26  *** Variables ***
    27  ${VARIABLES}=          common
    28  ${ENV}=                common
    29  
    30  ${IP1}=                fd30::1:b:0:0:1
    31  ${IP2}=                fd30::1:b:0:0:2
    32  ${IP3}=                fd31::1:b:0:0:1
    33  ${IP4}=                fd31::1:b:0:0:2
    34  ${IP10}=               fd32::1:b:0:0:1
    35  ${IP20}=               fd32::1:b:0:0:2
    36  ${WAIT_TIMEOUT}=     20s
    37  ${SYNC_SLEEP}=       3s
    38  *** Test Cases ***
    39  Configure Environment
    40      [Tags]    setup
    41      Configure Environment 1
    42  
    43  Show Interfaces Before Setup
    44      vpp_term: Show Interfaces    agent_vpp_1
    45  
    46  Add First VXLan Interface
    47      VXLan Tunnel Not Exists    node=agent_vpp_1    src=${IP1}    dst=${IP2}    vni=15
    48      Put VXLan Interface    node=agent_vpp_1    name=vpp1_vxlan1    src=${IP1}    dst=${IP2}    vni=15
    49  
    50      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    VXLan Tunnel Is Created    node=agent_vpp_1    src=${IP1}    dst=${IP2}    vni=15
    51      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    vpp_api: Check VXLan Interface State    agent_vpp_1    vpp1_vxlan1    enabled=1    src=${IP1}    dst=${IP2}    vni=15
    52  
    53  Add Second VXLan Interface
    54      VXLan Tunnel Not Exists    node=agent_vpp_1    src=${IP3}    dst=${IP4}    vni=25
    55      Put VXLan Interface    node=agent_vpp_1    name=vpp1_vxlan2    src=${IP3}    dst=${IP4}    vni=25
    56  
    57      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    VXLan Tunnel Is Created    node=agent_vpp_1    src=${IP3}    dst=${IP4}    vni=25
    58      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    vpp_api: Check VXLan Interface State    agent_vpp_1    vpp1_vxlan2    enabled=1    src=${IP3}    dst=${IP4}    vni=25
    59  
    60  Check That First VXLan Interface Is Still Configured
    61      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    vpp_api: Check VXLan Interface State    agent_vpp_1    vpp1_vxlan1    enabled=1    src=${IP1}    dst=${IP2}    vni=15
    62  
    63  Update First VXLan Interface
    64      Put VXLan Interface    node=agent_vpp_1    name=vpp1_vxlan1    src=${IP10}    dst=${IP20}    vni=150
    65  
    66      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    VXLan Tunnel Is Deleted    node=agent_vpp_1    src=${IP1}    dst=${IP2}    vni=15
    67      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    VXLan Tunnel Is Created    node=agent_vpp_1    src=${IP10}    dst=${IP20}    vni=150
    68      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    vpp_api: Check VXLan Interface State    agent_vpp_1    vpp1_vxlan1    enabled=1    src=${IP10}    dst=${IP20}    vni=150
    69  
    70  Check That Second VXLan Interface Is Not Changed
    71      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    vpp_api: Check VXLan Interface State    agent_vpp_1    vpp1_vxlan2    enabled=1    src=${IP3}    dst=${IP4}    vni=25
    72  
    73  Delete First VXLan Interface
    74      Delete VPP Interface    node=agent_vpp_1    name=vpp1_vxlan1
    75  
    76      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    VXLan Tunnel Is Deleted    node=agent_vpp_1    src=${IP10}    dst=${IP20}    vni=150
    77  
    78  Check That Second VXLan Interface Is Still Configured
    79      Wait Until Keyword Succeeds   ${WAIT_TIMEOUT}   ${SYNC_SLEEP}    vpp_api: Check VXLan Interface State    agent_vpp_1    vpp1_vxlan2    enabled=1    src=${IP3}    dst=${IP4}    vni=25
    80  
    81  Show Interfaces And Other Objects After Setup
    82      vpp_term: Show Interfaces    agent_vpp_1
    83      vpp_term: Show Interfaces    agent_vpp_2
    84      Write To Machine    agent_vpp_1_term    show int addr
    85      Write To Machine    agent_vpp_2_term    show int addr
    86      Write To Machine    agent_vpp_1_term    show h
    87      Write To Machine    agent_vpp_2_term    show h
    88      Write To Machine    agent_vpp_1_term    show br
    89      Write To Machine    agent_vpp_2_term    show br
    90      Write To Machine    agent_vpp_1_term    show br 1 detail
    91      Write To Machine    agent_vpp_2_term    show br 1 detail
    92      Write To Machine    agent_vpp_1_term    show vxlan tunnel
    93      Write To Machine    agent_vpp_2_term    show vxlan tunnel
    94      Write To Machine    agent_vpp_1_term    show err
    95      Write To Machine    agent_vpp_2_term    show err
    96      vpp_api: Interfaces Dump    agent_vpp_1
    97      vpp_api: Interfaces Dump    agent_vpp_2
    98      Execute In Container    agent_vpp_1    ip a
    99      Execute In Container    agent_vpp_2    ip a
   100  
   101  *** Keywords ***
   102  TestSetup
   103      Make Datastore Snapshots    ${TEST_NAME}_test_setup
   104  
   105  TestTeardown
   106      Make Datastore Snapshots    ${TEST_NAME}_test_teardown
   107