aci_switch_policy_vpc_protection_group: Fix idempotency (#45091)
This commit is contained in:
parent
aeac8fe141
commit
6faf400621
3 changed files with 11 additions and 13 deletions
|
@ -808,11 +808,15 @@ class ACIModule(object):
|
|||
proposed_config = proposed_child[key]['attributes']
|
||||
existing_config = None
|
||||
|
||||
# FIXME: Design causes issues for repeated child_classes
|
||||
# get existing dictionary from the list of existing to use for comparison
|
||||
for child in existing_children:
|
||||
if child.get(child_class):
|
||||
existing_config = child[key]['attributes']
|
||||
break
|
||||
# NOTE: This is an ugly fix
|
||||
# Return the one that is a subset match
|
||||
if set(proposed_config.items()).issubset(set(existing_config.items())):
|
||||
break
|
||||
|
||||
return child_class, proposed_config, existing_config
|
||||
|
||||
|
|
|
@ -255,14 +255,12 @@ def main():
|
|||
class_config=dict(
|
||||
name=protection_group,
|
||||
id=protection_group_id,
|
||||
rn='expgep-{0}'.format(protection_group),
|
||||
),
|
||||
child_configs=[
|
||||
dict(
|
||||
fabricNodePEp=dict(
|
||||
attributes=dict(
|
||||
id='{0}'.format(switch_1_id),
|
||||
rn='nodepep-{0}'.format(switch_1_id),
|
||||
),
|
||||
),
|
||||
),
|
||||
|
@ -270,7 +268,6 @@ def main():
|
|||
fabricNodePEp=dict(
|
||||
attributes=dict(
|
||||
id='{0}'.format(switch_2_id),
|
||||
rn='nodepep-{0}'.format(switch_2_id),
|
||||
),
|
||||
),
|
||||
),
|
||||
|
|
|
@ -58,9 +58,8 @@
|
|||
that:
|
||||
- cm_add_vpc_prot_grp is changed
|
||||
- nm_add_vpc_prot_grp is changed
|
||||
# FIXME: Not idempotent !
|
||||
#- cm_add_vpc_prot_grp_again is not changed
|
||||
#- nm_add_vpc_prot_grp_again is not changed
|
||||
- cm_add_vpc_prot_grp_again is not changed
|
||||
- nm_add_vpc_prot_grp_again is not changed
|
||||
|
||||
|
||||
# CHANGE VPC PROTECTION GROUP
|
||||
|
@ -95,9 +94,8 @@
|
|||
that:
|
||||
- cm_add_vpc_prot_grp_pol is changed
|
||||
- nm_add_vpc_prot_grp_pol is changed
|
||||
# FIXME: Not idempotent !!
|
||||
#- cm_add_vpc_prot_grp_pol_again is not changed
|
||||
#- nm_add_vpc_prot_grp_pol_again is not changed
|
||||
- cm_add_vpc_prot_grp_pol_again is not changed
|
||||
- nm_add_vpc_prot_grp_pol_again is not changed
|
||||
|
||||
|
||||
# ADD FABRIC NODE AGAIN
|
||||
|
@ -113,9 +111,8 @@
|
|||
- name: Verify add_vpc_prot_grp_again_no_pol
|
||||
assert:
|
||||
that:
|
||||
# FIXME: Not idempoten !!
|
||||
#- cm_add_vpc_prot_grp_again_no_pol is not changed
|
||||
#- nm_add_vpc_prot_grp_again_no_pol is not changed
|
||||
- cm_add_vpc_prot_grp_again_no_pol is not changed
|
||||
- nm_add_vpc_prot_grp_again_no_pol is not changed
|
||||
|
||||
|
||||
# QUERY ALL VPC PROTECTION GROUPS
|
||||
|
|
Loading…
Reference in a new issue