Add support for route-map and prefix-lists
mobig opened this issue · 7 comments
I noticed that there are no Route-Map and Prefix-List resources in the provider. I think it would be awesome if we could get those added. They're pretty important for network configuration, and it would be a huge help to have them available in Provider.
adding the ability to assign the prefix list or route-map to bgp neighbors would also be helpful
any chance for this?
Which kind of "Set" action are you planing to use ?
i would imagine it should have parity with the IOSXE provider.
resource "iosxe_route_map" "example" {
name = "RM1"
entries = [
{
seq = 10
operation = "permit"
description = "Entry 10"
continue = false
match_interfaces = ["GigabitEthernet1"]
match_ip_address_access_lists = ["ACL1"]
match_ip_next_hop_access_lists = ["ACL1"]
match_ipv6_address_access_lists = "ACL1"
match_ipv6_next_hop_access_lists = "ACL1"
match_route_type_external = true
match_route_type_external_type_1 = true
match_route_type_external_type_2 = true
match_route_type_internal = true
match_route_type_level_1 = true
match_route_type_level_2 = true
match_route_type_local = true
match_source_protocol_bgp = ["65000"]
match_source_protocol_connected = true
match_source_protocol_eigrp = ["10"]
match_source_protocol_isis = true
match_source_protocol_lisp = true
match_source_protocol_ospf = ["10"]
match_source_protocol_ospfv3 = ["10"]
match_source_protocol_rip = true
match_source_protocol_static = true
match_tags = [100]
match_track = 1
match_as_paths = [10]
match_community_lists = ["COMM1"]
match_community_list_exact_match = true
match_extcommunity_lists = ["EXTCOMM1"]
match_local_preferences = [100]
set_default_interfaces = ["GigabitEthernet1"]
set_global = false
set_interfaces = ["GigabitEthernet1"]
set_ip_address = "PFL1"
set_ip_default_global_next_hop_address = ["1.2.3.4"]
set_ip_default_next_hop_address = ["1.2.3.4"]
set_ip_global_next_hop_address = ["1.2.3.4"]
set_ip_next_hop_address = ["1.2.3.4"]
set_ip_qos_group = 1
set_ipv6_address = "PFL2"
set_ipv6_default_global_next_hop = "2001::1"
set_ipv6_default_next_hop = ["2001::1"]
set_ipv6_next_hop = ["2001::1"]
set_level_1 = true
set_metric_value = 110
set_metric_delay = "10"
set_metric_reliability = 90
set_metric_loading = 10
set_metric_mtu = 1500
set_metric_type = "external"
set_tag = 100
set_as_path_prepend_as = "65001 65001"
set_as_path_prepend_last_as = 5
set_as_path_tag = true
set_communities = ["1:2"]
set_communities_additive = true
set_community_list_delete = true
set_community_list_name = "COMML1"
set_extcomunity_rt = ["10:10"]
set_extcomunity_soo = "10:10"
set_extcomunity_vpn_distinguisher = "10:10"
set_extcomunity_vpn_distinguisher_additive = true
set_local_preference = 110
set_weight = 10000
however, we really on use it to set communities and match prefix lists for bgp neighbors
@danischm based on the IOXE and NXOS generator schema files, it look like the IOXE provider supports nested attributed values while the NXOS doesn't. Is this a limitation of the DME/NXAPI compared to the YANG/RESTCONF?
For now I will create a dedicated resource per MO in the NXO providers, which basically means that each Set/Match actions will be an independent resource. What are your thoughts?
Yes, the NXOS provider only supports a single object per resource (when we want to auto-generate the code). Though we can then build a single route-map module that combines all the resources.
I see that you updated the code in the repo. I wanted to ask when you plan on having the documentation on the terraform site as well as when you’ll publish a new release to the terraform registry. I suppose I could compile it myself, but I’m not even sure at this point if it’s done yet. Thank you again for your support.
Resources have been added in v0.3.23.