A Terraform module to configure Cisco IOS-XR devices.
This module supports an inventory driven approach, where a complete IOS-XR configuration or parts of it are either modeled in one or more YAML files or natively using Terraform variables.
Configuring an IOS-XR hostname configuration using YAML:
iosxr:
  devices:
    - name: router-1
      host: 1.2.3.4
      configuration:
        hostname: router-1
module "iosxr" {
  source  = "netascode/nac-iosxr/iosxr"
  version = ">= 0.1.0"
  yaml_files = ["system.nac.yaml"]
}| Name | Version | 
|---|---|
| terraform | >= 1.8.0 | 
| iosxr | >= 0.6.0 | 
| local | >= 2.3.0 | 
| utils | >= 0.2.6 | 
| Name | Description | Type | Default | Required | 
|---|---|---|---|---|
| model | As an alternative to YAML files, a native Terraform data structure can be provided as well. | map(any) | {} | no | 
| write_default_values_file | Write all default values to a YAML file. Value is a path pointing to the file to be created. | string | "" | no | 
| yaml_directories | List of paths to YAML directories. | list(string) | [] | no | 
| yaml_files | List of paths to YAML files. | list(string) | [] | no | 
| Name | Description | 
|---|---|
| default_values | All default values. | 
| model | Full model. | 
No modules.