Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -48,3 +48,7 @@
STP_BRIDGE_PRIORITY: {{ vxlan.global.ibgp.spanning_tree.bridge_priority | default(defaults.vxlan.global.ibgp.spanning_tree.bridge_priority) }}
{% endif %}
{% endif %}
POWER_REDUNDANCY_MODE: {{ vxlan.global.ibgp.power_redundancy | default(defaults.vxlan.global.ibgp.power_redundancy) }}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do these also need to be considered for other fabric types?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Power could be also in External, ISN or eBGP, but currently only updated for VxLAN_EVPN

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's enable this in the other fabric types where applicable

COPP_POLICY: {{ vxlan.global.ibgp.copp_policy | default(defaults.vxlan.global.ibgp.copp_policy) }}
HD_TIME: {{ vxlan.global.ibgp.vtep_holddown_time | default(defaults.vxlan.global.ibgp.vtep_holddown_time) }}
ENABLE_NGOAM: {{ vxlan.global.ibgp.enable_ngoam | default(defaults.vxlan.global.ibgp.enable_ngoam) }}
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,7 @@
LINK_STATE_ROUTING: {{ vxlan.underlay.general.routing_protocol | default(defaults.vxlan.underlay.general.routing_protocol) }}
RR_COUNT: {{ vxlan.global.ibgp.route_reflectors | default(defaults.vxlan.global.ibgp.route_reflectors) }}
ANYCAST_GW_MAC: {{ vxlan.global.ibgp.anycast_gateway_mac | default(defaults.vxlan.global.ibgp.anycast_gateway_mac) }}
{% if (ndfc_features | selectattr('name', 'equalto', 'Performance Monitoring') | selectattr('admin_state', 'equalto', 'enabled') | list | length > 0) %}
PM_ENABLE: {{ vxlan.global.ibgp.performance_monitoring | default(defaults.vxlan.global.ibgp.performance_monitoring) | ansible.builtin.bool }}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we enable this, are there other aspects of programmable reports we need to consider here? What exactly is the use case here for enabling this?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The goal is only to enable the option based on feature status at ND level. The next part report, etc will be manual.

{% endif %}
{# #}
Original file line number Diff line number Diff line change
Expand Up @@ -76,3 +76,4 @@
{% set l3_vlan_range = defaults.vxlan.global.ibgp.layer3_vlan_range.from ~ '-' ~ defaults.vxlan.global.ibgp.layer3_vlan_range.to %}
{% endif %}
VRF_VLAN_RANGE: {{ l3_vlan_range }}
SUBINTERFACE_RANGE: {{ vxlan.global.ibgp.sub_int_range | default(defaults.vxlan.global.ibgp.sub_int_range) }}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same question here about other fabric types

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

also available on external and ISN, with eBGP I think it's also present in General instead of resources

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's enable this in the other fabric types where applicable

14 changes: 14 additions & 0 deletions roles/dtc/connectivity_check/tasks/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,3 +62,17 @@
ansible.builtin.set_fact:
ndfc_version: "{{ ndfc_version.response.DATA.version }}"
tags: "{{ nac_tags.connectivity_check }}" # Tags defined in roles/common_global/vars/main.yml

- name: Get Cisco Nexus Dashboard Fabric Controller Features
cisco.dcnm.dcnm_rest:
method: GET
path: /appcenter/cisco/ndfc/api/v1/fm/features
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we need to move this into an action plugin because we very likely need to handle multiple versions of ND. Not sure if this will work in it's current for for ND4.1 but we need to very that.

register: ndfc_features
tags: "{{ nac_tags.connectivity_check }}" # Tags defined in roles/common_global/vars/main.yml

- name: Set Cisco Nexus Dashboard Fabric Controller Features Var
ansible.builtin.set_fact:
ndfc_features: "{{ features_dict | dict2items | json_query('[*].value.{name: name, admin_state: admin_state}') }}"
vars:
features_dict: "{{ ndfc_features.response.DATA.data.features }}"
tags: "{{ nac_tags.connectivity_check }}" # Tags defined in roles/common_global/vars/main.yml
6 changes: 6 additions & 0 deletions roles/validate/files/defaults.yml
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,12 @@ factory_defaults:
enable_local_dhcp_server: false
enable_cdp_mgmt: false
tcam_allocation: true
performance_monitoring: false
power_redundancy: ps-redundant
copp_policy: strict
vtep_holddown_time: 180
enable_ngoam: true
sub_int_range: 2-511
external:
auth_proto: MD5
enable_nxapi_http: false
Expand Down