Skip to content

Commit 1e7d042

Browse files
rwcrowerocrowe
andauthored
feat(model): introduce model module for IOS-XR configuration (#98)
Co-authored-by: rocrowe <[email protected]>
1 parent a74703b commit 1e7d042

File tree

17 files changed

+892
-213
lines changed

17 files changed

+892
-213
lines changed

.pre-commit-config.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,11 @@ repos:
1111
- repo: https://github.com/terraform-docs/terraform-docs
1212
rev: v0.20.0
1313
hooks:
14+
- id: terraform-docs-system
15+
args: ["./modules/model"]
16+
- id: terraform-docs-system
17+
args: ["./modules/model/examples/model_file"]
1418
- id: terraform-docs-system
1519
args: ["./examples/system"]
1620
- id: terraform-docs-system
1721
args: ["."]
18-

README.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,14 +40,16 @@ module "iosxr" {
4040
|------|---------|
4141
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.8.0 |
4242
| <a name="requirement_iosxr"></a> [iosxr](#requirement\_iosxr) | >= 0.6.0 |
43-
| <a name="requirement_local"></a> [local](#requirement\_local) | >= 2.3.0 |
44-
| <a name="requirement_utils"></a> [utils](#requirement\_utils) | >= 0.2.6 |
43+
| <a name="requirement_utils"></a> [utils](#requirement\_utils) | = 1.1.0-beta3 |
4544
## Inputs
4645

4746
| Name | Description | Type | Default | Required |
4847
|------|-------------|------|---------|:--------:|
48+
| <a name="input_managed_device_groups"></a> [managed\_device\_groups](#input\_managed\_device\_groups) | List of device group names to be managed. By default all device groups will be managed. | `list(string)` | `[]` | no |
49+
| <a name="input_managed_devices"></a> [managed\_devices](#input\_managed\_devices) | List of device names to be managed. By default all devices will be managed. | `list(string)` | `[]` | no |
4950
| <a name="input_model"></a> [model](#input\_model) | As an alternative to YAML files, a native Terraform data structure can be provided as well. | `map(any)` | `{}` | no |
5051
| <a name="input_write_default_values_file"></a> [write\_default\_values\_file](#input\_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 |
52+
| <a name="input_write_model_file"></a> [write\_model\_file](#input\_write\_model\_file) | Write the full model including all resolved templates to a single YAML file. Value is a path pointing to the file to be created. | `string` | `""` | no |
5153
| <a name="input_yaml_directories"></a> [yaml\_directories](#input\_yaml\_directories) | List of paths to YAML directories. | `list(string)` | `[]` | no |
5254
| <a name="input_yaml_files"></a> [yaml\_files](#input\_yaml\_files) | List of paths to YAML files. | `list(string)` | `[]` | no |
5355
## Outputs
@@ -114,9 +116,9 @@ module "iosxr" {
114116
| [iosxr_ssh.ssh](https://registry.terraform.io/providers/CiscoDevNet/iosxr/latest/docs/resources/ssh) | resource |
115117
| [iosxr_tag_set.tag_set](https://registry.terraform.io/providers/CiscoDevNet/iosxr/latest/docs/resources/tag_set) | resource |
116118
| [iosxr_telnet.telnet](https://registry.terraform.io/providers/CiscoDevNet/iosxr/latest/docs/resources/telnet) | resource |
117-
| [local_sensitive_file.defaults](https://registry.terraform.io/providers/hashicorp/local/latest/docs/resources/sensitive_file) | resource |
118-
| [terraform_data.validation](https://registry.terraform.io/providers/hashicorp/terraform/latest/docs/resources/data) | resource |
119119
## Modules
120120

121-
No modules.
121+
| Name | Source | Version |
122+
|------|--------|---------|
123+
| <a name="module_model"></a> [model](#module\_model) | ./modules/model | n/a |
122124
<!-- END_TF_DOCS -->

iosxr_interface.tf

Lines changed: 129 additions & 132 deletions
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)