You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ansible/test/units
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
7 years ago
..
cli Restore ansible --version output (#55728) 7 years ago
compat Move unit test compat code out of `lib/ansible/`. (#46996) 7 years ago
config Fix encoding issues with file paths. (#50830) 7 years ago
contrib Fix vmware_inventory unit tests so they run. 7 years ago
errors Add better error when k=v syntax is used with YAML in tasks (#41754) 7 years ago
executor Support using importlib on py>=3 to avoid imp deprecation (#54883) 7 years ago
inventory_test_data/group_vars Merge branch 'v2_final' into devel_switch_v2 11 years ago
mock Move unit test compat code out of `lib/ansible/`. (#46996) 7 years ago
module_utils kubevirt: more unit tests (#57739) 7 years ago
modules nxos_vpc: pkl_vrf fixes for #57069 (#57370) 7 years ago
parsing lib/ansible/parsing/ajson.py: added UNIT-tests (#56398) 7 years ago
playbook Restore ansible --version output (#55728) 7 years ago
plugins Fix ios test for python2 non-ascii paths 7 years ago
regex Add toggle to control invalid character substitution in group names (#52748) 7 years ago
template Add back _contains_vars method as maybe_template (#58290) 7 years ago
utils kubevirt: more unit tests (#57739) 7 years ago
vars Fix inventory cache interface (#50446) 7 years ago
__init__.py Add empty-init code-smell script. (#18406) 9 years ago
ansible.cfg Fix ansible-test config management. 8 years ago
conftest.py Update handling of the non_local test alias. 7 years ago
test_constants.py 1st part of ansible config, adds ansible-config to view/manage configs (#12797) 9 years ago
test_context.py Save the command line arguments into a global context 7 years ago