summaryrefslogtreecommitdiff
path: root/test/integration/targets/nxos_udld_interface/tests/common/sanity.yaml
blob: 18893cba8aad6fc4bd720af680864b1ef9f42d1e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
---
- debug: msg="START connection={{ ansible_connection }} nxos_udld_interface sanity test"

- set_fact: udld_run="true"
- set_fact: udld_enable="true"
- set_fact: udld_run="false"
  when: ((platform is search('N9K-F')) and (imagetag and (imagetag is version_compare('F3', 'lt'))))
- set_fact: udld_run="false"
  when: titanium
- set_fact: udld_enable="false"
  when: imagetag and (imagetag is version_compare('N1', 'eq'))

# Select interface for test
- set_fact: intname="{{ nxos_int1 }}"

- block:
  - name: "Enable feature udld"
    nxos_feature: 
      feature: udld
      state: enabled

  - name: "put the interface into default state"
    nxos_config: 
      commands:
        - "default interface {{intname}}"
      match: none

  - name: ensure interface is configured to be in aggressive mode
    nxos_udld_interface: &conf1
      interface: "{{ intname }}"
      mode: aggressive
      state: present
    register: result

  - assert: &true
      that:
        - "result.changed == true"

  - name: "Conf1 Idempotence"
    nxos_udld_interface: *conf1
    register: result

  - assert: &false
      that:
        - "result.changed == false"

  - block:

    - name: ensure interface has mode enabled
      nxos_udld_interface: &conf2
        interface: "{{ intname }}"
        mode: enabled
        state: present
      register: result

    - assert: *true

    - name: "Conf2 Idempotence"
      nxos_udld_interface: *conf2
      register: result

    - assert: *false

    - name: ensure interface has mode aggressive
      nxos_udld_interface: *conf1
      register: result

    - assert: *true

    - name: "Conf1 Idempotence"
      nxos_udld_interface: *conf1
      register: result

    - assert: *false

    - name: ensure interface has mode disabled
      nxos_udld_interface: &conf3
        interface: "{{ intname }}"
        mode: disabled
        state: present
      register: result

    - assert: *true

    - name: "Conf3 Idempotence"
      nxos_udld_interface: *conf3
      register: result

    - assert: *false

    when: udld_enable

  - name: Remove the config
    nxos_udld_interface: &remove
      interface: "{{ intname }}"
      mode: enabled
      state: absent

  when: udld_run

  always:
  - name: "Disable udld"
    nxos_feature: 
      feature: udld
      state: disabled
    ignore_errors: yes

- debug: msg="END connection={{ ansible_connection }} nxos_udld_interface sanity test"