Creating Device configuration snippets [CREATED] dut: initial,bgp,bgp.session [CREATED] x1: initial,bgp [CREATED] x2: initial,bgp Config Deploying device configurations [INFO] Executing initial configuration for node x1 [INFO] Executing initial configuration for node x2 [INFO] Executing bgp configuration for node x2 [INFO] Executing bgp configuration for node x1 [INFO] Starting Ansible playbook to deploy the rest of the configurations [WARNING]: Found variable using reserved name: hosts PLAY [Deploy initial device configuration] ************************************* TASK [Set variables that cannot be set with VARS] ****************************** ok: [dut] TASK [Normalize config on bridge-like devices] ********************************* included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for dut 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 [Deploy initial configuration] ******************************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for dut 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=========================================\n#!/bin/vbash\nsource /opt/vyatta/etc/functions/script-template\n\nif [ \"$(id -g -n)\" != 'vyattacfg' ] ; then\n exec sg vyattacfg -c \"/bin/vbash $(readlink -f $0) $@\"\nfi\n\n# Configuration items start here\n\nconfigure\nset system host-name 'dut'\n\n\nset interfaces dummy dum0 address 10.0.0.1/32\n\n\n\nset interfaces ethernet eth1 description 'dut -> x1 [external]'\n\n\nset interfaces ethernet eth1 address 10.1.0.1/30\n\nset interfaces ethernet eth1 address 2001:db8:3::1/64;\n\n\n\n\nset interfaces ethernet eth2 description 'dut -> x2 [external]'\n\n\nset interfaces ethernet eth2 address 10.1.0.5/30\n\nset interfaces ethernet eth2 address 2001:db8:3:1::1/64;\n\n\n\nset service lldp interface all\n>/dev/null 2>/dev/null set service lldp interface eth0 disable\n>/dev/null 2>/dev/null set service lldp interface eth0 mode disable\n\nset service router-advert interface eth1\nset service router-advert interface eth2\n\n\n# Commit, save and exit from subshell\n\ncommit\nsave\nexit\n\n# Restart FRR to pick up the new hostname\nsudo service frr restart\n" } TASK [Deploy initial configuration] ******************************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/vyos.yml for dut TASK [set_fact] **************************************************************** ok: [dut] TASK [template] **************************************************************** changed: [dut] TASK [execute config-initial.sh to deploy initial config from /work/netlab_cicd/node_files/dut/initial] *** changed: [dut] PLAY [Deploy module-specific configurations] *********************************** TASK [Set variables that cannot be set with VARS] ****************************** ok: [dut] TASK [Deploy individual configuration modules] ********************************* included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for dut => (item=bgp) TASK [Figure out whether to deploy the module bgp on current device] *********** ok: [dut] TASK [Find configuration template for bgp] ************************************* ok: [dut] TASK [fail] ******************************************************************** skipping: [dut] TASK [Find configuration deployment deploy_script for bgp] ********************* ok: [dut] TASK [Print deployed configuration when running in verbose mode] *************** ok: [dut] => { "msg": "bgp configuration for dut\n=========================================\n\nset protocols bgp system-as 64500\n\nset protocols bgp parameters router-id 10.0.0.1\n\n\n\nset protocols bgp neighbor 10.1.0.2 remote-as 65100\nset protocols bgp neighbor 10.1.0.2 description 'x1'\n \n\n\n\n\nset protocols bgp neighbor 2001:db8:3::2 remote-as 65100\nset protocols bgp neighbor 2001:db8:3::2 description 'x1'\n \n\n\n\n\nset protocols bgp neighbor 10.1.0.6 remote-as 64507\nset protocols bgp neighbor 10.1.0.6 description 'x2'\n \n\n\n\n\nset protocols bgp neighbor 2001:db8:3:1::3 remote-as 64507\nset protocols bgp neighbor 2001:db8:3:1::3 description 'x2'\n \n\n\n\n\n# Work on Family ipv4\n\n\nset protocols bgp address-family ipv4-unicast network 10.0.0.1/32\n\n\n\n\n\nset protocols bgp neighbor 10.1.0.2 address-family ipv4-unicast soft-reconfiguration inbound\n\nset protocols bgp neighbor 10.1.0.2 address-family ipv4-unicast nexthop-self\n\nset protocols bgp neighbor 10.1.0.2 address-family ipv4-unicast disable-send-community extended\n\n\n\nset protocols bgp neighbor 10.1.0.6 address-family ipv4-unicast soft-reconfiguration inbound\n\nset protocols bgp neighbor 10.1.0.6 address-family ipv4-unicast nexthop-self\n\nset protocols bgp neighbor 10.1.0.6 address-family ipv4-unicast disable-send-community extended\n\n\n\n# Work on Family ipv6\n\n\n\n\n\n\n\nset protocols bgp neighbor 2001:db8:3::2 address-family ipv6-unicast soft-reconfiguration inbound\n\nset protocols bgp neighbor 2001:db8:3::2 address-family ipv6-unicast nexthop-self\n\nset protocols bgp neighbor 2001:db8:3::2 address-family ipv6-unicast disable-send-community extended\n\n\n\nset protocols bgp neighbor 2001:db8:3:1::3 address-family ipv6-unicast soft-reconfiguration inbound\n\nset protocols bgp neighbor 2001:db8:3:1::3 address-family ipv6-unicast nexthop-self\n\nset protocols bgp neighbor 2001:db8:3:1::3 address-family ipv6-unicast disable-send-community extended\n\n\n\n" } TASK [Deploy bgp configuration] ************************************************ included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/vyos.yml for dut TASK [set_fact] **************************************************************** ok: [dut] TASK [template] **************************************************************** changed: [dut] TASK [execute config-bgp.sh to deploy bgp config from /work/netlab_cicd/node_files/dut/bgp] *** changed: [dut] PLAY [Deploy custom deployment templates] ************************************** TASK [Run custom configuration deployment scripts] ***************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-custom-config.yml for dut => (item=bgp.session) TASK [Find configuration template] ********************************************* ok: [dut] TASK [fail] ******************************************************************** skipping: [dut] TASK [Check is the configuration template is a file] *************************** ok: [dut -> localhost] TASK [fail] ******************************************************************** skipping: [dut] TASK [Process template /work/netlab_cicd/node_files/dut/bgp.session for dut] *** skipping: [dut] TASK [Find custom configuration deployment script] ***************************** ok: [dut] TASK [Run the configuration deployment script] ********************************* included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/vyos.yml for dut TASK [set_fact] **************************************************************** ok: [dut] TASK [template] **************************************************************** changed: [dut] TASK [execute config-bgp.session.sh to deploy bgp.session config from /work/netlab_cicd/node_files/dut/bgp.session] *** changed: [dut] PLAY RECAP ********************************************************************* dut : ok=32 changed=6 unreachable=0 failed=0 skipped=8 rescued=0 ignored=0 Results of configuration script deployments ================================================================================ x1 OK: 2 x2 OK: 2 Use this topology to test the 'remove private AS' functionality. The DUT has to remove AS 65100 from outgoing updates sent to X2, X2 to accept the BGP prefix advertised by X1.