From bc334f042bde858b7e2379d11e40301293d0e1a0 Mon Sep 17 00:00:00 2001 From: danischm Date: Thu, 25 Jan 2024 09:56:05 +0100 Subject: [PATCH] Add apic include option to port tracking --- CHANGELOG.md | 1 + aci_fabric_policies.tf | 9 +++++---- modules/terraform-aci-port-tracking/README.md | 1 + modules/terraform-aci-port-tracking/main.tf | 7 ++++--- modules/terraform-aci-port-tracking/variables.tf | 5 +++++ 5 files changed, 16 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8b353b48..b0b5b7f1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,7 @@ ## 0.8.1 (unreleased) - Make L3 PBR destination MAC optional +- Add `apic_include` option to `port_tracking` configuration ## 0.8.0 diff --git a/aci_fabric_policies.tf b/aci_fabric_policies.tf index 8181e861..9817079b 100644 --- a/aci_fabric_policies.tf +++ b/aci_fabric_policies.tf @@ -59,10 +59,11 @@ module "aci_fabric_wide_settings" { module "aci_port_tracking" { source = "./modules/terraform-aci-port-tracking" - count = local.modules.aci_port_tracking == true && var.manage_fabric_policies ? 1 : 0 - admin_state = try(local.fabric_policies.port_tracking.admin_state, local.defaults.apic.fabric_policies.port_tracking.admin_state) - delay = try(local.fabric_policies.port_tracking.delay, local.defaults.apic.fabric_policies.port_tracking.delay) - min_links = try(local.fabric_policies.port_tracking.min_links, local.defaults.apic.fabric_policies.port_tracking.min_links) + count = local.modules.aci_port_tracking == true && var.manage_fabric_policies ? 1 : 0 + admin_state = try(local.fabric_policies.port_tracking.admin_state, local.defaults.apic.fabric_policies.port_tracking.admin_state) + delay = try(local.fabric_policies.port_tracking.delay, local.defaults.apic.fabric_policies.port_tracking.delay) + min_links = try(local.fabric_policies.port_tracking.min_links, local.defaults.apic.fabric_policies.port_tracking.min_links) + apic_include = try(local.fabric_policies.port_tracking.apic_include, null) } module "aci_ptp" { diff --git a/modules/terraform-aci-port-tracking/README.md b/modules/terraform-aci-port-tracking/README.md index fb89b881..54e974b1 100644 --- a/modules/terraform-aci-port-tracking/README.md +++ b/modules/terraform-aci-port-tracking/README.md @@ -39,6 +39,7 @@ module "aci_port_tracking" { | [admin\_state](#input\_admin\_state) | Admin state. | `bool` | `false` | no | | [delay](#input\_delay) | Delay. Minimum value: 1. Maximum value: 300. | `number` | `120` | no | | [min\_links](#input\_min\_links) | Minimum links. Minimum value: 0. Maximum value: 48. | `number` | `0` | no | +| [include\_apic](#input\_include\_apic) | Include APIC ports. | `bool` | `null` | no | ## Outputs diff --git a/modules/terraform-aci-port-tracking/main.tf b/modules/terraform-aci-port-tracking/main.tf index f10d418e..def9915d 100644 --- a/modules/terraform-aci-port-tracking/main.tf +++ b/modules/terraform-aci-port-tracking/main.tf @@ -2,8 +2,9 @@ resource "aci_rest_managed" "infraPortTrackPol" { dn = "uni/infra/trackEqptFabP-default" class_name = "infraPortTrackPol" content = { - adminSt = var.admin_state == true ? "on" : "off" - delay = var.delay - minlinks = var.min_links + adminSt = var.admin_state == true ? "on" : "off" + delay = var.delay + minlinks = var.min_links + includeApicPorts = var.include_apic == true ? "yes" : (var.include_apic == false ? "no" : null) } } diff --git a/modules/terraform-aci-port-tracking/variables.tf b/modules/terraform-aci-port-tracking/variables.tf index 905ee358..c633ebdb 100644 --- a/modules/terraform-aci-port-tracking/variables.tf +++ b/modules/terraform-aci-port-tracking/variables.tf @@ -26,3 +26,8 @@ variable "min_links" { } } +variable "include_apic" { + description = "Include APIC ports." + type = bool + default = null +}