Skip to content

Commit

Permalink
Add wireless enterprise ssid resource and data source (#39)
Browse files Browse the repository at this point in the history
  • Loading branch information
kuba-mazurkiewicz authored Feb 21, 2024
1 parent 607c219 commit 014a2b3
Show file tree
Hide file tree
Showing 12 changed files with 1,764 additions and 0 deletions.
64 changes: 64 additions & 0 deletions docs/data-sources/wireless_enterprise_ssid.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "catalystcenter_wireless_enterprise_ssid Data Source - terraform-provider-catalystcenter"
subcategory: "Wireless"
description: |-
This data source can read the Wireless Enterprise SSID.
---

# catalystcenter_wireless_enterprise_ssid (Data Source)

This data source can read the Wireless Enterprise SSID.

## Example Usage

```terraform
data "catalystcenter_wireless_enterprise_ssid" "example" {
id = "mySSID1"
}
```

<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `id` (String) The id of the object

### Read-Only

- `aaa_override` (Boolean) AAA Override
- `basic_service_set_client_idle_timeout` (Number) Basic Service Set Client Idle Timeout
- `client_exclusion_timeout` (Number) Client Exclusion Timeout
- `client_rate_limit` (Number) Client Rate Limit (in bits per second)
- `coverage_hole_detection_enable` (Boolean) Coverage Hole Detection Enable
- `enable_basic_service_set_max_idle` (Boolean) Enable Basic Service Set Max Idle
- `enable_broadcast_ssid` (Boolean) Enable Broadcast SSID
- `enable_client_exclusion` (Boolean) Enable Client Exclusion
- `enable_directed_multicast_service` (Boolean) Enable Directed Multicast Service
- `enable_fast_lane` (Boolean) Enable FastLane
- `enable_mac_filtering` (Boolean) Enable MAC Filtering
- `enable_neighbor_list` (Boolean) Enable Neighbor List
- `enable_session_time_out` (Boolean) Enable Session Timeout
- `fast_transition` (String) Fast Transition
- `mfp_client_protection` (String) Mfp Client Protection
- `multi_psk_settings` (Attributes List) Multi PSK Settings (Only applicable for SSID with PERSONAL auth type and PSK) (see [below for nested schema](#nestedatt--multi_psk_settings))
- `name` (String) SSID Name
- `nas_options` (List of String) Nas Options
- `passphrase` (String) Passphrase
- `policy_profile_name` (String) Policy Profile Name
- `profile_name` (String) Profile Name
- `protected_management_frame` (String) Protected Management Frame
- `radio_policy` (String) Radio Policy
- `security_level` (String) Security Level
- `session_time_out` (Number) Session Time Out
- `traffic_type` (String) Traffic Type

<a id="nestedatt--multi_psk_settings"></a>
### Nested Schema for `multi_psk_settings`

Read-Only:

- `passphrase` (String) Passphrase
- `passphrase_type` (String) Passphrase Type
- `priority` (String) Priority
100 changes: 100 additions & 0 deletions docs/resources/wireless_enterprise_ssid.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "catalystcenter_wireless_enterprise_ssid Resource - terraform-provider-catalystcenter"
subcategory: "Wireless"
description: |-
This resource can manage a Wireless Enterprise SSID.
---

# catalystcenter_wireless_enterprise_ssid (Resource)

This resource can manage a Wireless Enterprise SSID.

## Example Usage

```terraform
resource "catalystcenter_wireless_enterprise_ssid" "example" {
name = "mySSID1"
security_level = "wpa3_enterprise"
passphrase = "Cisco123"
enable_fast_lane = false
enable_mac_filtering = false
traffic_type = "data"
radio_policy = "Triple band operation(2.4GHz, 5GHz and 6GHz)"
enable_broadcast_ssid = true
fast_transition = "Adaptive"
enable_session_time_out = true
session_time_out = 1800
enable_client_exclusion = true
client_exclusion_timeout = 180
enable_basic_service_set_max_idle = true
basic_service_set_client_idle_timeout = 300
enable_directed_multicast_service = true
enable_neighbor_list = true
mfp_client_protection = "data"
protected_management_frame = "Disabled"
}
```

<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `name` (String) SSID Name
- `security_level` (String) Security Level
- Choices: `wpa2_enterprise`, `wpa2_personal`, `open`, `wpa3_enterprise`, `wpa3_personal`, `wpa2_wpa3_personal`, `wpa2_wpa3_enterprise`

### Optional

- `aaa_override` (Boolean) AAA Override
- `basic_service_set_client_idle_timeout` (Number) Basic Service Set Client Idle Timeout
- `client_exclusion_timeout` (Number) Client Exclusion Timeout
- `client_rate_limit` (Number) Client Rate Limit (in bits per second)
- `coverage_hole_detection_enable` (Boolean) Coverage Hole Detection Enable
- `enable_basic_service_set_max_idle` (Boolean) Enable Basic Service Set Max Idle
- `enable_broadcast_ssid` (Boolean) Enable Broadcast SSID
- `enable_client_exclusion` (Boolean) Enable Client Exclusion
- `enable_directed_multicast_service` (Boolean) Enable Directed Multicast Service
- `enable_fast_lane` (Boolean) Enable FastLane
- `enable_mac_filtering` (Boolean) Enable MAC Filtering
- `enable_neighbor_list` (Boolean) Enable Neighbor List
- `enable_session_time_out` (Boolean) Enable Session Timeout
- `fast_transition` (String) Fast Transition
- Choices: `Adaptive`, `Enable`, `Disable`
- `mfp_client_protection` (String) Mfp Client Protection
- Choices: `voicedata`, `data`
- `multi_psk_settings` (Attributes List) Multi PSK Settings (Only applicable for SSID with PERSONAL auth type and PSK) (see [below for nested schema](#nestedatt--multi_psk_settings))
- `nas_options` (List of String) Nas Options
- `passphrase` (String) Passphrase
- `policy_profile_name` (String) Policy Profile Name
- `profile_name` (String) Profile Name
- `protected_management_frame` (String) Protected Management Frame
- Choices: `Optional`, `Disabled`, `Required`
- `radio_policy` (String) Radio Policy
- Choices: `Triple band operation(2.4GHz, 5GHz and 6GHz)`, `Triple band operation with band select`, `5GHz only`, `2.4GHz only`, `6GHz only`
- `session_time_out` (Number) Session Time Out
- `traffic_type` (String) Traffic Type
- Choices: `voicedata`, `data`

### Read-Only

- `id` (String) The id of the object

<a id="nestedatt--multi_psk_settings"></a>
### Nested Schema for `multi_psk_settings`

Optional:

- `passphrase` (String) Passphrase
- `passphrase_type` (String) Passphrase Type
- Choices: `ASCII`, `HEX`
- `priority` (String) Priority

## Import

Import is supported using the following syntax:

```shell
terraform import catalystcenter_wireless_enterprise_ssid.example "mySSID1"
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
data "catalystcenter_wireless_enterprise_ssid" "example" {
id = "mySSID1"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
terraform import catalystcenter_wireless_enterprise_ssid.example "mySSID1"
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
resource "catalystcenter_wireless_enterprise_ssid" "example" {
name = "mySSID1"
security_level = "wpa3_enterprise"
passphrase = "Cisco123"
enable_fast_lane = false
enable_mac_filtering = false
traffic_type = "data"
radio_policy = "Triple band operation(2.4GHz, 5GHz and 6GHz)"
enable_broadcast_ssid = true
fast_transition = "Adaptive"
enable_session_time_out = true
session_time_out = 1800
enable_client_exclusion = true
client_exclusion_timeout = 180
enable_basic_service_set_max_idle = true
basic_service_set_client_idle_timeout = 300
enable_directed_multicast_service = true
enable_neighbor_list = true
mfp_client_protection = "data"
protected_management_frame = "Disabled"
}
185 changes: 185 additions & 0 deletions gen/definitions/wireless_enterprise_ssid.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,185 @@
---
name: Wireless Enterprise SSID
rest_endpoint: /dna/intent/api/v1/enterprise-ssid
id_query_param: ssidName
id_from_attribute: true
doc_category: Wireless
attributes:
- model_name: name
type: String
response_data_path: 0.ssidDetails.0.name
id: true
description: SSID Name
example: mySSID1
- model_name: securityLevel
type: String
response_data_path: 0.ssidDetails.0.securityLevel
enum_values:
- wpa2_enterprise
- wpa2_personal
- open
- wpa3_enterprise
- wpa3_personal
- wpa2_wpa3_personal
- wpa2_wpa3_enterprise
mandatory: true
description: Security Level
example: wpa3_enterprise
- model_name: passphrase
type: String
description: Passphrase
write_only: true
example: Cisco123
- model_name: enableFastLane
type: Bool
response_data_path: 0.ssidDetails.0.enableFastLane
description: Enable FastLane
example: false
- model_name: enableMACFiltering
tf_name: enable_mac_filtering
type: Bool
response_data_path: 0.ssidDetails.0.enableMACFiltering
description: Enable MAC Filtering
example: false
- model_name: trafficType
type: String
response_data_path: 0.ssidDetails.0.trafficType
description: Traffic Type
enum_values:
- voicedata
- data
example: data
- model_name: radioPolicy
type: String
response_data_path: 0.ssidDetails.0.radioPolicy
description: Radio Policy
enum_values:
- Triple band operation(2.4GHz, 5GHz and 6GHz)
- Triple band operation with band select
- 5GHz only
- 2.4GHz only
- 6GHz only
example: Triple band operation(2.4GHz, 5GHz and 6GHz)
write_only: true
- model_name: enableBroadcastSSID
tf_name: enable_broadcast_ssid
response_data_path: 0.ssidDetails.0.enableBroadcastSSID
type: Bool
description: Enable Broadcast SSID
example: true
- model_name: fastTransition
type: String
response_data_path: 0.ssidDetails.0.fastTransition
description: Fast Transition
enum_values:
- Adaptive
- Enable
- Disable
example: Adaptive
- model_name: enableSessionTimeOut
type: Bool
response_data_path: 0.ssidDetails.0.enableSessionTimeOut
description: Enable Session Timeout
example: true
- model_name: sessionTimeOut
type: Int64
response_data_path: 0.ssidDetails.0.sessionTimeOut
description: Session Time Out
example: 1800
- model_name: enableClientExclusion
type: Bool
response_data_path: 0.ssidDetails.0.enableClientExclusion
description: Enable Client Exclusion
example: true
- model_name: clientExclusionTimeout
type: Int64
response_data_path: 0.ssidDetails.0.clientExclusionTimeout
description: Client Exclusion Timeout
example: 180
- model_name: enableBasicServiceSetMaxIdle
type: Bool
response_data_path: 0.ssidDetails.0.enableBasicServiceSetMaxIdle
description: Enable Basic Service Set Max Idle
example: true
- model_name: basicServiceSetClientIdleTimeout
type: Int64
response_data_path: 0.ssidDetails.0.basicServiceSetClientIdleTimeout
description: Basic Service Set Client Idle Timeout
example: 300
- model_name: enableDirectedMulticastService
type: Bool
response_data_path: 0.ssidDetails.0.enableDirectedMulticastService
description: Enable Directed Multicast Service
example: true
- model_name: enableNeighborList
type: Bool
response_data_path: 0.ssidDetails.0.enableNeighborList
description: Enable Neighbor List
example: true
- model_name: mfpClientProtection
type: String
description: Mfp Client Protection
response_data_path: 0.ssidDetails.0.mfpClientProtection
enum_values:
- voicedata
- data
example: data
- model_name: nasOptions
type: StringList
response_data_path: 0.ssidDetails.0.nasOptions
description: Nas Options
exclude_test: true
- model_name: profileName
type: String
response_data_path: 0.ssidDetails.0.profileName
description: Profile Name
exclude_test: true
- model_name: policyProfileName
type: String
response_data_path: 0.ssidDetails.0.policyProfileName
description: Policy Profile Name
exclude_test: true
- model_name: aaaOverride
tf_name: aaa_override
type: Bool
response_data_path: 0.ssidDetails.0.aaaOverride
description: AAA Override
exclude_test: true
- model_name: coverageHoleDetectionEnable
type: Bool
response_data_path: 0.ssidDetails.0.coverageHoleDetectionEnable
description: Coverage Hole Detection Enable
exclude_test: true
- model_name: protectedManagementFrame
type: String
response_data_path: 0.ssidDetails.0.protectedManagementFrame
description: Protected Management Frame
enum_values:
- Optional
- Disabled
- Required
example: Disabled
- model_name: multiPSKSettings
tf_name: multi_psk_settings
response_data_path: 0.ssidDetails.0.multiPSKSettings
type: List
description: Multi PSK Settings (Only applicable for SSID with PERSONAL auth type and PSK)
exclude_test: true
attributes:
- model_name: priority
type: String
description: Priority
- model_name: passphraseType
type: String
enum_values:
- ASCII
- HEX
description: Passphrase Type
- model_name: passphrase
type: String
description: Passphrase
- model_name: clientRateLimit
type: Int64
response_data_path: 0.ssidDetails.0.clientRateLimit
description: Client Rate Limit (in bits per second)
exclude_test: true
Loading

0 comments on commit 014a2b3

Please sign in to comment.