Warning in ansible: You're using Ansible version 12.x or higher; netlab might not work correctly ... Ansible core version 2.19 introduced breaking changes in templates and playbooks ... We tested netlab core with Ansible version 12.x but not every device template ... You might want to downgrade Ansible to version 11.10 or lower. ... Use 'netlab install ansible' on Ubuntu to do that ... Finally, please open a GitHub issue if you experience errors/crashes ... Set defaults.ansible.warnings.ver12 to False to hide this warning [INFO] Checking for updates in configuration templates [INFO] Creating configuration snippets [WARNING]: Could not match supplied host pattern, ignoring: unprovisioned [WARNING]: Found variable using reserved name 'hosts'. Origin: /work/netlab_cicd/hogs/group_vars/all/topology.yml:157:1 155 ipv4: 10.2.0.0/24 156 prefix: 32 157 hosts: ^ column 1 PLAY [Deploy initial device configuration] ************************************* TASK [Set variables that cannot be set with VARS] ****************************** ok: [dut] ok: [x1] ok: [x2] TASK [Generic readiness tests] ************************************************* skipping: [dut] skipping: [x1] skipping: [x2] TASK [Find device readiness script] ******************************************** ok: [dut] ok: [x1] ok: [x2] TASK [Wait for device to become ready] ***************************************** skipping: [x1] skipping: [x2] included: /home/pipi/netlab_gh/netsim/ansible/tasks/readiness-check/junos.yml for dut TASK [set_fact] **************************************************************** ok: [dut] TASK [Wait for first interface (et-0/0/0)] ************************************* ok: [dut] TASK [Normalize config on bridge-like devices] ********************************* included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for dut included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for x1 included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for x2 TASK [Figure out whether to deploy the module normalize on current device] ***** ok: [dut] TASK [Find configuration template for normalize] ******************************* ok: [dut] TASK [fail] ******************************************************************** skipping: [dut] TASK [Find configuration deployment deploy_script for normalize] *************** ok: [dut] TASK [Print deployed configuration when running in verbose mode] *************** skipping: [dut] TASK [Deploy normalize configuration] ****************************************** skipping: [dut] TASK [Figure out whether to deploy the module normalize on current device] ***** ok: [x1] TASK [Find configuration template for normalize] ******************************* ok: [x1] TASK [fail] ******************************************************************** skipping: [x1] TASK [Find configuration deployment deploy_script for normalize] *************** ok: [x1] TASK [Print deployed configuration when running in verbose mode] *************** ok: [x1] => { "msg": "normalize configuration for x1\n=========================================\n!\ninterface Ethernet1\n shutdown\n!\ninterface Ethernet2\n shutdown\n" } TASK [Deploy normalize configuration] ****************************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/eos.yml for x1 TASK [eos_config: deploying normalize from /work/netlab_cicd/hogs/node_files/x1/normalize] *** [WARNING]: To ensure idempotency and correct diff the input configuration lines should be similar to how they appear if present in the running configuration on device including the indentation [WARNING]: Task result `warnings` was instead of . changed: [x1] TASK [Figure out whether to deploy the module normalize on current device] ***** ok: [x2] TASK [Find configuration template for normalize] ******************************* ok: [x2] TASK [fail] ******************************************************************** skipping: [x2] TASK [Find configuration deployment deploy_script for normalize] *************** ok: [x2] TASK [Print deployed configuration when running in verbose mode] *************** ok: [x2] => { "msg": "normalize configuration for x2\n=========================================\n!\ninterface Ethernet1\n shutdown\n!\ninterface Ethernet2\n shutdown\n" } TASK [Deploy normalize configuration] ****************************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/eos.yml for x2 TASK [eos_config: deploying normalize from /work/netlab_cicd/hogs/node_files/x2/normalize] *** changed: [x2] TASK [Deploy initial configuration] ******************************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for dut included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for x1 included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for x2 TASK [Figure out whether to deploy the module initial on current device] ******* ok: [dut] TASK [Find configuration template for initial] ********************************* ok: [dut] TASK [fail] ******************************************************************** skipping: [dut] TASK [Find configuration deployment deploy_script for initial] ***************** ok: [dut] TASK [Print deployed configuration when running in verbose mode] *************** ok: [dut] => { "msg": "initial configuration for dut\n=========================================\nsystem {\n host-name dut;\n static-host-mapping {\n x1 inet 10.0.0.2;\n x2 inet 10.0.0.3;\n }\n}\n\n\ninterfaces {\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n}\ninterfaces {\n\n lo0.0 {\n \n family inet {\n address 10.0.0.1/32;\n }\n \n }\n ae1.0 {\n description \"[Access VLAN red] dut -> x1\";\n \n \n }\n ae2.0 {\n description \"[Access VLAN blue] dut -> x2\";\n \n \n }\n et-0/0/0.0 {\n description \"dut -> x1\";\n \n \n }\n et-0/0/1.0 {\n description \"dut -> x1\";\n \n \n }\n et-0/0/2.0 {\n description \"dut -> x2\";\n \n \n }\n et-0/0/3.0 {\n description \"dut -> x2\";\n \n \n }\n irb.1000 {\n description \"VLAN red (1000) -> [x1]\";\n \n family inet {\n address 172.16.0.1/24;\n }\n \n }\n irb.1001 {\n description \"VLAN blue (1001) -> [x2]\";\n \n family inet {\n address 172.16.1.1/24;\n }\n \n }\n}\nprotocols {\n lldp {\n interface re0:mgmt-0 {\n disable;\n }\n interface all;\n }\n}\n" } TASK [Deploy initial configuration] ******************************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/junos.yml for dut TASK [junos_config: deploying initial from /work/netlab_cicd/hogs/node_files/dut/initial] *** [WARNING]: mgd: statement has no contents; ignored changed: [dut] TASK [Figure out whether to deploy the module initial on current device] ******* ok: [x1] TASK [Find configuration template for initial] ********************************* ok: [x1] TASK [fail] ******************************************************************** skipping: [x1] TASK [Find configuration deployment deploy_script for initial] ***************** ok: [x1] TASK [Print deployed configuration when running in verbose mode] *************** ok: [x1] => { "msg": "initial configuration for x1\n=========================================\nhostname x1\n!\nlogging monitor debugging\naaa authorization exec default local\n!\nlldp run\nip routing\nno ipv6 unicast-routing\n!\n!\nip host dut 10.0.0.1 172.16.0.1 172.16.1.1\nip host x2 10.0.0.3 172.16.1.3\n!\ninterface Management1\n no lldp transmit\n no lldp receive\n!\ninterface Loopback0\n ip address 10.0.0.2/32\n!\ninterface port-channel1\n no switchport\n description [Access VLAN red] x1 -> dut\n!\ninterface Ethernet1\n no switchport\n description x1 -> dut\n mac-address caf0.0002.0001\n!\n no shutdown\n!\ninterface Ethernet2\n no switchport\n description x1 -> dut\n mac-address caf0.0002.0002\n!\n no shutdown\n!\ninterface Vlan1000\n description VLAN red (1000) -> [dut]\n ip address 172.16.0.2/24\n!\n" } TASK [Deploy initial configuration] ******************************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/eos.yml for x1 TASK [eos_config: deploying initial from /work/netlab_cicd/hogs/node_files/x1/initial] *** changed: [x1] TASK [Figure out whether to deploy the module initial on current device] ******* ok: [x2] TASK [Find configuration template for initial] ********************************* ok: [x2] TASK [fail] ******************************************************************** skipping: [x2] TASK [Find configuration deployment deploy_script for initial] ***************** ok: [x2] TASK [Print deployed configuration when running in verbose mode] *************** ok: [x2] => { "msg": "initial configuration for x2\n=========================================\nhostname x2\n!\nlogging monitor debugging\naaa authorization exec default local\n!\nlldp run\nip routing\nno ipv6 unicast-routing\n!\n!\nip host dut 10.0.0.1 172.16.0.1 172.16.1.1\nip host x1 10.0.0.2 172.16.0.2\n!\ninterface Management1\n no lldp transmit\n no lldp receive\n!\ninterface Loopback0\n ip address 10.0.0.3/32\n!\ninterface port-channel1\n no switchport\n description [Access VLAN blue] x2 -> dut\n!\ninterface Ethernet1\n no switchport\n description x2 -> dut\n mac-address caf0.0003.0001\n!\n no shutdown\n!\ninterface Ethernet2\n no switchport\n description x2 -> dut\n mac-address caf0.0003.0002\n!\n no shutdown\n!\ninterface Vlan1001\n description VLAN blue (1001) -> [dut]\n ip address 172.16.1.3/24\n!\n" } TASK [Deploy initial configuration] ******************************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/eos.yml for x2 TASK [eos_config: deploying initial from /work/netlab_cicd/hogs/node_files/x2/initial] *** changed: [x2] PLAY [Deploy module-specific configurations] *********************************** TASK [Set variables that cannot be set with VARS] ****************************** ok: [dut] ok: [x1] ok: [x2] TASK [Deploy individual configuration modules] ********************************* included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for dut => (item=lag) included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for dut => (item=vlan) included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for dut => (item=ospf) included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for x1 => (item=lag) included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for x1 => (item=vlan) included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for x1 => (item=ospf) included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for x2 => (item=lag) included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for x2 => (item=vlan) included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for x2 => (item=ospf) TASK [Figure out whether to deploy the module lag on current device] *********** ok: [dut] TASK [Find configuration template for lag] ************************************* ok: [dut] TASK [fail] ******************************************************************** skipping: [dut] TASK [Find configuration deployment deploy_script for lag] ********************* ok: [dut] TASK [Print deployed configuration when running in verbose mode] *************** ok: [dut] => { "msg": "lag configuration for dut\n=========================================\n\nchassis {\n aggregated-devices {\n ethernet {\n device-count 2;\n }\n }\n}\n\n\ninterfaces {\n\n ae1 {\n description \"[Access VLAN red] dut -> x1 (LAG)\";\n aggregated-ether-options {\n\n lacp {\n passive;\n periodic fast;\n }\n }\n }\n\n et-0/0/0 {\n description \"dut -> x1 in LAG 1\";\n ether-options {\n 802.3ad ae1;\n }\n delete: mtu;\n delete: unit 0;\n }\n et-0/0/1 {\n description \"dut -> x1 in LAG 1\";\n ether-options {\n 802.3ad ae1;\n }\n delete: mtu;\n delete: unit 0;\n }\n\n ae2 {\n description \"[Access VLAN blue] dut -> x2 (LAG)\";\n aggregated-ether-options {\n\n lacp {\n passive;\n periodic fast;\n }\n }\n }\n\n et-0/0/2 {\n description \"dut -> x2 in LAG 2\";\n ether-options {\n 802.3ad ae2;\n }\n delete: mtu;\n delete: unit 0;\n }\n et-0/0/3 {\n description \"dut -> x2 in LAG 2\";\n ether-options {\n 802.3ad ae2;\n }\n delete: mtu;\n delete: unit 0;\n }\n\n\n}\n" } TASK [Deploy lag configuration] ************************************************ included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/junos.yml for dut TASK [junos_config: deploying lag from /work/netlab_cicd/hogs/node_files/dut/lag] *** [WARNING]: statement not found: mtu changed: [dut] TASK [Figure out whether to deploy the module vlan on current device] ********** ok: [dut] TASK [Find configuration template for vlan] ************************************ ok: [dut] TASK [fail] ******************************************************************** skipping: [dut] TASK [Find configuration deployment deploy_script for vlan] ******************** ok: [dut] TASK [Print deployed configuration when running in verbose mode] *************** ok: [dut] => { "msg": "vlan configuration for dut\n=========================================\n\nvlans {\n red {\n vlan-id 1000;\n\n l3-interface irb.1000;\n\n }\n blue {\n vlan-id 1001;\n\n l3-interface irb.1001;\n\n }\n}\n\ninterfaces {\n\n\n ae1.0 {\n family ethernet-switching {\n\n vlan {\n members red;\n }\n\n }\n }\n\n\n\n ae2.0 {\n family ethernet-switching {\n\n vlan {\n members blue;\n }\n\n }\n }\n\n\n}\n" } TASK [Deploy vlan configuration] *********************************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/junos.yml for dut TASK [junos_config: deploying vlan from /work/netlab_cicd/hogs/node_files/dut/vlan] *** changed: [dut] TASK [Figure out whether to deploy the module ospf on current device] ********** ok: [dut] TASK [Find configuration template for ospf] ************************************ ok: [dut] TASK [fail] ******************************************************************** skipping: [dut] TASK [Find configuration deployment deploy_script for ospf] ******************** ok: [dut] TASK [Print deployed configuration when running in verbose mode] *************** ok: [dut] => { "msg": "ospf configuration for dut\n=========================================\nrouting-options {\n router-id 10.0.0.1\n}\nprotocols {\n delete: ospf;\n}\n\nprotocols {\n ospf {\n area 0.0.0.0 {\n interface lo0.0 {\n }\n }\n area 0.0.0.0 {\n interface irb.1000 {\n interface-type p2p;\n }\n }\n area 0.0.0.0 {\n interface irb.1001 {\n interface-type p2p;\n }\n }\n }\n}\n\n" } TASK [Deploy ospf configuration] *********************************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/junos.yml for dut TASK [junos_config: deploying ospf from /work/netlab_cicd/hogs/node_files/dut/ospf] *** [WARNING]: statement not found changed: [dut] TASK [Figure out whether to deploy the module lag on current device] *********** ok: [x1] TASK [Find configuration template for lag] ************************************* ok: [x1] TASK [fail] ******************************************************************** skipping: [x1] TASK [Find configuration deployment deploy_script for lag] ********************* ok: [x1] TASK [Print deployed configuration when running in verbose mode] *************** ok: [x1] => { "msg": "lag configuration for x1\n=========================================\n\ninterface port-channel1\n description [Access VLAN red] x1 -> dut\n!\n!\n!\ninterface Ethernet1\n description x1 -> dut in channel-group 1\n channel-group 1 mode active\n lacp timer fast\n!\ninterface Ethernet2\n description x1 -> dut in channel-group 1\n channel-group 1 mode active\n lacp timer fast\n" } TASK [Deploy lag configuration] ************************************************ included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/eos.yml for x1 TASK [eos_config: deploying lag from /work/netlab_cicd/hogs/node_files/x1/lag] *** changed: [x1] TASK [Figure out whether to deploy the module vlan on current device] ********** ok: [x1] TASK [Find configuration template for vlan] ************************************ ok: [x1] TASK [fail] ******************************************************************** skipping: [x1] TASK [Find configuration deployment deploy_script for vlan] ******************** ok: [x1] TASK [Print deployed configuration when running in verbose mode] *************** ok: [x1] => { "msg": "vlan configuration for x1\n=========================================\nvlan 1000\n name red\n!\n\n!\ninterface port-channel1\n switchport\n switchport access vlan 1000\n!\ninterface Vlan1000\n" } TASK [Deploy vlan configuration] *********************************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/eos.yml for x1 TASK [eos_config: deploying vlan from /work/netlab_cicd/hogs/node_files/x1/vlan] *** changed: [x1] TASK [Figure out whether to deploy the module ospf on current device] ********** ok: [x1] TASK [Find configuration template for ospf] ************************************ ok: [x1] TASK [fail] ******************************************************************** skipping: [x1] TASK [Find configuration deployment deploy_script for ospf] ******************** ok: [x1] TASK [Print deployed configuration when running in verbose mode] *************** ok: [x1] => { "msg": "ospf configuration for x1\n=========================================\n!\n! OSPFv2 configuration\n!\nrouter ospf 1\n router-id 10.0.0.2\n interface unnumbered hello mask tx 0.0.0.0\n timers spf delay initial 100 200 500\n timers lsa rx min interval 100\n timers lsa tx delay initial 100 200 500\n\n\n!\ninterface Loopback0\n! \n ip ospf area 0.0.0.0\n!\ninterface Vlan1000\n! VLAN red (1000) -> [dut]\n ip ospf area 0.0.0.0\n ip ospf network point-to-point\n!\n\n" } TASK [Deploy ospf configuration] *********************************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/eos.yml for x1 TASK [eos_config: deploying ospf from /work/netlab_cicd/hogs/node_files/x1/ospf] *** changed: [x1] TASK [Figure out whether to deploy the module lag on current device] *********** ok: [x2] TASK [Find configuration template for lag] ************************************* ok: [x2] TASK [fail] ******************************************************************** skipping: [x2] TASK [Find configuration deployment deploy_script for lag] ********************* ok: [x2] TASK [Print deployed configuration when running in verbose mode] *************** ok: [x2] => { "msg": "lag configuration for x2\n=========================================\n\ninterface port-channel1\n description [Access VLAN blue] x2 -> dut\n!\n!\n!\ninterface Ethernet1\n description x2 -> dut in channel-group 1\n channel-group 1 mode passive\n lacp timer fast\n!\ninterface Ethernet2\n description x2 -> dut in channel-group 1\n channel-group 1 mode passive\n lacp timer fast\n" } TASK [Deploy lag configuration] ************************************************ included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/eos.yml for x2 TASK [eos_config: deploying lag from /work/netlab_cicd/hogs/node_files/x2/lag] *** changed: [x2] TASK [Figure out whether to deploy the module vlan on current device] ********** ok: [x2] TASK [Find configuration template for vlan] ************************************ ok: [x2] TASK [fail] ******************************************************************** skipping: [x2] TASK [Find configuration deployment deploy_script for vlan] ******************** ok: [x2] TASK [Print deployed configuration when running in verbose mode] *************** ok: [x2] => { "msg": "vlan configuration for x2\n=========================================\nvlan 1001\n name blue\n!\n\n!\ninterface port-channel1\n switchport\n switchport access vlan 1001\n!\ninterface Vlan1001\n" } TASK [Deploy vlan configuration] *********************************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/eos.yml for x2 TASK [eos_config: deploying vlan from /work/netlab_cicd/hogs/node_files/x2/vlan] *** changed: [x2] TASK [Figure out whether to deploy the module ospf on current device] ********** ok: [x2] TASK [Find configuration template for ospf] ************************************ ok: [x2] TASK [fail] ******************************************************************** skipping: [x2] TASK [Find configuration deployment deploy_script for ospf] ******************** ok: [x2] TASK [Print deployed configuration when running in verbose mode] *************** ok: [x2] => { "msg": "ospf configuration for x2\n=========================================\n!\n! OSPFv2 configuration\n!\nrouter ospf 1\n router-id 10.0.0.3\n interface unnumbered hello mask tx 0.0.0.0\n timers spf delay initial 100 200 500\n timers lsa rx min interval 100\n timers lsa tx delay initial 100 200 500\n\n\n!\ninterface Loopback0\n! \n ip ospf area 0.0.0.0\n!\ninterface Vlan1001\n! VLAN blue (1001) -> [dut]\n ip ospf area 0.0.0.0\n ip ospf network point-to-point\n!\n\n" } TASK [Deploy ospf configuration] *********************************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/eos.yml for x2 TASK [eos_config: deploying ospf from /work/netlab_cicd/hogs/node_files/x2/ospf] *** changed: [x2] PLAY [Deploy custom deployment templates] ************************************** skipping: no hosts matched PLAY RECAP ********************************************************************* dut : ok=38 changed=4 unreachable=0 failed=0 skipped=8 rescued=0 ignored=0 x1 : ok=38 changed=5 unreachable=0 failed=0 skipped=7 rescued=0 ignored=0 x2 : ok=38 changed=5 unreachable=0 failed=0 skipped=7 rescued=0 ignored=0 Warning: The following warnings were generated during the 'netlab initial' processing Warning: ansible: You're using Ansible version 12.x or higher; netlab might not work correctly [CREATED] dut: initial,lag,vlan,ospf [CREATED] x1: normalize,initial,lag,vlan,ospf [CREATED] x2: normalize,initial,lag,vlan,ospf The device under test is a L3 switch using passive LACP. It should be able to establish an OSPF-over-VLAN adjacency with an Arista EOS device using active LACP. but not with another Arista EOS device using passive LACP.