Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ios_interface testfix #32381

Merged
merged 1 commit into from
Oct 31, 2017
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
128 changes: 73 additions & 55 deletions test/integration/targets/ios_interface/tests/cli/basic.yaml
Original file line number Diff line number Diff line change
@@ -1,20 +1,52 @@
---
- debug: msg="START ios_interface cli/basic.yaml"

- name: Run show version
ios_command:
commands: show version
authorize: yes
register: show_version_result

- block:
- name: Set test interface to GigabitEthernet0/1 as we are on Cisco IOS
set_fact: test_interface=GigabitEthernet0/1
- name: Set test interface 2 to GigabitEthernet0/2 as we are on Cisco IOS
set_fact: test_interface2=GigabitEthernet0/2
when: "'Cisco IOS' in show_version_result.stdout[0]"

- block:
- name: Set test interface to GigabitEthernet2 as we are on Cisco IOS-XE
set_fact: test_interface=GigabitEthernet2
- name: Disable autonegotiation on GigabitEthernet2
ios_config:
lines:
- no negotiation auto
parents: int GigabitEthernet2
authorize: yes

- name: Set test interface 2 to GigabitEthernet3 as we are on Cisco IOS-XE
set_fact: test_interface2=GigabitEthernet3
- name: Disable autonegotiation on GigabitEthernet3
ios_config:
lines:
- no negotiation auto
parents: int GigabitEthernet3
authorize: yes
when: "'Cisco IOS-XE' in show_version_result.stdout[0]"

- name: Configure interface (setup)
ios_interface:
name: GigabitEthernet0/2
name: "{{ test_interface }}"
description: test-interface-1
speed: 10
duplex: full
mtu: 256
speed: 1000
mtu: 1800
state: present
authorize: yes
register: result

- name: Confgure interface
- name: Configure interface
ios_interface:
name: GigabitEthernet0/2
name: "{{ test_interface }}"
description: test-interface-initial
state: present
authorize: yes
Expand All @@ -23,12 +55,12 @@
- assert:
that:
- 'result.changed == true'
- '"interface GigabitEthernet0/2" in result.commands'
- '"interface {{ test_interface }}" in result.commands'
- '"description test-interface-initial" in result.commands'

- name: Confgure interface (idempotent)
ios_interface:
name: GigabitEthernet0/2
name: "{{ test_interface }}"
description: test-interface-initial
state: present
authorize: yes
Expand All @@ -40,111 +72,97 @@

- name: Confgure interface parameters
ios_interface:
name: GigabitEthernet0/2
name: "{{ test_interface }}"
description: test-interface
speed: 100
mtu: 512
mtu: 2000
state: present
authorize: yes
register: result

- assert:
that:
- 'result.changed == true'
- '"interface GigabitEthernet0/2" in result.commands'
- '"interface {{ test_interface }}" in result.commands'
- '"description test-interface" in result.commands'
- '"speed 100" in result.commands'
- '"mtu 512" in result.commands'
- '"mtu 2000" in result.commands'

- name: Change interface parameters
ios_interface:
name: GigabitEthernet0/2
name: "{{ test_interface }}"
description: test-interface-1
speed: 10
duplex: half
mtu: 256
mtu: 1800
state: present
authorize: yes
register: result

- assert:
that:
- 'result.changed == true'
- '"interface GigabitEthernet0/2" in result.commands'
- '"interface {{ test_interface }}" in result.commands'
- '"description test-interface-1" in result.commands'
- '"speed 10" in result.commands'
- '"duplex half" in result.commands'
- '"mtu 256" in result.commands'
- '"mtu 1800" in result.commands'

- name: Disable interface
ios_interface:
name: GigabitEthernet0/2
name: "{{ test_interface }}"
enabled: False
authorize: yes
register: result

- assert:
that:
- 'result.changed == true'
- '"interface GigabitEthernet0/2" in result.commands'
- '"interface {{ test_interface }}" in result.commands'
- '"shutdown" in result.commands'

- name: Enable interface
ios_interface:
name: GigabitEthernet0/2
name: "{{ test_interface }}"
enabled: True
authorize: yes
register: result

- assert:
that:
- 'result.changed == true'
- '"interface GigabitEthernet0/2" in result.commands'
- '"interface {{ test_interface }}" in result.commands'
- '"no shutdown" in result.commands'

- name: Confgure second interface (setup)
ios_interface:
name: GigabitEthernet0/1
name: "{{ test_interface2 }}"
description: test-interface-initial
speed: 100
duplex: half
mtu: 516
speed: 1000
mtu: 1800
state: present
authorize: yes
register: result

- name: Add interface aggregate
ios_interface:
aggregate:
- { name: GigabitEthernet0/1, mtu: 256, description: test-interface-1 }
- { name: GigabitEthernet0/2, mtu: 516, description: test-interface-2 }
duplex: full
speed: 100
- { name: "{{ test_interface }}", mtu: 2000, description: test-interface-1 }
- { name: "{{ test_interface2 }}", mtu: 2000, description: test-interface-2 }
speed: 1000
state: present
authorize: yes
register: result

- assert:
that:
- 'result.changed == true'
- '"interface GigabitEthernet0/1" in result.commands'
- '"speed 100" in result.commands'
- '"description test-interface-1" in result.commands'
- '"duplex full" in result.commands'
- '"mtu 256" in result.commands'
- '"interface GigabitEthernet0/2" in result.commands'
- '"speed 100" in result.commands'
- '"interface {{ test_interface }}" in result.commands'
- '"mtu 2000" in result.commands'
- '"interface {{ test_interface2 }}" in result.commands'
- '"description test-interface-2" in result.commands'
- '"duplex full" in result.commands'
- '"mtu 516" in result.commands'
- '"mtu 2000" in result.commands'

- name: Add interface aggregate (idempotent)
ios_interface:
aggregate:
- { name: GigabitEthernet0/1, mtu: 256, description: test-interface-1 }
- { name: GigabitEthernet0/2, mtu: 516, description: test-interface-2 }
duplex: full
speed: 100
- { name: "{{ test_interface }}", mtu: 2000, description: test-interface-1 }
- { name: "{{ test_interface2 }}", mtu: 2000, description: test-interface-2 }
speed: 1000
state: present
authorize: yes
register: result
Expand All @@ -156,8 +174,8 @@
- name: Disable interface aggregate
ios_interface:
aggregate:
- name: GigabitEthernet0/1
- name: GigabitEthernet0/2
- { name: "{{ test_interface }}" }
- { name: "{{ test_interface2 }}" }
enabled: False
state: present
authorize: yes
Expand All @@ -166,16 +184,16 @@
- assert:
that:
- 'result.changed == true'
- '"interface GigabitEthernet0/1" in result.commands'
- '"interface {{ test_interface }}" in result.commands'
- '"shutdown" in result.commands'
- '"interface GigabitEthernet0/2" in result.commands'
- '"interface {{ test_interface2 }}" in result.commands'
- '"shutdown" in result.commands'

- name: Enable interface aggregate
ios_interface:
aggregate:
- name: GigabitEthernet0/1
- name: GigabitEthernet0/2
- { name: "{{ test_interface }}" }
- { name: "{{ test_interface2 }}" }
enabled: True
state: present
authorize: yes
Expand All @@ -184,9 +202,9 @@
- assert:
that:
- 'result.changed == true'
- '"interface GigabitEthernet0/1" in result.commands'
- '"interface {{ test_interface }}" in result.commands'
- '"no shutdown" in result.commands'
- '"interface GigabitEthernet0/2" in result.commands'
- '"interface {{ test_interface2 }}" in result.commands'
- '"no shutdown" in result.commands'

- name: loopback interface setup
Expand Down