ansible/test/integration/targets/vyos_interface/tests/cli/basic.yaml
Nathaniel Case 2425374fdd
Actually move vyos tests to network_cli ()
* Fix vyos on network_cli on python3

bytes do not have format() in Python3

* Push connection to tasks, with bonus connection=local test

* Run tests without explicit connection set

* Add/update START messages where appropriate
2017-12-13 14:30:24 -05:00

220 lines
5.7 KiB
YAML

---
- debug: msg="START cli/basic.yaml on connection={{ ansible_connection }}"
- name: Run vyos lsmod command
vyos_command:
commands:
- lsmod
register: lsmod_out
- name: Set up - delete interface
vyos_interface:
name: eth1
state: absent
- name: Set up - Create interface
vyos_interface:
name: eth1
state: present
description: test-interface
register: result
- assert:
that:
- 'result.changed == true'
- '"set interfaces ethernet eth1" in result.commands'
- '"set interfaces ethernet eth1 description test-interface" in result.commands'
- name: Configure interface params
vyos_interface:
name: eth1
state: present
description: test-interface-1
speed: 100
duplex: half
mtu: 256
when: "'virtio_net' not in lsmod_out.stdout[0]"
register: result
- assert:
that:
- 'result.changed == true'
- '"set interfaces ethernet eth1 description test-interface-1" in result.commands'
- '"set interfaces ethernet eth1 speed 100" in result.commands'
- '"set interfaces ethernet eth1 duplex half" in result.commands'
- '"set interfaces ethernet eth1 mtu 256" in result.commands'
when: "'virtio_net' not in lsmod_out.stdout[0]"
- name: Configure interface params (idempotent)
vyos_interface:
name: eth1
state: present
description: test-interface-1
speed: 100
duplex: half
mtu: 256
register: result
when: "'virtio_net' not in lsmod_out.stdout[0]"
- assert:
that:
- 'result.changed == false'
when: "'virtio' not in lsmod_out.stdout[0]"
- name: Change interface params
vyos_interface:
name: eth1
state: present
description: test-interface-2
speed: 1000
duplex: full
mtu: 512
register: result
when: "'virtio_net' not in lsmod_out.stdout[0]"
- assert:
that:
- 'result.changed == true'
- '"set interfaces ethernet eth1 description test-interface-2" in result.commands'
- '"set interfaces ethernet eth1 speed 1000" in result.commands'
- '"set interfaces ethernet eth1 duplex full" in result.commands'
- '"set interfaces ethernet eth1 mtu 512" in result.commands'
when: "'virtio_net' not in lsmod_out.stdout[0]"
- name: Disable interface
vyos_interface:
name: eth1
enabled: False
register: result
- assert:
that:
- 'result.changed == true'
- '"set interfaces ethernet eth1 disable" in result.commands'
- name: Enable interface
vyos_interface:
name: eth1
enabled: True
register: result
- assert:
that:
- 'result.changed == true'
- '"delete interfaces ethernet eth1 disable" in result.commands'
- name: Delete interface
vyos_interface:
name: eth1
state: absent
register: result
- assert:
that:
- 'result.changed == true'
- '"delete interfaces ethernet eth1" in result.commands'
- name: Delete interface (idempotent)
vyos_interface:
name: eth1
state: absent
register: result
- assert:
that:
- 'result.changed == false'
- name: Aggregate setup- delete interface
vyos_interface:
name: eth2
state: absent
register: result
- name: Set interface on aggregate
vyos_interface:
aggregate:
- { name: eth1, description: test-interface-1, speed: 100, duplex: half, mtu: 512}
- { name: eth2, description: test-interface-2, speed: 1000, duplex: full, mtu: 256}
register: result
when: "'virtio_net' not in lsmod_out.stdout[0]"
- assert:
that:
- 'result.changed == true'
- '"set interfaces ethernet eth1 description test-interface-1" in result.commands'
- '"set interfaces ethernet eth1 speed 100" in result.commands'
- '"set interfaces ethernet eth1 duplex half" in result.commands'
- '"set interfaces ethernet eth1 mtu 512" in result.commands'
- '"set interfaces ethernet eth2 description test-interface-2" in result.commands'
- '"set interfaces ethernet eth2 speed 1000" in result.commands'
- '"set interfaces ethernet eth2 duplex full" in result.commands'
- '"set interfaces ethernet eth2 mtu 256" in result.commands'
when: "'virtio_net' not in lsmod_out.stdout[0]"
- name: Set interface on aggregate (idempotent)
vyos_interface:
aggregate:
- { name: eth1, description: test-interface-1, speed: 100, duplex: half, mtu: 512}
- { name: eth2, description: test-interface-2, speed: 1000, duplex: full, mtu: 256}
register: result
when: "'virtio_net' not in lsmod_out.stdout[0]"
- assert:
that:
- 'result.changed == false'
when: "'virtio_net' not in lsmod_out.stdout[0]"
- name: Disable interface on aggregate
vyos_interface:
aggregate:
- name: eth1
- name: eth2
description: test-interface
enabled: False
register: result
- assert:
that:
- 'result.changed == true'
- '"set interfaces ethernet eth1 disable" in result.commands'
- '"set interfaces ethernet eth2 disable" in result.commands'
- name: Enable interface on aggregate
vyos_interface:
aggregate:
- name: eth1
- name: eth2
enabled: True
register: result
- assert:
that:
- 'result.changed == true'
- '"delete interfaces ethernet eth1 disable" in result.commands'
- '"delete interfaces ethernet eth2 disable" in result.commands'
- name: Delete interface aggregate
vyos_interface:
aggregate:
- name: eth1
- name: eth2
state: absent
register: result
- assert:
that:
- 'result.changed == true'
- '"delete interfaces ethernet eth1" in result.commands'
- '"delete interfaces ethernet eth2" in result.commands'
- name: Delete interface aggregate (idempotent)
vyos_interface:
aggregate:
- name: eth1
- name: eth2
state: absent
register: result
- assert:
that:
- 'result.changed == false'