https://github.com/netascode/terraform-nxos-vrf
Terraform Cisco NX-OS VRF Module
https://github.com/netascode/terraform-nxos-vrf
cisco nx-os nxos terraform terraform-module
Last synced: 3 months ago
JSON representation
Terraform Cisco NX-OS VRF Module
- Host: GitHub
- URL: https://github.com/netascode/terraform-nxos-vrf
- Owner: netascode
- License: apache-2.0
- Created: 2022-04-07T12:26:04.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2024-02-10T12:04:25.000Z (over 1 year ago)
- Last Synced: 2025-01-14T14:14:06.957Z (4 months ago)
- Topics: cisco, nx-os, nxos, terraform, terraform-module
- Language: HCL
- Homepage: https://registry.terraform.io/modules/netascode/vrf/nxos
- Size: 42 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://github.com/netascode/terraform-nxos-vrf/actions/workflows/test.yml)
# Terraform NX-OS VRF Module
Manages NX-OS VRF
Model Documentation: [Link](https://developer.cisco.com/docs/cisco-nexus-3000-and-9000-series-nx-api-rest-sdk-user-guide-and-api-reference-release-9-3x/#!configuring-vrfs)
## Examples
```hcl
module "nxos_vrf" {
source = "netascode/vrf/nxos"
version = ">= 0.2.0"name = "VRF1"
description = "My Description"
vni = 16777210
route_distinguisher = "1.1.1.1:1"
address_families = [
{
address_family = "ipv4_unicast"
route_target_both_auto = true
route_target_both_auto_evpn = true
route_target_import = ["1.1.1.1:1", "65535:1", "65536:123"]
route_target_export = ["1.1.1.1:1", "65535:1", "65536:123"]
route_target_import_evpn = ["2.2.2.2:2", "65000:1", "100000:123"]
route_target_export_evpn = ["2.2.2.2:2", "65000:1", "100000:123"]
},
{
address_family = "ipv6_unicast"
}
]
}
```## Requirements
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.3.0 |
| [nxos](#requirement\_nxos) | >= 0.5.0 |## Providers
| Name | Version |
|------|---------|
| [nxos](#provider\_nxos) | >= 0.5.0 |## Inputs
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [device](#input\_device) | A device name from the provider configuration. | `string` | `null` | no |
| [name](#input\_name) | VRF Name. | `string` | n/a | yes |
| [description](#input\_description) | VRF description. | `string` | `""` | no |
| [vni](#input\_vni) | VRF Virtual Network Identifier. | `number` | `null` | no |
| [route\_distinguisher](#input\_route\_distinguisher) | VRF Route Distinguisher. Allowed formats: `auto`, `1.1.1.1:1`, `65535:1`. | `string` | `null` | no |
| [address\_families](#input\_address\_families) | VRF Address Families List.
Choices `address_family`: `ipv4_unicast`, `ipv6_unicast`.
Allowed formats `route_target_import`: `auto`, `1.1.1.1:1`, `65535:1`."
Allowed formats `route_target_export`: `auto`, `1.1.1.1:1`, `65535:1`."
Allowed formats `route_target_import_evpn`: `auto`, `1.1.1.1:1`, `65535:1`."
Allowed formats `route_target_export_evpn`: `auto`, `1.1.1.1:1`, `65535:1`." |list(object({| `[]` | no |
address_family = string
route_target_both_auto = optional(bool, false)
route_target_both_auto_evpn = optional(bool, false)
route_target_import = optional(list(string), [])
route_target_export = optional(list(string), [])
route_target_import_evpn = optional(list(string), [])
route_target_export_evpn = optional(list(string), [])
}))## Outputs
| Name | Description |
|------|-------------|
| [dn](#output\_dn) | Distinguished name of the object. |
| [name](#output\_name) | VRF name. |## Resources
| Name | Type |
|------|------|
| [nxos_ipv4_vrf.ipv4Dom](https://registry.terraform.io/providers/CiscoDevNet/nxos/latest/docs/resources/ipv4_vrf) | resource |
| [nxos_vrf.l3Inst](https://registry.terraform.io/providers/CiscoDevNet/nxos/latest/docs/resources/vrf) | resource |
| [nxos_vrf_address_family.rtctrlDomAf](https://registry.terraform.io/providers/CiscoDevNet/nxos/latest/docs/resources/vrf_address_family) | resource |
| [nxos_vrf_route_target.rtctrlRttEntry](https://registry.terraform.io/providers/CiscoDevNet/nxos/latest/docs/resources/vrf_route_target) | resource |
| [nxos_vrf_route_target_address_family.rtctrlAfCtrl](https://registry.terraform.io/providers/CiscoDevNet/nxos/latest/docs/resources/vrf_route_target_address_family) | resource |
| [nxos_vrf_route_target_direction.rtctrlRttP](https://registry.terraform.io/providers/CiscoDevNet/nxos/latest/docs/resources/vrf_route_target_direction) | resource |
| [nxos_vrf_routing.rtctrlDom](https://registry.terraform.io/providers/CiscoDevNet/nxos/latest/docs/resources/vrf_routing) | resource |