1---
2- debug:
3    msg: "Start nxos_lacp merged integration tests connection={{ ansible_connection }}"
4
5- name: Enable lacp
6  nxos_feature:
7    feature: lacp
8
9- set_fact:
10    mac:
11      address: 00c1.4c00.bd15
12      role: primary
13  when: platform is search('N9K') and imagetag is not search('I[2-6]')
14
15- block:
16  - name: Merged
17    nxos_lacp: &merged
18      config:
19        system:
20          priority: 11
21          mac: "{{ mac|default(omit) }}"
22      state: merged
23    register: result
24
25  - assert:
26      that:
27        - "result.before|length == 0"
28        - "result.changed == true"
29        - "'lacp system-priority 11' in result.commands"
30        - "'lacp system-mac 00c1.4c00.bd15 role primary' in result.commands"
31        - "result.commands|length == 2"
32    when: platform is search('N9K') and imagetag is not search('I[2-6]')
33
34  - assert:
35      that:
36        - "result.before|length == 0"
37        - "result.changed == true"
38        - "'lacp system-priority 11' in result.commands"
39        - "result.commands|length == 1"
40    when: platform is not search('N9K')
41
42  - name: Gather lacp facts
43    nxos_facts:
44      gather_subset:
45        - '!all'
46        - '!min'
47      gather_network_resources: lacp
48
49  - assert:
50      that:
51        - "ansible_facts.network_resources.lacp == result.after"
52
53  - name: Idempotence - Merged
54    nxos_lacp: *merged
55    register: result
56
57  - assert:
58      that:
59        - "result.changed == false"
60        - "result.commands|length == 0"
61
62  always:
63  - name: teardown
64    nxos_feature:
65      feature: lacp
66      state: disabled
67