ansible/test/units/modules/network/nxos
Chris Van Heuveln 0868fec8bd nxos_vpc: pkl_vrf fixes for #57069 (#57370)
* nxos_vpc: pkl_vrf fixes for #57069

Fixes #57069

- Symptom: When playbooks specify `pkl_vrf: default`, the result is that the cli does not set the `vrf` state.

- Analysis:
 - First issue: 'default' is a reserved word when used with the `peer-keepalive` `vrf` keyword. It refers to the default rib.
   - This is confusing in several ways because `peer-keepalive`'s *default* vrf is the `management` vrf.

 - Second issue: When changing only one optional value (`pkl_vrf`) while other optional values are idempotent (`pkl_src`), the result is that the idempotent values are ignored; unfortunately the device cli *replaces* the entire command, in which case the idempotent values are removed.
   - e.g. playbook specifies this:
     ```
     { pkl_dest: 10.1.1.1, pkl_src: 10.2.2.2, pkl_vrf: my_vrf }
     ```

     ```
     peer-keepalive dest 10.1.1.1 src 10.2.2.2             # original

     peer-keepalive dest 10.1.1.1 src 10.2.2.2 vrf my_vrf  # intended result

     peer-keepalive dest 10.1.1.1 vrf my_vrf               # actual result
     ```

 - Third issue: the `pkl` getter was relying on positional data. This broke when the `udp` keyword nvgen'd where `vrf` used to appear (shifting all keywords to the right).

- Tested on regression platforms: `N3K,N6k,N7K,N9K,N3K-F,N9K-F`

* PEP fixes

* PEP fix 2

* pkl should merge by default, not override

* rmv debugs

* add mike's tests

* fix comments
2019-06-28 16:18:46 +05:30
..
fixtures nxos_vpc: pkl_vrf fixes for #57069 (#57370) 2019-06-28 16:18:46 +05:30
__init__.py
nxos_module.py Update bare exceptions to specify Exception. 2018-12-16 15:03:19 -08:00
test_nxos_acl.py
test_nxos_acl_interface.py
test_nxos_banner.py
test_nxos_bfd_global.py nxos_bfd_global / NxosCmdRef initial commit (#56317) 2019-06-06 15:52:55 +05:30
test_nxos_bgp.py
test_nxos_bgp_af.py Move utility functions out of basic.py (#51715) 2019-03-14 21:29:55 -04:00
test_nxos_bgp_neighbor.py nxos_bgp_neighbor: Add bfd support (#56932) 2019-06-19 21:23:00 +05:30
test_nxos_bgp_neighbor_af.py
test_nxos_command.py Revert nxos, ios, iosxr return_timestamps (#56206) 2019-05-08 20:49:29 +05:30
test_nxos_config.py Fix 'defaults' option in the nxos_config module (#51076) 2019-01-23 11:29:27 +05:30
test_nxos_evpn_global.py
test_nxos_evpn_vni.py
test_nxos_feature.py
test_nxos_hsrp.py
test_nxos_interface.py
test_nxos_interface_ospf.py nxos_interface_ospf: Add bfd support (#56807) 2019-06-07 09:58:29 +05:30
test_nxos_l3_interface.py Add support for multiple IPv6 addresses in nxos_l3_interface module (#50892) 2019-03-27 10:52:42 -04:00
test_nxos_nxapi.py
test_nxos_ospf.py
test_nxos_ospf_vrf.py nxos_ospf_vrf: Add 'bfd' support (#57425) 2019-06-19 21:22:32 +05:30
test_nxos_overlay_global.py
test_nxos_pim.py nxos_pim: Add bfd support (#56908) 2019-06-19 21:22:03 +05:30
test_nxos_pim_interface.py
test_nxos_pim_interface_bfd.py nxos_pim_interface: Add 'bfd' support (#57133) 2019-06-12 09:47:41 +05:30
test_nxos_pim_rp_address.py
test_nxos_static_route.py
test_nxos_system.py
test_nxos_vlan.py nxos_vlan: fix broken purge behavior (issue #57101) (#57229) 2019-06-04 09:14:09 +05:30
test_nxos_vpc.py nxos_vpc: pkl_vrf fixes for #57069 (#57370) 2019-06-28 16:18:46 +05:30
test_nxos_vpc_interface.py
test_nxos_vrf.py
test_nxos_vrf_af.py Remove deprecated options from modules (#50246) 2019-01-22 09:18:26 -05:00
test_nxos_vxlan_vtep.py
test_nxos_vxlan_vtep_vni.py