mirror of
				https://github.com/ansible-collections/community.general.git
				synced 2024-09-14 20:13:21 +02:00 
			
		
		
		
	* 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
		
			
				
	
	
		
			220 lines
		
	
	
	
		
			5.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			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'
 |