diff --git a/modules/port_channel_appliances/README.md b/modules/port_channel_appliances/README.md index d050d8e..73574f6 100644 --- a/modules/port_channel_appliances/README.md +++ b/modules/port_channel_appliances/README.md @@ -36,25 +36,25 @@ No modules. | Name | Type | |------|------| -| [intersight_fabric_uplink_role.lan_uplink](https://registry.terraform.io/providers/CiscoDevNet/intersight/latest/docs/resources/fabric_uplink_role) | resource | +| [intersight_fabric_appliance_pc_role.port_channel](https://registry.terraform.io/providers/CiscoDevNet/intersight/latest/docs/resources/fabric_appliance_pc_role) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| [breakout\_sw\_port](#input\_breakout\_sw\_port) | Breakout port Identifier of the Switch Interface. When a port is not configured as a breakout port, the aggregatePortId is set to 0, and unused. When a port is configured as a breakout port, the 'aggregatePortId' port number as labeled on the equipment, e.g. the id of the port on the switch. | `number` | `0` | no | -| [fec](#input\_fec) | Forward error correction configuration for the port.
* Auto - Forward error correction option 'Auto'.
* Cl91 - Forward error correction option 'cl91'.
* Cl74 - Forward error correction option 'cl74'. | `string` | `"Auto"` | no | -| [flow\_control\_moid](#input\_flow\_control\_moid) | A reference to a fabricFlowControlPolicy resource. | `set(string)` | `[]` | no | -| [lan\_uplink\_port\_list](#input\_lan\_uplink\_port\_list) | List of Ports to Assign to the LAN Uplink Policy. | `set(string)` |
[
49
]
| no | -| [lan\_uplink\_speed](#input\_lan\_uplink\_speed) | Admin configured speed for the port.
* Auto - Admin configurable speed AUTO ( default ).
* 1Gbps - Admin configurable speed 1Gbps.
* 10Gbps - Admin configurable speed 10Gbps.
* 25Gbps - Admin configurable speed 25Gbps.
* 40Gbps - Admin configurable speed 40Gbps.
* 100Gbps - Admin configurable speed 100Gbps. | `string` | `"Auto"` | no | -| [link\_control\_moid](#input\_link\_control\_moid) | A reference to a fabricLinkControlPolicy resource. | `set(string)` | `[]` | no | +| [admin\_speed](#input\_admin\_speed) | Admin configured speed for the port.
* Auto - Admin configurable speed AUTO ( default ).
* 1Gbps - Admin configurable speed 1Gbps.
* 10Gbps - Admin configurable speed 10Gbps.
* 25Gbps - Admin configurable speed 25Gbps.
* 40Gbps - Admin configurable speed 40Gbps.
* 100Gbps - Admin configurable speed 100Gbps. | `string` | `"Auto"` | no | +| [ethernet\_network\_control\_policy\_moid](#input\_ethernet\_network\_control\_policy\_moid) | A reference to a fabricEthNetworkControlPolicy resource. | `set(string)` | `[]` | no | +| [ethernet\_network\_group\_policy\_moid](#input\_ethernet\_network\_group\_policy\_moid) | A reference to a fabricEthNetworkGroupPolicy resource. | `set(string)` | `[]` | no | +| [interfaces](#input\_interfaces) | List of Ports to Assign to the LAN Port-Channel Policy. |
list(object(
{
breakout_port_id = optional(number)
port_id = number
slot_id = number
}
))
| `[]` | no | +| [mode](#input\_mode) | Port mode to be set on the appliance port.
* access - Access Mode Switch Port Type.
* trunk (default) - Trunk Mode Switch Port Type. | `string` | `"trunk"` | no | +| [pc\_id](#input\_pc\_id) | Unique Identifier of the port-channel, local to this switch. | `number` | `1` | no | | [port\_policy\_moid](#input\_port\_policy\_moid) | A reference to a fabricPortPolicy resource. | `string` | n/a | yes | -| [slot\_id](#input\_slot\_id) | Slot Identifier of the Switch/FEX/Chassis Interface. | `number` | `1` | no | +| [priority](#input\_priority) | The 'name' of the System QoS Class.
* Best Effort - (Default) QoS Priority for Best-effort traffic.
* Bronze - QoS Priority for Bronze traffic.
* FC - QoS Priority for FC traffic.
* Gold - QoS Priority for Gold traffic.
* Platinum - QoS Priority for Platinum traffic.
* Silver - QoS Priority for Silver traffic. | `string` | `"Best Effort"` | no | | [tags](#input\_tags) | List of Tag Attributes to Assign to the Policy. | `list(map(string))` | `[]` | no | ## Outputs | Name | Description | |------|-------------| -| [moid](#output\_moid) | LAN Uplink Policy Managed Object ID (moid). | +| [moid](#output\_moid) | Port-Channel - Appliance Managed Object ID (moid). | diff --git a/modules/port_channel_appliances/main.tf b/modules/port_channel_appliances/main.tf index bf4d7e4..2abb46d 100644 --- a/modules/port_channel_appliances/main.tf +++ b/modules/port_channel_appliances/main.tf @@ -5,11 +5,11 @@ #________________________________________________________________________________________________ resource "intersight_fabric_appliance_pc_role" "port_channel" { - admin_speed = var.admin_speed + admin_speed = var.admin_speed # aggregate_port_id = var.breakout_port_id - mode = var.mode - pc_id = var.pc_id - priority = var.priority + mode = var.mode + pc_id = var.pc_id + priority = var.priority port_policy { moid = var.port_policy_moid } diff --git a/modules/port_channel_appliances/variables.tf b/modules/port_channel_appliances/variables.tf index fdcf309..2a6272c 100644 --- a/modules/port_channel_appliances/variables.tf +++ b/modules/port_channel_appliances/variables.tf @@ -34,9 +34,9 @@ variable "ethernet_network_group_policy_moid" { } variable "interfaces" { - default = [] + default = [] description = "List of Ports to Assign to the LAN Port-Channel Policy." - type = list(object( + type = list(object( { breakout_port_id = optional(number) port_id = number diff --git a/modules/port_channel_ethernet_uplinks/README.md b/modules/port_channel_ethernet_uplinks/README.md index 6b05998..5d49f3e 100644 --- a/modules/port_channel_ethernet_uplinks/README.md +++ b/modules/port_channel_ethernet_uplinks/README.md @@ -42,15 +42,13 @@ No modules. | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| [breakout\_sw\_port](#input\_breakout\_sw\_port) | Breakout port Identifier of the Switch Interface. When a port is not configured as a breakout port, the aggregatePortId is set to 0, and unused. When a port is configured as a breakout port, the 'aggregatePortId' port number as labeled on the equipment, e.g. the id of the port on the switch. | `number` | `0` | no | -| [flow\_control\_moid](#input\_flow\_control\_moid) | A reference to a fabricFlowControlPolicy resource. | `set(string)` | `[]` | no | -| [lan\_uplink\_pc\_id](#input\_lan\_uplink\_pc\_id) | Unique Identifier of the port-channel, local to this switch. | `string` | `49` | no | -| [lan\_uplink\_pc\_ports](#input\_lan\_uplink\_pc\_ports) | List of Ports to Assign to the LAN Port-Channel Policy. | `set(string)` |
[
49,
50
]
| no | -| [lan\_uplink\_speed](#input\_lan\_uplink\_speed) | Admin configured speed for the port.
* Auto - Admin configurable speed Auto.
* 1Gbps - Admin configurable speed 1Gbps.
* 10Gbps - Admin configurable speed 10Gbps.
* 25Gbps - Admin configurable speed 25Gbps.
* 40Gbps - Admin configurable speed 40Gbps.
* 100Gbps - Admin configurable speed 100Gbps. | `string` | `"Auto"` | no | -| [link\_aggregation\_moid](#input\_link\_aggregation\_moid) | A reference to a fabricLinkAggregationPolicy resource. | `set(string)` | `[]` | no | -| [link\_control\_moid](#input\_link\_control\_moid) | A reference to a fabricLinkControlPolicy resource. | `set(string)` | `[]` | no | +| [admin\_speed](#input\_admin\_speed) | Admin configured speed for the port.
* Auto - Admin configurable speed Auto.
* 1Gbps - Admin configurable speed 1Gbps.
* 10Gbps - Admin configurable speed 10Gbps.
* 25Gbps - Admin configurable speed 25Gbps.
* 40Gbps - Admin configurable speed 40Gbps.
* 100Gbps - Admin configurable speed 100Gbps. | `string` | `"Auto"` | no | +| [flow\_control\_policy\_moid](#input\_flow\_control\_policy\_moid) | A reference to a fabricFlowControlPolicy resource. | `set(string)` | `[]` | no | +| [interfaces](#input\_interfaces) | List of Ports to Assign to the LAN Port-Channel Policy. |
list(object(
{
breakout_port_id = optional(number)
port_id = number
slot_id = number
}
))
| `[]` | no | +| [link\_aggregation\_policy\_moid](#input\_link\_aggregation\_policy\_moid) | A reference to a fabricLinkAggregationPolicy resource. | `set(string)` | `[]` | no | +| [link\_control\_policy\_moid](#input\_link\_control\_policy\_moid) | A reference to a fabricLinkControlPolicy resource. | `set(string)` | `[]` | no | +| [pc\_id](#input\_pc\_id) | Unique Identifier of the port-channel, local to this switch. | `string` | `49` | no | | [port\_policy\_moid](#input\_port\_policy\_moid) | A reference to a fabricPortPolicy resource. | `string` | n/a | yes | -| [slot\_id](#input\_slot\_id) | Slot Identifier of the Switch/FEX/Chassis Interface. | `number` | `1` | no | | [tags](#input\_tags) | List of Tag Attributes to Assign to the Policy. | `list(map(string))` | `[]` | no | ## Outputs diff --git a/modules/port_channel_ethernet_uplinks/variables.tf b/modules/port_channel_ethernet_uplinks/variables.tf index 964d46e..4006039 100644 --- a/modules/port_channel_ethernet_uplinks/variables.tf +++ b/modules/port_channel_ethernet_uplinks/variables.tf @@ -28,9 +28,9 @@ variable "flow_control_policy_moid" { } variable "interfaces" { - default = [] + default = [] description = "List of Ports to Assign to the LAN Port-Channel Policy." - type = list(object( + type = list(object( { breakout_port_id = optional(number) port_id = number diff --git a/modules/port_channel_fc_uplinks/README.md b/modules/port_channel_fc_uplinks/README.md index 84f1dd1..7bbd1e2 100644 --- a/modules/port_channel_fc_uplinks/README.md +++ b/modules/port_channel_fc_uplinks/README.md @@ -42,13 +42,11 @@ No modules. | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| [breakout\_sw\_port](#input\_breakout\_sw\_port) | Breakout port Identifier of the Switch Interface. When a port is not configured as a breakout port, the aggregatePortId is set to 0, and unused. When a port is configured as a breakout port, the 'aggregatePortId' port number as labeled on the equipment, e.g. the id of the port on the switch. | `number` | `0` | no | +| [admin\_speed](#input\_admin\_speed) | Admin configured speed for the port.
* Auto - Admin configurable speed AUTO.
* 8Gbps - Admin configurable speed 8Gbps.
* 16Gbps - (default). Admin configurable speed 16Gbps.
* 32Gbps - Admin configurable speed 32Gbps. | `string` | `"16Gbps"` | no | | [fill\_pattern](#input\_fill\_pattern) | Fill pattern to differentiate the configs in NPIV.
* Arbff - Fc Fill Pattern type Arbff.
* Idle - Fc Fill Pattern type Idle. | `string` | `"Idle"` | no | +| [interfaces](#input\_interfaces) | List of Ports to Assign to the LAN Port-Channel Policy. |
list(object(
{
breakout_port_id = optional(number)
port_id = number
slot_id = number
}
))
| `[]` | no | +| [pc\_id](#input\_pc\_id) | Unique Identifier of the port-channel, local to this switch. | `number` | `1` | no | | [port\_policy\_moid](#input\_port\_policy\_moid) | A reference to a fabricPortPolicy resource. | `string` | n/a | yes | -| [san\_uplink\_pc\_id](#input\_san\_uplink\_pc\_id) | Unique Identifier of the port-channel, local to this switch. | `string` | `1` | no | -| [san\_uplink\_pc\_ports](#input\_san\_uplink\_pc\_ports) | List of Ports to Assign to the SAN Port-Channel Policy. | `set(string)` |
[
1,
2
]
| no | -| [san\_uplink\_speed](#input\_san\_uplink\_speed) | Admin configured speed for the port.
* Auto - Admin configurable speed AUTO ( default ).
* 8Gbps - Admin configurable speed 8Gbps.
* 16Gbps - Admin configurable speed 16Gbps.
* 32Gbps - Admin configurable speed 32Gbps. | `string` | `"16Gbps"` | no | -| [slot\_id](#input\_slot\_id) | Slot Identifier of the Switch/FEX/Chassis Interface. | `number` | `1` | no | | [tags](#input\_tags) | List of Tag Attributes to Assign to the Policy. | `list(map(string))` | `[]` | no | | [vsan\_id](#input\_vsan\_id) | Virtual San Identifier associated to the FC port. | `number` | `1` | no | diff --git a/modules/port_channel_fc_uplinks/variables.tf b/modules/port_channel_fc_uplinks/variables.tf index d03bc0a..52a566b 100644 --- a/modules/port_channel_fc_uplinks/variables.tf +++ b/modules/port_channel_fc_uplinks/variables.tf @@ -30,9 +30,9 @@ variable "fill_pattern" { } variable "interfaces" { - default = [] + default = [] description = "List of Ports to Assign to the LAN Port-Channel Policy." - type = list(object( + type = list(object( { breakout_port_id = optional(number) port_id = number diff --git a/modules/port_channel_fcoe_uplinks/README.md b/modules/port_channel_fcoe_uplinks/README.md index f9d0504..2085e3f 100644 --- a/modules/port_channel_fcoe_uplinks/README.md +++ b/modules/port_channel_fcoe_uplinks/README.md @@ -36,21 +36,18 @@ No modules. | Name | Type | |------|------| -| [intersight_fabric_uplink_pc_role.port_channel](https://registry.terraform.io/providers/CiscoDevNet/intersight/latest/docs/resources/fabric_uplink_pc_role) | resource | +| [intersight_fabric_fcoe_uplink_pc_role.port_channel](https://registry.terraform.io/providers/CiscoDevNet/intersight/latest/docs/resources/fabric_fcoe_uplink_pc_role) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| [breakout\_sw\_port](#input\_breakout\_sw\_port) | Breakout port Identifier of the Switch Interface. When a port is not configured as a breakout port, the aggregatePortId is set to 0, and unused. When a port is configured as a breakout port, the 'aggregatePortId' port number as labeled on the equipment, e.g. the id of the port on the switch. | `number` | `0` | no | -| [flow\_control\_moid](#input\_flow\_control\_moid) | A reference to a fabricFlowControlPolicy resource. | `set(string)` | `[]` | no | -| [lan\_uplink\_pc\_id](#input\_lan\_uplink\_pc\_id) | Unique Identifier of the port-channel, local to this switch. | `string` | `49` | no | -| [lan\_uplink\_pc\_ports](#input\_lan\_uplink\_pc\_ports) | List of Ports to Assign to the LAN Port-Channel Policy. | `set(string)` |
[
49,
50
]
| no | -| [lan\_uplink\_speed](#input\_lan\_uplink\_speed) | Admin configured speed for the port.
* Auto - Admin configurable speed Auto.
* 1Gbps - Admin configurable speed 1Gbps.
* 10Gbps - Admin configurable speed 10Gbps.
* 25Gbps - Admin configurable speed 25Gbps.
* 40Gbps - Admin configurable speed 40Gbps.
* 100Gbps - Admin configurable speed 100Gbps. | `string` | `"Auto"` | no | -| [link\_aggregation\_moid](#input\_link\_aggregation\_moid) | A reference to a fabricLinkAggregationPolicy resource. | `set(string)` | `[]` | no | -| [link\_control\_moid](#input\_link\_control\_moid) | A reference to a fabricLinkControlPolicy resource. | `set(string)` | `[]` | no | +| [admin\_speed](#input\_admin\_speed) | Admin configured speed for the port.
* Auto - Admin configurable speed Auto.
* 1Gbps - Admin configurable speed 1Gbps.
* 10Gbps - Admin configurable speed 10Gbps.
* 25Gbps - Admin configurable speed 25Gbps.
* 40Gbps - Admin configurable speed 40Gbps.
* 100Gbps - Admin configurable speed 100Gbps. | `string` | `"Auto"` | no | +| [interfaces](#input\_interfaces) | List of Ports to Assign to the LAN Port-Channel Policy. |
list(object(
{
breakout_port_id = optional(number)
port_id = number
slot_id = number
}
))
| `[]` | no | +| [link\_aggregation\_policy\_moid](#input\_link\_aggregation\_policy\_moid) | A reference to a fabricLinkAggregationPolicy resource. | `set(string)` | `[]` | no | +| [link\_control\_policy\_moid](#input\_link\_control\_policy\_moid) | A reference to a fabricLinkControlPolicy resource. | `set(string)` | `[]` | no | +| [pc\_id](#input\_pc\_id) | Unique Identifier of the port-channel, local to this switch. | `string` | `49` | no | | [port\_policy\_moid](#input\_port\_policy\_moid) | A reference to a fabricPortPolicy resource. | `string` | n/a | yes | -| [slot\_id](#input\_slot\_id) | Slot Identifier of the Switch/FEX/Chassis Interface. | `number` | `1` | no | | [tags](#input\_tags) | List of Tag Attributes to Assign to the Policy. | `list(map(string))` | `[]` | no | ## Outputs diff --git a/modules/port_channel_fcoe_uplinks/variables.tf b/modules/port_channel_fcoe_uplinks/variables.tf index 54a7128..aeb6bd7 100644 --- a/modules/port_channel_fcoe_uplinks/variables.tf +++ b/modules/port_channel_fcoe_uplinks/variables.tf @@ -24,7 +24,7 @@ variable "admin_speed" { variable "interfaces" { default = [] description = "List of Ports to Assign to the LAN Port-Channel Policy." - type = list(object( + type = list(object( { breakout_port_id = optional(number) port_id = number diff --git a/modules/port_policies/README.md b/modules/port_policies/README.md index 00207c1..9facd66 100644 --- a/modules/port_policies/README.md +++ b/modules/port_policies/README.md @@ -46,7 +46,7 @@ No modules. | [device\_model](#input\_device\_model) | This field specifies the device model template for the Port Policy.
* UCS-FI-6454 - The standard 4th generation UCS Fabric Interconnect with 54 ports.
* UCS-FI-64108 - The expanded 4th generation UCS Fabric Interconnect with 108 ports.
* unknown - Unknown device type, usage is TBD. | `string` | `"UCS-FI-6454"` | no | | [name](#input\_name) | Name for the Policy. | `string` | `"port_policy"` | no | | [org\_moid](#input\_org\_moid) | Intersight Organization moid. | `string` | n/a | yes | -| [profiles](#input\_profiles) | List of Profiles to Assign to the Policy. | `set(string)` | `[]` | no | +| [profiles](#input\_profiles) | Map of Profiles to Assign to the Policy.
* moid - Managed Object Identifier for the Managed Resource.
* object\_type - Object Type to Assign in the Profile Configuration.
- server.Profile - For UCS Server Profiles.
- server.ProfileTemplate - For UCS Server Profile Templates. |
map(object(
{
moid = string
object_type = string
}
))
| `{}` | no | | [tags](#input\_tags) | List of Tag Attributes to Assign to the Policy. | `list(map(string))` | `[]` | no | ## Outputs diff --git a/modules/port_role_appliances/README.md b/modules/port_role_appliances/README.md index 41ea78a..11fff4b 100644 --- a/modules/port_role_appliances/README.md +++ b/modules/port_role_appliances/README.md @@ -36,19 +36,21 @@ No modules. | Name | Type | |------|------| -| [intersight_fabric_uplink_role.lan_uplink](https://registry.terraform.io/providers/CiscoDevNet/intersight/latest/docs/resources/fabric_uplink_role) | resource | +| [intersight_fabric_appliance_role.port_role](https://registry.terraform.io/providers/CiscoDevNet/intersight/latest/docs/resources/fabric_appliance_role) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| [breakout\_sw\_port](#input\_breakout\_sw\_port) | Breakout port Identifier of the Switch Interface. When a port is not configured as a breakout port, the aggregatePortId is set to 0, and unused. When a port is configured as a breakout port, the 'aggregatePortId' port number as labeled on the equipment, e.g. the id of the port on the switch. | `number` | `0` | no | +| [admin\_speed](#input\_admin\_speed) | Admin configured speed for the port.
* Auto - Admin configurable speed AUTO ( default ).
* 1Gbps - Admin configurable speed 1Gbps.
* 10Gbps - Admin configurable speed 10Gbps.
* 25Gbps - Admin configurable speed 25Gbps.
* 40Gbps - Admin configurable speed 40Gbps.
* 100Gbps - Admin configurable speed 100Gbps. | `string` | `"Auto"` | no | +| [breakout\_port\_id](#input\_breakout\_port\_id) | Breakout port Identifier of the Switch Interface. When a port is not configured as a breakout port, the aggregatePortId is set to 0, and unused. When a port is configured as a breakout port, the 'aggregatePortId' port number as labeled on the equipment, e.g. the id of the port on the switch. | `number` | `0` | no | +| [ethernet\_network\_control\_policy\_moid](#input\_ethernet\_network\_control\_policy\_moid) | A reference to a fabricEthNetworkControlPolicy resource. | `set(string)` | `[]` | no | +| [ethernet\_network\_group\_policy\_moid](#input\_ethernet\_network\_group\_policy\_moid) | A reference to a fabricEthNetworkGroupPolicy resource. | `set(string)` | `[]` | no | | [fec](#input\_fec) | Forward error correction configuration for the port.
* Auto - Forward error correction option 'Auto'.
* Cl91 - Forward error correction option 'cl91'.
* Cl74 - Forward error correction option 'cl74'. | `string` | `"Auto"` | no | -| [flow\_control\_moid](#input\_flow\_control\_moid) | A reference to a fabricFlowControlPolicy resource. | `set(string)` | `[]` | no | -| [lan\_uplink\_port\_list](#input\_lan\_uplink\_port\_list) | List of Ports to Assign to the LAN Uplink Policy. | `set(string)` |
[
49
]
| no | -| [lan\_uplink\_speed](#input\_lan\_uplink\_speed) | Admin configured speed for the port.
* Auto - Admin configurable speed AUTO ( default ).
* 1Gbps - Admin configurable speed 1Gbps.
* 10Gbps - Admin configurable speed 10Gbps.
* 25Gbps - Admin configurable speed 25Gbps.
* 40Gbps - Admin configurable speed 40Gbps.
* 100Gbps - Admin configurable speed 100Gbps. | `string` | `"Auto"` | no | -| [link\_control\_moid](#input\_link\_control\_moid) | A reference to a fabricLinkControlPolicy resource. | `set(string)` | `[]` | no | +| [mode](#input\_mode) | Port mode to be set on the appliance port.
* access - Access Mode Switch Port Type.
* trunk (default) - Trunk Mode Switch Port Type. | `string` | `"trunk"` | no | +| [port\_list](#input\_port\_list) | String of Ports to assign to the Port Policy. | `string` | `""` | no | | [port\_policy\_moid](#input\_port\_policy\_moid) | A reference to a fabricPortPolicy resource. | `string` | n/a | yes | +| [priority](#input\_priority) | The 'name' of the System QoS Class.
* Best Effort - (Default) QoS Priority for Best-effort traffic.
* Bronze - QoS Priority for Bronze traffic.
* FC - QoS Priority for FC traffic.
* Gold - QoS Priority for Gold traffic.
* Platinum - QoS Priority for Platinum traffic.
* Silver - QoS Priority for Silver traffic. | `string` | `"Best Effort"` | no | | [slot\_id](#input\_slot\_id) | Slot Identifier of the Switch/FEX/Chassis Interface. | `number` | `1` | no | | [tags](#input\_tags) | List of Tag Attributes to Assign to the Policy. | `list(map(string))` | `[]` | no | @@ -56,5 +58,5 @@ No modules. | Name | Description | |------|-------------| -| [moid](#output\_moid) | LAN Uplink Policy Managed Object ID (moid). | +| [moid](#output\_moid) | Port Role - Appliance Managed Object ID (moid). | diff --git a/modules/port_role_appliances/main.tf b/modules/port_role_appliances/main.tf index 2ff1cd3..f891e32 100644 --- a/modules/port_role_appliances/main.tf +++ b/modules/port_role_appliances/main.tf @@ -1,13 +1,13 @@ locals { port_split = length( regexall("-", var.port_list)) > 0 ? tolist( - split(",", var.port_list) + split(",", var.port_list) ) : length(regexall(",", var.port_list)) > 0 ? tolist(split(",", var.port_list)) : [var.port_list] port_lists = length(local.port_split) == 1 ? local.port_split : flatten( [for s in local.port_split : length(regexall("-", s)) > 0 ? [ - for v in range(tonumber(element(split("-", s), 0)), (tonumber(element(split("-", s), 1)) + 1)) : tonumber(v)] : [s] + for v in range(tonumber(element(split("-", s), 0)), (tonumber(element(split("-", s), 1)) + 1)) : tonumber(v)] : [s] ]) - port_list = toset(local.port_lists) + port_list = toset(local.port_lists) } #________________________________________________________________________________________________ diff --git a/modules/port_role_ethernet_uplinks/README.md b/modules/port_role_ethernet_uplinks/README.md index c134d2f..5fdda80 100644 --- a/modules/port_role_ethernet_uplinks/README.md +++ b/modules/port_role_ethernet_uplinks/README.md @@ -36,18 +36,18 @@ No modules. | Name | Type | |------|------| -| [intersight_fabric_uplink_role.lan_uplink](https://registry.terraform.io/providers/CiscoDevNet/intersight/latest/docs/resources/fabric_uplink_role) | resource | +| [intersight_fabric_uplink_role.port_role](https://registry.terraform.io/providers/CiscoDevNet/intersight/latest/docs/resources/fabric_uplink_role) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| [breakout\_sw\_port](#input\_breakout\_sw\_port) | Breakout port Identifier of the Switch Interface. When a port is not configured as a breakout port, the aggregatePortId is set to 0, and unused. When a port is configured as a breakout port, the 'aggregatePortId' port number as labeled on the equipment, e.g. the id of the port on the switch. | `number` | `0` | no | +| [admin\_speed](#input\_admin\_speed) | Admin configured speed for the port.
* Auto - Admin configurable speed AUTO ( default ).
* 1Gbps - Admin configurable speed 1Gbps.
* 10Gbps - Admin configurable speed 10Gbps.
* 25Gbps - Admin configurable speed 25Gbps.
* 40Gbps - Admin configurable speed 40Gbps.
* 100Gbps - Admin configurable speed 100Gbps. | `string` | `"Auto"` | no | +| [breakout\_port\_id](#input\_breakout\_port\_id) | Breakout port Identifier of the Switch Interface. When a port is not configured as a breakout port, the aggregatePortId is set to 0, and unused. When a port is configured as a breakout port, the 'aggregatePortId' port number as labeled on the equipment, e.g. the id of the port on the switch. | `number` | `0` | no | | [fec](#input\_fec) | Forward error correction configuration for the port.
* Auto - Forward error correction option 'Auto'.
* Cl91 - Forward error correction option 'cl91'.
* Cl74 - Forward error correction option 'cl74'. | `string` | `"Auto"` | no | -| [flow\_control\_moid](#input\_flow\_control\_moid) | A reference to a fabricFlowControlPolicy resource. | `set(string)` | `[]` | no | -| [lan\_uplink\_port\_list](#input\_lan\_uplink\_port\_list) | List of Ports to Assign to the LAN Uplink Policy. | `set(string)` |
[
49
]
| no | -| [lan\_uplink\_speed](#input\_lan\_uplink\_speed) | Admin configured speed for the port.
* Auto - Admin configurable speed AUTO ( default ).
* 1Gbps - Admin configurable speed 1Gbps.
* 10Gbps - Admin configurable speed 10Gbps.
* 25Gbps - Admin configurable speed 25Gbps.
* 40Gbps - Admin configurable speed 40Gbps.
* 100Gbps - Admin configurable speed 100Gbps. | `string` | `"Auto"` | no | -| [link\_control\_moid](#input\_link\_control\_moid) | A reference to a fabricLinkControlPolicy resource. | `set(string)` | `[]` | no | +| [flow\_control\_policy\_moid](#input\_flow\_control\_policy\_moid) | A reference to a fabricFlowControlPolicy resource. | `set(string)` | `[]` | no | +| [link\_control\_policy\_moid](#input\_link\_control\_policy\_moid) | A reference to a fabricLinkControlPolicy resource. | `set(string)` | `[]` | no | +| [port\_list](#input\_port\_list) | String of Ports to assign to the Port Policy. | `string` | `""` | no | | [port\_policy\_moid](#input\_port\_policy\_moid) | A reference to a fabricPortPolicy resource. | `string` | n/a | yes | | [slot\_id](#input\_slot\_id) | Slot Identifier of the Switch/FEX/Chassis Interface. | `number` | `1` | no | | [tags](#input\_tags) | List of Tag Attributes to Assign to the Policy. | `list(map(string))` | `[]` | no | @@ -56,5 +56,5 @@ No modules. | Name | Description | |------|-------------| -| [moid](#output\_moid) | LAN Uplink Policy Managed Object ID (moid). | +| [moid](#output\_moid) | Port Role - Ethernet Uplink Managed Object ID (moid). | diff --git a/modules/port_role_ethernet_uplinks/main.tf b/modules/port_role_ethernet_uplinks/main.tf index 583a0c2..e07bdde 100644 --- a/modules/port_role_ethernet_uplinks/main.tf +++ b/modules/port_role_ethernet_uplinks/main.tf @@ -1,13 +1,13 @@ locals { port_split = length( regexall("-", var.port_list)) > 0 ? tolist( - split(",", var.port_list) + split(",", var.port_list) ) : length(regexall(",", var.port_list)) > 0 ? tolist(split(",", var.port_list)) : [var.port_list] port_lists = length(local.port_split) == 1 ? local.port_split : flatten( [for s in local.port_split : length(regexall("-", s)) > 0 ? [ - for v in range(tonumber(element(split("-", s), 0)), (tonumber(element(split("-", s), 1)) + 1)) : tonumber(v)] : [s] + for v in range(tonumber(element(split("-", s), 0)), (tonumber(element(split("-", s), 1)) + 1)) : tonumber(v)] : [s] ]) - port_list = toset(local.port_lists) + port_list = toset(local.port_lists) } #__________________________________________________________________________________________ diff --git a/modules/port_role_fc_uplinks/README.md b/modules/port_role_fc_uplinks/README.md index 4aeb058..f8fcf55 100644 --- a/modules/port_role_fc_uplinks/README.md +++ b/modules/port_role_fc_uplinks/README.md @@ -36,17 +36,17 @@ No modules. | Name | Type | |------|------| -| [intersight_fabric_fc_uplink_role.uplink](https://registry.terraform.io/providers/CiscoDevNet/intersight/latest/docs/resources/fabric_fc_uplink_role) | resource | +| [intersight_fabric_fc_uplink_role.port_role](https://registry.terraform.io/providers/CiscoDevNet/intersight/latest/docs/resources/fabric_fc_uplink_role) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| [breakout\_sw\_port](#input\_breakout\_sw\_port) | Breakout port Identifier of the Switch Interface. When a port is not configured as a breakout port, the aggregatePortId is set to 0, and unused. When a port is configured as a breakout port, the 'aggregatePortId' port number as labeled on the equipment, e.g. the id of the port on the switch. | `number` | `0` | no | +| [admin\_speed](#input\_admin\_speed) | Admin configured speed for the port.
* Auto - Admin configurable speed AUTO ( default ).
* 8Gbps - Admin configurable speed 8Gbps.
* 16Gbps - Admin configurable speed 16Gbps.
* 32Gbps - Admin configurable speed 32Gbps. | `string` | `"16Gbps"` | no | +| [breakout\_port\_id](#input\_breakout\_port\_id) | Breakout port Identifier of the Switch Interface. When a port is not configured as a breakout port, the aggregatePortId is set to 0, and unused. When a port is configured as a breakout port, the 'aggregatePortId' port number as labeled on the equipment, e.g. the id of the port on the switch. | `number` | `0` | no | | [fill\_pattern](#input\_fill\_pattern) | Fill pattern to differentiate the configs in NPIV.
* Arbff - Fc Fill Pattern type Arbff.
* Idle - Fc Fill Pattern type Idle. | `string` | `"Idle"` | no | +| [port\_list](#input\_port\_list) | String of Ports to assign to the Port Policy. | `string` | `""` | no | | [port\_policy\_moid](#input\_port\_policy\_moid) | A reference to a fabricPortPolicy resource. | `string` | n/a | yes | -| [san\_uplink\_port\_list](#input\_san\_uplink\_port\_list) | List of Ports to Assign to the SAN Uplink Policy. | `set(string)` |
[
1
]
| no | -| [san\_uplink\_speed](#input\_san\_uplink\_speed) | Admin configured speed for the port.
* Auto - Admin configurable speed AUTO ( default ).
* 8Gbps - Admin configurable speed 8Gbps.
* 16Gbps - Admin configurable speed 16Gbps.
* 32Gbps - Admin configurable speed 32Gbps. | `string` | `"16Gbps"` | no | | [slot\_id](#input\_slot\_id) | Slot Identifier of the Switch/FEX/Chassis Interface. | `number` | `1` | no | | [tags](#input\_tags) | List of Tag Attributes to Assign to the Policy. | `list(map(string))` | `[]` | no | | [vsan\_id](#input\_vsan\_id) | Virtual San Identifier associated to the FC port. | `number` | `1` | no | @@ -55,5 +55,5 @@ No modules. | Name | Description | |------|-------------| -| [moid](#output\_moid) | Port Policy > FC Uplink Managed Object ID (moid). | +| [moid](#output\_moid) | Port Role - Fibre-Channel Uplink Managed Object ID (moid). | diff --git a/modules/port_role_fc_uplinks/main.tf b/modules/port_role_fc_uplinks/main.tf index 27b0edb..1f67dd3 100644 --- a/modules/port_role_fc_uplinks/main.tf +++ b/modules/port_role_fc_uplinks/main.tf @@ -1,13 +1,13 @@ locals { port_split = length( regexall("-", var.port_list)) > 0 ? tolist( - split(",", var.port_list) + split(",", var.port_list) ) : length(regexall(",", var.port_list)) > 0 ? tolist(split(",", var.port_list)) : [var.port_list] port_lists = length(local.port_split) == 1 ? local.port_split : flatten( [for s in local.port_split : length(regexall("-", s)) > 0 ? [ - for v in range(tonumber(element(split("-", s), 0)), (tonumber(element(split("-", s), 1)) + 1)) : tonumber(v)] : [s] + for v in range(tonumber(element(split("-", s), 0)), (tonumber(element(split("-", s), 1)) + 1)) : tonumber(v)] : [s] ]) - port_list = toset(local.port_lists) + port_list = toset(local.port_lists) } #________________________________________________________________________ diff --git a/modules/port_role_fcoe_uplinks/README.md b/modules/port_role_fcoe_uplinks/README.md index a65e92f..5c83ab4 100644 --- a/modules/port_role_fcoe_uplinks/README.md +++ b/modules/port_role_fcoe_uplinks/README.md @@ -36,18 +36,17 @@ No modules. | Name | Type | |------|------| -| [intersight_fabric_uplink_role.lan_uplink](https://registry.terraform.io/providers/CiscoDevNet/intersight/latest/docs/resources/fabric_uplink_role) | resource | +| [intersight_fabric_fcoe_uplink_role.port_role](https://registry.terraform.io/providers/CiscoDevNet/intersight/latest/docs/resources/fabric_fcoe_uplink_role) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| [breakout\_sw\_port](#input\_breakout\_sw\_port) | Breakout port Identifier of the Switch Interface. When a port is not configured as a breakout port, the aggregatePortId is set to 0, and unused. When a port is configured as a breakout port, the 'aggregatePortId' port number as labeled on the equipment, e.g. the id of the port on the switch. | `number` | `0` | no | +| [admin\_speed](#input\_admin\_speed) | Admin configured speed for the port.
* Auto - Admin configurable speed AUTO ( default ).
* 1Gbps - Admin configurable speed 1Gbps.
* 10Gbps - Admin configurable speed 10Gbps.
* 25Gbps - Admin configurable speed 25Gbps.
* 40Gbps - Admin configurable speed 40Gbps.
* 100Gbps - Admin configurable speed 100Gbps. | `string` | `"Auto"` | no | +| [breakout\_port\_id](#input\_breakout\_port\_id) | Breakout port Identifier of the Switch Interface. When a port is not configured as a breakout port, the aggregatePortId is set to 0, and unused. When a port is configured as a breakout port, the 'aggregatePortId' port number as labeled on the equipment, e.g. the id of the port on the switch. | `number` | `0` | no | | [fec](#input\_fec) | Forward error correction configuration for the port.
* Auto - Forward error correction option 'Auto'.
* Cl91 - Forward error correction option 'cl91'.
* Cl74 - Forward error correction option 'cl74'. | `string` | `"Auto"` | no | -| [flow\_control\_moid](#input\_flow\_control\_moid) | A reference to a fabricFlowControlPolicy resource. | `set(string)` | `[]` | no | -| [lan\_uplink\_port\_list](#input\_lan\_uplink\_port\_list) | List of Ports to Assign to the LAN Uplink Policy. | `set(string)` |
[
49
]
| no | -| [lan\_uplink\_speed](#input\_lan\_uplink\_speed) | Admin configured speed for the port.
* Auto - Admin configurable speed AUTO ( default ).
* 1Gbps - Admin configurable speed 1Gbps.
* 10Gbps - Admin configurable speed 10Gbps.
* 25Gbps - Admin configurable speed 25Gbps.
* 40Gbps - Admin configurable speed 40Gbps.
* 100Gbps - Admin configurable speed 100Gbps. | `string` | `"Auto"` | no | -| [link\_control\_moid](#input\_link\_control\_moid) | A reference to a fabricLinkControlPolicy resource. | `set(string)` | `[]` | no | +| [link\_control\_policy\_moid](#input\_link\_control\_policy\_moid) | A reference to a fabricLinkControlPolicy resource. | `set(string)` | `[]` | no | +| [port\_list](#input\_port\_list) | String of Ports to assign to the Port Policy. | `string` | `""` | no | | [port\_policy\_moid](#input\_port\_policy\_moid) | A reference to a fabricPortPolicy resource. | `string` | n/a | yes | | [slot\_id](#input\_slot\_id) | Slot Identifier of the Switch/FEX/Chassis Interface. | `number` | `1` | no | | [tags](#input\_tags) | List of Tag Attributes to Assign to the Policy. | `list(map(string))` | `[]` | no | @@ -56,5 +55,5 @@ No modules. | Name | Description | |------|-------------| -| [moid](#output\_moid) | LAN Uplink Policy Managed Object ID (moid). | +| [moid](#output\_moid) | Port Role - FCoE Uplink Managed Object ID (moid). | diff --git a/modules/port_role_fcoe_uplinks/main.tf b/modules/port_role_fcoe_uplinks/main.tf index e8eb575..cb44720 100644 --- a/modules/port_role_fcoe_uplinks/main.tf +++ b/modules/port_role_fcoe_uplinks/main.tf @@ -1,13 +1,13 @@ locals { port_split = length( regexall("-", var.port_list)) > 0 ? tolist( - split(",", var.port_list) + split(",", var.port_list) ) : length(regexall(",", var.port_list)) > 0 ? tolist(split(",", var.port_list)) : [var.port_list] port_lists = length(local.port_split) == 1 ? local.port_split : flatten( [for s in local.port_split : length(regexall("-", s)) > 0 ? [ - for v in range(tonumber(element(split("-", s), 0)), (tonumber(element(split("-", s), 1)) + 1)) : tonumber(v)] : [s] + for v in range(tonumber(element(split("-", s), 0)), (tonumber(element(split("-", s), 1)) + 1)) : tonumber(v)] : [s] ]) - port_list = toset(local.port_lists) + port_list = toset(local.port_lists) } #__________________________________________________________________________________________ diff --git a/modules/port_role_servers/README.md b/modules/port_role_servers/README.md index b385fdc..1659f15 100644 --- a/modules/port_role_servers/README.md +++ b/modules/port_role_servers/README.md @@ -36,14 +36,14 @@ No modules. | Name | Type | |------|------| -| [intersight_fabric_server_role.server_port](https://registry.terraform.io/providers/CiscoDevNet/intersight/latest/docs/resources/fabric_server_role) | resource | +| [intersight_fabric_server_role.port_role](https://registry.terraform.io/providers/CiscoDevNet/intersight/latest/docs/resources/fabric_server_role) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| [breakout\_sw\_port](#input\_breakout\_sw\_port) | Breakout port Identifier of the Switch Interface. When a port is not configured as a breakout port, the aggregatePortId is set to 0, and unused. When a port is configured as a breakout port, the 'aggregatePortId' port number as labeled on the equipment, e.g. the id of the port on the switch. | `number` | `0` | no | -| [port\_list](#input\_port\_list) | List of Ports to assign to the Server Port Policy. | `string` | `"5-18"` | no | +| [breakout\_port\_id](#input\_breakout\_port\_id) | Breakout port Identifier of the Switch Interface. When a port is not configured as a breakout port, the aggregatePortId is set to 0, and unused. When a port is configured as a breakout port, the 'aggregatePortId' port number as labeled on the equipment, e.g. the id of the port on the switch. | `number` | `0` | no | +| [port\_list](#input\_port\_list) | String of Ports to assign to the Port Policy. | `string` | `""` | no | | [port\_policy\_moid](#input\_port\_policy\_moid) | A reference to a fabricPortPolicy resource. | `string` | n/a | yes | | [slot\_id](#input\_slot\_id) | Slot Identifier of the Switch/FEX/Chassis Interface. | `number` | `1` | no | | [tags](#input\_tags) | List of Tag Attributes to Assign to the Policy. | `list(map(string))` | `[]` | no | @@ -52,5 +52,5 @@ No modules. | Name | Description | |------|-------------| -| [moid](#output\_moid) | UCS Domain Port Policy - Server Ports Managed Object ID (moid). | +| [moid](#output\_moid) | Role Managed Object ID (moid). | diff --git a/modules/port_role_servers/main.tf b/modules/port_role_servers/main.tf index 2b9f761..614c3a6 100644 --- a/modules/port_role_servers/main.tf +++ b/modules/port_role_servers/main.tf @@ -1,13 +1,13 @@ locals { port_split = length( regexall("-", var.port_list)) > 0 ? tolist( - split(",", var.port_list) + split(",", var.port_list) ) : length(regexall(",", var.port_list)) > 0 ? tolist(split(",", var.port_list)) : [var.port_list] port_lists = length(local.port_split) == 1 ? local.port_split : flatten( [for s in local.port_split : length(regexall("-", s)) > 0 ? [ - for v in range(tonumber(element(split("-", s), 0)), (tonumber(element(split("-", s), 1)) + 1)) : tonumber(v)] : [s] + for v in range(tonumber(element(split("-", s), 0)), (tonumber(element(split("-", s), 1)) + 1)) : tonumber(v)] : [s] ]) - port_list = toset(local.port_lists) + port_list = toset(local.port_lists) } #_____________________________________________________________________ diff --git a/modules/storage_drive_group/README.md b/modules/storage_drive_group/README.md index daa0bb6..6e45799 100644 --- a/modules/storage_drive_group/README.md +++ b/modules/storage_drive_group/README.md @@ -42,13 +42,13 @@ No modules. | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| [automatic\_drive\_group](#input\_automatic\_drive\_group) | This drive group is created using automatic drive selection. This complex property has following sub-properties:
* drive\_type - Type of drive that should be used for this RAID group.
- Any - Any type of drive can be used for virtual drive creation.
- HDD - Hard disk drives should be used for virtual drive creation.
- SSD - Solid state drives should be used for virtual drive creation.
* drives\_per\_span - Number of drives within this span group. The minimum number of disks needed in a span group varies based on RAID level. RAID0 requires at least one disk. RAID1 and RAID10 requires at least 2 and in multiples of . RAID5 and RAID50 require at least 3 disks in a span group. RAID6 and RAID60 require atleast 4 disks in a span.
* minimum\_drive\_size - Minimum size of the drive to be used for creating this RAID group.
* num\_dedicated\_hot\_spares - Number of dedicated hot spare disks for this RAID group. Allowed value is a comma or hyphen separated number range.
* number\_of\_spans - Number of span groups to be created for this RAID group. Non-nested RAID levels have a single span.
* use\_remaining\_drives - This flag enables the drive group to use all the remaining drives on the server. |
map(object(
{
drive_type = string
drives_per_span = number
minimum_drive_size = number
num_dedicated_hot_spares = number
number_of_spans = number
use_remaining_drives = bool
}
))
| `{}` | no | -| [manual\_drive\_selection](#input\_manual\_drive\_selection) | This drive group is created by specifying the drive slots to be used. This complex property has following sub-properties:
* dedicated\_hot\_spares:(string) A collection of drives to be used as hot spares for this Drive Group.
* drive\_array\_spans:(string) Collection of local disks that are part of this span group. Allowed value is a comma or hyphen separated number range. The minimum number of disks needed in a span group varies based on RAID level.
- RAID0 requires at least one disk,
- RAID1 and RAID10 requires at least 2 and in multiples of 2,
- RAID5 RAID50 RAID6 and RAID60 require at least 3 disks in a span group. |
map(object(
{
dedicated_hot_spares = optional(string)
slots = string
}
))
| `{}` | no | +| [automatic\_drive\_group](#input\_automatic\_drive\_group) | This drive group is created using automatic drive selection. This complex property has following sub-properties:
* drives\_per\_span - Number of drives within this span group. The minimum number of disks needed in a span group varies based on RAID level. RAID0 requires at least one disk. RAID1 and RAID10 requires at least 2 and in multiples of . RAID5 and RAID50 require at least 3 disks in a span group. RAID6 and RAID60 require atleast 4 disks in a span.
* drive\_type - Type of drive that should be used for this RAID group.
- Any - Any type of drive can be used for virtual drive creation.
- HDD - Hard disk drives should be used for virtual drive creation.
- SSD - Solid state drives should be used for virtual drive creation.
* minimum\_drive\_size - Minimum size of the drive to be used for creating this RAID group.
* num\_dedicated\_hot\_spares - Number of dedicated hot spare disks for this RAID group. Allowed value is a comma or hyphen separated number range.
* number\_of\_spans - Number of span groups to be created for this RAID group. Non-nested RAID levels have a single span.
* use\_remaining\_drives - This flag enables the drive group to use all the remaining drives on the server. |
map(object(
{
drive_type = string
drives_per_span = number
minimum_drive_size = number
num_dedicated_hot_spares = number
number_of_spans = number
use_remaining_drives = bool
}
))
| `{}` | no | +| [manual\_drive\_group](#input\_manual\_drive\_group) | This drive group is created by specifying the drive slots to be used. This complex property has following sub-properties:
* dedicated\_hot\_spares:(string) A collection of drives to be used as hot spares for this Drive Group.
* drive\_array\_spans:(string) Collection of local disks that are part of this span group. Allowed value is a comma or hyphen separated number range. The minimum number of disks needed in a span group varies based on RAID level.
- RAID0 requires at least one disk,
- RAID1 and RAID10 requires at least 2 and in multiples of 2,
- RAID5 RAID50 RAID6 and RAID60 require at least 3 disks in a span group. |
map(object(
{
dedicated_hot_spares = optional(string)
drive_array_spans = any
}
))
| `{}` | no | | [name](#input\_name) | Name for the Policy. | `string` | `"disk_group"` | no | | [raid\_level](#input\_raid\_level) | The supported RAID level for the disk group.
* Raid0 - RAID 0 Stripe Raid Level.
* Raid1 - RAID 1 Mirror Raid Level.
* Raid5 - RAID 5 Mirror Raid Level.
* Raid6 - RAID 6 Mirror Raid Level.
* Raid10 - RAID 10 Mirror Raid Level.
* Raid50 - RAID 50 Mirror Raid Level.
* Raid60 - RAID 60 Mirror Raid Level. | `string` | `"Raid1"` | no | | [storage\_moid](#input\_storage\_moid) | Storage Policy moid. | `string` | n/a | yes | | [tags](#input\_tags) | List of Tag Attributes to Assign to the Policy. | `list(map(string))` | `[]` | no | -| [virtual\_drives](#input\_virtual\_drives) | This complex property has following sub-properties:
* boot\_drive:(bool) This flag enables this virtual drive to be used as a boot drive.
* expand\_to\_available:(bool) This flag enables the virtual drive to use all the space available in the disk group. When this flag is enabled, the size property is ignored.
* name:(string) The name of the virtual drive. The name can be between 1 and 15 alphanumeric characters. Spaces or any special characters other than - (hyphen), \_ (underscore), : (colon), and . (period) are not allowed.
* size:(int) Virtual drive size in MebiBytes. Size is mandatory field except when the Expand to Available option is enabled.
* access\_policy:(string) Access policy that host has on this virtual drive.
- Default - Use platform default access mode.
- ReadWrite - Enables host to perform read-write on the VD.
- ReadOnly - Host can only read from the VD.
- Blocked - Host can neither read nor write to the VD.
* disk\_cache:(string) Disk cache policy for the virtual drive.
- Default - Use platform default drive cache mode.
- NoChange - Drive cache policy is unchanged.
- Enable - Enables IO caching on the drive.
- Disable - Disables IO caching on the drive.
* read\_policy:(string) Read ahead mode to be used to read data from this virtual drive.
- Default - Use platform default read ahead mode.
- ReadAhead - Use read ahead mode for the policy.
- NoReadAhead - Do not use read ahead mode for the policy.
* strip\_size:(int) Desired strip size - Allowed values are 64KiB, 128KiB, 256KiB, 512KiB, 1024KiB.
- 64 - Number of bytes in a strip is 64 Kibibytes.
- 128 - Number of bytes in a strip is 128 Kibibytes.
- 256 - Number of bytes in a strip is 256 Kibibytes.
- 512 - Number of bytes in a strip is 512 Kibibytes.
- 1024 - Number of bytes in a strip is 1024 Kibibytes or 1 Mebibyte.
* write\_policy:(string) Write mode to be used to write data to this virtual drive.
- Default - Use platform default write mode.
- WriteThrough - Data is written through the cache and to the physical drives. Performance is improved, because subsequent reads of that data can be satisfied from the cache.
- WriteBackGoodBbu - Data is stored in the cache, and is only written to the physical drives when space in the cache is needed. Virtual drives requesting this policy fall back to Write Through caching when the battery backup unit (BBU) cannot guarantee the safety of the cache in the event of a power failure.
- AlwaysWriteBack - With this policy, write caching remains Write Back even if the battery backup unit is defective or discharged. |
map(object(
{
access_policy = string
boot_drive = string
disk_cache = string
expand_to_available = bool
read_policy = string
size = number
strip_size = number
write_policy = string
}
))
| `{}` | no | +| [virtual\_drives](#input\_virtual\_drives) | This complex property has following sub-properties:
* boot\_drive:(bool) This flag enables this virtual drive to be used as a boot drive.
* expand\_to\_available:(bool) This flag enables the virtual drive to use all the space available in the disk group. When this flag is enabled, the size property is ignored.
* name:(string) The name of the virtual drive. The name can be between 1 and 15 alphanumeric characters. Spaces or any special characters other than - (hyphen), \_ (underscore), : (colon), and . (period) are not allowed.
* size:(int) Virtual drive size in MebiBytes. Size is mandatory field except when the Expand to Available option is enabled.
* access\_policy:(string) Access policy that host has on this virtual drive.
- Default - Use platform default access mode.
- Blocked - Host can neither read nor write to the VD.
- ReadOnly - Host can only read from the VD.
- ReadWrite - Enables host to perform read-write on the VD.
* disk\_cache:(string) Disk cache policy for the virtual drive.
- Default - Use platform default drive cache mode.
- Disable - Disables IO caching on the drive.
- Enable - Enables IO caching on the drive.
- NoChange - Drive cache policy is unchanged.
* read\_policy:(string) Read ahead mode to be used to read data from this virtual drive.
- Default - Use platform default read ahead mode.
- NoReadAhead - Do not use read ahead mode for the policy.
- ReadAhead - Use read ahead mode for the policy.
* strip\_size:(string) Desired strip size - Allowed values are 64KiB, 128KiB, 256KiB, 512KiB, 1024KiB.
* 64 - Number of bytes in a strip is 64 Kibibytes.
* 128 - Number of bytes in a strip is 128 Kibibytes.
* 256 - Number of bytes in a strip is 256 Kibibytes.
* 512 - Number of bytes in a strip is 512 Kibibytes.
* 1024 - Number of bytes in a strip is 1024 Kibibytes or 1 Mebibyte.
* write\_policy:(string) Write mode to be used to write data to this virtual drive.
- Default - Use platform default write mode.
- AlwaysWriteBack - With this policy, write caching remains Write Back even if the battery backup unit is defective or discharged.
- WriteBackGoodBbu - Data is stored in the cache, and is only written to the physical drives when space in the cache is needed. Virtual drives requesting this policy fall back to Write Through caching when the battery backup unit (BBU) cannot guarantee the safety of the cache in the event of a power failure.
- WriteThrough - Data is written through the cache and to the physical drives. Performance is improved, because subsequent reads of that data can be satisfied from the cache. |
map(object(
{
access_policy = string
boot_drive = string
disk_cache = string
expand_to_available = bool
read_policy = string
size = number
strip_size = number
write_policy = string
}
))
| `{}` | no | ## Outputs diff --git a/modules/storage_drive_group/main.tf b/modules/storage_drive_group/main.tf index 2516141..f1dc6e9 100644 --- a/modules/storage_drive_group/main.tf +++ b/modules/storage_drive_group/main.tf @@ -58,15 +58,7 @@ resource "intersight_storage_drive_group" "drive_group" { drive_cache = virtual_drives.value.disk_cache object_type = "storage.VirtualDrivePolicy" read_policy = virtual_drives.value.read_policy - strip_size = length( - regexall("128KiB", virtual_drives.value.strip_size) - ) > 0 ? 128 : length( - regexall("256KiB", virtual_drives.value.strip_size) - ) > 0 ? 256 : length( - regexall("512KiB", virtual_drives.value.strip_size) - ) > 0 ? 512 : length( - regexall("1MiB", virtual_drives.value.strip_size) - ) > 0 ? 1024 : 64 + strip_size = virtual_drives.value.strip_size write_policy = virtual_drives.value.write_policy } ] diff --git a/modules/storage_policies/README.md b/modules/storage_policies/README.md index 1f5caf0..f0c0ef6 100644 --- a/modules/storage_policies/README.md +++ b/modules/storage_policies/README.md @@ -48,9 +48,9 @@ No modules. | [name](#input\_name) | Name for the Policy. | `string` | `"storage"` | no | | [org\_moid](#input\_org\_moid) | Intersight Organization moid. | `string` | n/a | yes | | [profiles](#input\_profiles) | Map of Profiles to Assign to the Policy.
* moid - Managed Object Identifier for the Managed Resource.
* object\_type - Object Type to Assign in the Profile Configuration.
- server.Profile - For UCS Server Profiles.
- server.ProfileTemplate - For UCS Server Profile Templates. |
map(object(
{
moid = string
object_type = string
}
))
| `{}` | no | -| [raid0\_drive](#input\_raid0\_drive) | This complex property has following sub-properties:
* access\_policy - Access policy that host has on this virtual drive.
- Default - Use platform default access mode.
- ReadWrite - Enables host to perform read-write on the VD.
- ReadOnly - Host can only read from the VD.
- Blocked - Host can neither read nor write to the VD.
* drive\_cache - Disk cache policy for the virtual drive.
- Default - Use platform default drive cache mode.
- NoChange - Drive cache policy is unchanged.
- Enable - Enables IO caching on the drive.
- Disable - Disables IO caching on the drive.
* drive\_slots - The set of drive slots where RAID0 virtual drives must be created.
* enable - If enabled, this will create a RAID0 virtual drive per disk and encompassing the whole disk.
* read\_policy - Read ahead mode to be used to read data from this virtual drive.
- Default - Use platform default read ahead mode.
- ReadAhead - Use read ahead mode for the policy.
- NoReadAhead - Do not use read ahead mode for the policy.
* strip\_size - Desired strip size - Allowed values are 64KiB, 128KiB, 256KiB, 512KiB, 1024KiB.
- 64 - Number of bytes in a strip is 64 Kibibytes.
- 128 - Number of bytes in a strip is 128 Kibibytes.
- 256 - Number of bytes in a strip is 256 Kibibytes.
- 512 - Number of bytes in a strip is 512 Kibibytes.
- 1024 - Number of bytes in a strip is 1024 Kibibytes or 1 Mebibyte.
* write\_policy:(string) Write mode to be used to write data to this virtual drive.
- Default - Use platform default write mode.
- WriteThrough - Data is written through the cache and to the physical drives. Performance is improved, because subsequent reads of that data can be satisfied from the cache.
- WriteBackGoodBbu - Data is stored in the cache, and is only written to the physical drives when space in the cache is needed. Virtual drives requesting this policy fall back to Write Through caching when the battery backup unit (BBU) cannot guarantee the safety of the cache in the event of a power failure.
- AlwaysWriteBack - With this policy, write caching remains Write Back even if the battery backup unit is defective or discharged. |
map(object(
{
access_policy = string
drive_cache = string
drive_slots = string
enable = bool
read_policy = string
strip_size = number
write_policy = string
}
))
| `{}` | no | +| [raid0\_drive](#input\_raid0\_drive) | This complex property has following sub-properties:
* access\_policy - Access policy that host has on this virtual drive.
- Default - Use platform default access mode.
- Blocked - Host can neither read nor write to the VD.
- ReadOnly - Host can only read from the VD.
- ReadWrite - Enables host to perform read-write on the VD.
* drive\_cache - Disk cache policy for the virtual drive.
- Default - Use platform default drive cache mode.
- Disable - Disables IO caching on the drive.
- Enable - Enables IO caching on the drive.
- NoChange - Drive cache policy is unchanged.
* drive\_slots - The set of drive slots where RAID0 virtual drives must be created.
* enable - If enabled, this will create a RAID0 virtual drive per disk and encompassing the whole disk.
* read\_policy - Read ahead mode to be used to read data from this virtual drive.
- Default - Use platform default read ahead mode.
- NoReadAhead - Do not use read ahead mode for the policy.
- ReadAhead - Use read ahead mode for the policy.
* strip\_size - Desired strip size - Allowed values are 64KiB, 128KiB, 256KiB, 512KiB, 1024KiB.
- 64 - Number of bytes in a strip is 64 Kibibytes.
- 128 - Number of bytes in a strip is 128 Kibibytes.
- 256 - Number of bytes in a strip is 256 Kibibytes.
- 512 - Number of bytes in a strip is 512 Kibibytes.
- 1024 - Number of bytes in a strip is 1024 Kibibytes or 1 Mebibyte.
* write\_policy:(string) Write mode to be used to write data to this virtual drive.
- Default - Use platform default write mode.
- AlwaysWriteBack - With this policy, write caching remains Write Back even if the battery backup unit is defective or discharged.
- WriteBackGoodBbu - Data is stored in the cache, and is only written to the physical drives when space in the cache is needed. Virtual drives requesting this policy fall back to Write Through caching when the battery backup unit (BBU) cannot guarantee the safety of the cache in the event of a power failure.
- WriteThrough - Data is written through the cache and to the physical drives. Performance is improved, because subsequent reads of that data can be satisfied from the cache. |
map(object(
{
access_policy = string
drive_cache = string
drive_slots = string
enable = bool
read_policy = string
strip_size = number
write_policy = string
}
))
| `{}` | no | | [tags](#input\_tags) | List of Tag Attributes to Assign to the Policy. | `list(map(string))` | `[]` | no | -| [unused\_disks\_state](#input\_unused\_disks\_state) | State to which disks, not used in this policy, are to be moved.
* NoChange - (Default) Drive state will not be modified by Storage Policy.
* UnconfiguredGood - Unconfigured good state -ready to be added in a RAID group.
* Jbod - JBOD state where the disks start showing up to Host OS. | `string` | `"NoChange"` | no | +| [unused\_disks\_state](#input\_unused\_disks\_state) | State to which disks, not used in this policy, are to be moved.
* Jbod - JBOD state where the disks start showing up to Host OS.
* NoChange - (Default) Drive state will not be modified by Storage Policy.
* UnconfiguredGood - Unconfigured good state -ready to be added in a RAID group. | `string` | `"NoChange"` | no | | [use\_jbod\_for\_vd\_creation](#input\_use\_jbod\_for\_vd\_creation) | Disks in JBOD State are used to create virtual drives. | `bool` | `false` | no | ## Outputs diff --git a/modules/storage_policies/main.tf b/modules/storage_policies/main.tf index 5354c94..0a16a84 100644 --- a/modules/storage_policies/main.tf +++ b/modules/storage_policies/main.tf @@ -42,15 +42,7 @@ resource "intersight_storage_storage_policy" "storage" { drive_cache = raid0_drive.value.drive_cache object_type = "storage.VirtualDriveConfig" read_policy = raid0_drive.value.read_policy - strip_size = length( - regexall("128KiB", raid0_drive.value.strip_size) - ) > 0 ? 128 : length( - regexall("256KiB", raid0_drive.value.strip_size) - ) > 0 ? 256 : length( - regexall("512KiB", raid0_drive.value.strip_size) - ) > 0 ? 512 : length( - regexall("1MiB", raid0_drive.value.strip_size) - ) > 0 ? 1024 : 64 + strip_size = raid0_drive.value.strip_size } } } diff --git a/modules/thermal_policies/README.md b/modules/thermal_policies/README.md index 31aa6c5..8a2458f 100644 --- a/modules/thermal_policies/README.md +++ b/modules/thermal_policies/README.md @@ -46,7 +46,7 @@ No modules. | [fan\_control\_mode](#input\_fan\_control\_mode) | Sets the Fan Control Mode of the System. High Power, Maximum Power and Acoustic modes are only supported for Cisco UCS X series Chassis.
* Acoustic - The fan speed is reduced to reduce noise levels in acoustic-sensitive environments. This Mode is only supported for UCS X series Chassis.
* Balanced - The fans run faster when needed based on the heat generated by the server. When possible, the fans returns to the minimum required speed.
* LowPower - The Fans run at the minimum speed required to keep the server cool.
* HighPower - The fans are kept at higher speed to emphasizes performance over power consumption. This Mode is only supported for UCS X series Chassis.
* MaximumPower - The fans are always kept at maximum speed. This option provides the most cooling and consumes the most power. This Mode is only supported for UCS X series Chassis. | `string` | `"Balanced"` | no | | [name](#input\_name) | Name for the Policy. | `string` | `"ssh"` | no | | [org\_moid](#input\_org\_moid) | Intersight Organization moid. | `string` | n/a | yes | -| [profiles](#input\_profiles) | List of Profiles to Assign to the Policy. | `set(string)` | `[]` | no | +| [profiles](#input\_profiles) | Map of Profiles to Assign to the Policy.
* moid - Managed Object Identifier for the Managed Resource.
* object\_type - Object Type to Assign in the Profile Configuration.
- server.Profile - For UCS Server Profiles.
- server.ProfileTemplate - For UCS Server Profile Templates. |
map(object(
{
moid = string
object_type = string
}
))
| `{}` | no | | [tags](#input\_tags) | List of Tag Attributes to Assign to the Policy. | `list(map(string))` | `[]` | no | ## Outputs diff --git a/modules/vlan_policy_add_vlan_list/README.md b/modules/vlan_policy_add_vlan_list/README.md index 5213e06..6fdd0d6 100644 --- a/modules/vlan_policy_add_vlan_list/README.md +++ b/modules/vlan_policy_add_vlan_list/README.md @@ -43,12 +43,12 @@ No modules. | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| | [auto\_allow\_on\_uplinks](#input\_auto\_allow\_on\_uplinks) | Used to determine whether this VLAN will be allowed on all uplink ports and PCs in this FI. | `bool` | `true` | no | -| [is\_native](#input\_is\_native) | Used to determine if this VLAN should be untagged on the interfaces. | `bool` | `false` | no | -| [multicast\_moid](#input\_multicast\_moid) | Multicast Policy moid map. | `string` | n/a | yes | +| [multicast\_policy\_moid](#input\_multicast\_policy\_moid) | Multicast Policy moid map. | `string` | n/a | yes | +| [name](#input\_name) | Prefix Name for VLANs. | `string` | `"VLAN"` | no | +| [native\_vlan](#input\_native\_vlan) | Used to determine if this VLAN should be untagged on the interfaces. | `bool` | `false` | no | | [tags](#input\_tags) | List of Tag Attributes to Assign to the Policy. | `list(map(string))` | `[]` | no | | [vlan\_list](#input\_vlan\_list) | List of VLAN ID's to add to a VLAN Policy. This string can contain ranges and comma seperated values. Like "2-10,21-30" | `string` | n/a | yes | | [vlan\_policy\_moid](#input\_vlan\_policy\_moid) | VLAN Policy (Ethernet Network Policy) moid. | `string` | n/a | yes | -| [vlan\_prefix](#input\_vlan\_prefix) | Prefix Name for VLANs. | `string` | `"VLAN"` | no | ## Outputs diff --git a/modules/vlan_policy_add_vlan_list/main.tf b/modules/vlan_policy_add_vlan_list/main.tf index e4b8be1..9e1af70 100644 --- a/modules/vlan_policy_add_vlan_list/main.tf +++ b/modules/vlan_policy_add_vlan_list/main.tf @@ -1,13 +1,13 @@ locals { vlan_split = length( regexall("-", var.vlan_list)) > 0 ? tolist( - split(",", var.vlan_list) + split(",", var.vlan_list) ) : length(regexall(",", var.vlan_list)) > 0 ? tolist(split(",", var.vlan_list)) : [var.vlan_list] vlan_lists = length(local.vlan_split) == 1 ? local.vlan_split : flatten( [for s in local.vlan_split : length(regexall("-", s)) > 0 ? [ - for v in range(tonumber(element(split("-", s), 0)), (tonumber(element(split("-", s), 1)) + 1)) : tonumber(v)] : [s] + for v in range(tonumber(element(split("-", s), 0)), (tonumber(element(split("-", s), 1)) + 1)) : tonumber(v)] : [s] ]) - vlan_list = toset(local.vlan_lists) + vlan_list = toset(local.vlan_lists) } #__________________________________________________________________ @@ -22,13 +22,13 @@ resource "intersight_fabric_vlan" "vlan_list" { is_native = var.native_vlan name = length( regexall("^[0-9]+$", var.vlan_list) - ) > 0 ? var.name : length( + ) > 0 ? var.name : length( regexall("^[0-9]{4}$", each.value) - ) > 0 ? join("-vl", [var.name, each.value]) : length( + ) > 0 ? join("-vl", [var.name, each.value]) : length( regexall("^[0-9]{3}$", each.value) - ) > 0 ? join("-vl0", [var.name, each.value]) : length( + ) > 0 ? join("-vl0", [var.name, each.value]) : length( regexall("^[0-9]{2}$", each.value) - ) > 0 ? join("-vl00", [var.name, each.value]) : join( + ) > 0 ? join("-vl00", [var.name, each.value]) : join( "-vl000", [var.name, each.value] ) vlan_id = each.value