Skip to content

Commit 01fefd8

Browse files
add wireless_device_provision, add additional params in enterprise_ssid, increase timeout in fabric_device
1 parent 25435ac commit 01fefd8

17 files changed

+924
-8
lines changed

docs/data-sources/wireless_enterprise_ssid.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ data "catalystcenter_wireless_enterprise_ssid" "example" {
2828
### Read-Only
2929

3030
- `aaa_override` (Boolean) AAA Override
31+
- `auth_key_mgmt` (Set of String) Takes string inputs for the AKMs that should be set true. Possible AKM values : dot1x,dot1x_ft, dot1x_sha, psk, psk_ft, psk_sha, owe, sae, sae_ft
3132
- `basic_service_set_client_idle_timeout` (Number) Basic Service Set Client Idle Timeout
3233
- `client_exclusion_timeout` (Number) Client Exclusion Timeout
3334
- `client_rate_limit` (Number) Client Rate Limit (in bits per second)
@@ -41,6 +42,8 @@ data "catalystcenter_wireless_enterprise_ssid" "example" {
4142
- `enable_neighbor_list` (Boolean) Enable Neighbor List
4243
- `enable_session_time_out` (Boolean) Enable Session Timeout
4344
- `fast_transition` (String) Fast Transition
45+
- `ghz24_policy` (String) Ghz24 Policy
46+
- `ghz6_policy_client_steering` (Boolean) Ghz6 Policy Client Steering
4447
- `mfp_client_protection` (String) Mfp Client Protection
4548
- `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))
4649
- `name` (String) SSID Name
@@ -50,6 +53,9 @@ data "catalystcenter_wireless_enterprise_ssid" "example" {
5053
- `profile_name` (String) Profile Name
5154
- `protected_management_frame` (String) Protected Management Frame
5255
- `radio_policy` (String) Radio Policy
56+
- `rsn_cipher_suite_ccmp256` (Boolean) Rsn Cipher Suite Ccmp256
57+
- `rsn_cipher_suite_gcmp128` (Boolean) Rsn Cipher Suite Gcmp 128
58+
- `rsn_cipher_suite_gcmp256` (Boolean) Rsn Cipher Suite Gcmp256
5359
- `security_level` (String) Security Level
5460
- `session_time_out` (Number) Session Time Out
5561
- `traffic_type` (String) Traffic Type

docs/resources/fabric_device.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,6 @@ resource "catalystcenter_fabric_device" "example" {
3939

4040
- `border_priority` (Number) Border priority of the fabric border device. A lower value indicates higher priority
4141
- Range: `1`-`9`
42-
- Default value: `10`
4342
- `border_types` (List of String) List of the border types of the fabric device. Allowed values are [LAYER_2, LAYER_3]
4443
- `default_exit` (Boolean) Set this to make the fabric border device the gateway of last resort for this site. Any unknown traffic will be sent to this fabric border device from edge nodes
4544
- `import_external_routes` (Boolean) Set this to import external routes from other routing protocols (such as BGP) to the fabric control plane
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
---
2+
# generated by https://github.com/hashicorp/terraform-plugin-docs
3+
page_title: "catalystcenter_wireless_device_provision Resource - terraform-provider-catalystcenter"
4+
subcategory: "Wireless"
5+
description: |-
6+
This resource provision wireless device. Every time this resource is created or re-created, the Catalyst Center considers provisioning new wireless device. When this resource is destroyed or updated or refreshed, no actions are done either on CatalystCenter or on devices
7+
---
8+
9+
# catalystcenter_wireless_device_provision (Resource)
10+
11+
This resource provision wireless device. Every time this resource is created or re-created, the Catalyst Center considers provisioning new wireless device. When this resource is destroyed or updated or refreshed, no actions are done either on CatalystCenter or on devices
12+
13+
## Example Usage
14+
15+
```terraform
16+
resource "catalystcenter_wireless_device_provision" "example" {
17+
device_name = "WLC_01"
18+
site = "Global/Area1"
19+
managed_ap_locations = ["Global/Area1"]
20+
}
21+
```
22+
23+
<!-- schema generated by tfplugindocs -->
24+
## Schema
25+
26+
### Required
27+
28+
- `device_name` (String) Controller Name
29+
- `managed_ap_locations` (Set of String) List of managed AP locations
30+
- `site` (String) Full Site Hierarchy where device has to be assigned
31+
32+
### Optional
33+
34+
- `dynamic_interfaces` (Attributes List) Dynamic Interface Details. The required attributes depend on the device type (see [below for nested schema](#nestedatt--dynamic_interfaces))
35+
36+
### Read-Only
37+
38+
- `id` (String) The id of the object
39+
40+
<a id="nestedatt--dynamic_interfaces"></a>
41+
### Nested Schema for `dynamic_interfaces`
42+
43+
Optional:
44+
45+
- `interface_gateway` (String) Interface Gateway. Required for AireOS
46+
- `interface_ip_address` (String) Interface IP Address. Required for AireOS
47+
- `interface_name` (String) Interface Name. Required for both AireOS and EWLC.
48+
- `interface_netmask` (Number) Interface Netmask In CIDR. Required for AireOS
49+
- `lag_or_port_number` (String) LAG or Port Number. Required for AireOS
50+
- `vlan_id` (Number) VLAN ID. Required for both AireOS and EWLC

docs/resources/wireless_enterprise_ssid.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ resource "catalystcenter_wireless_enterprise_ssid" "example" {
4848
### Optional
4949

5050
- `aaa_override` (Boolean) AAA Override
51+
- `auth_key_mgmt` (Set of String) Takes string inputs for the AKMs that should be set true. Possible AKM values : dot1x,dot1x_ft, dot1x_sha, psk, psk_ft, psk_sha, owe, sae, sae_ft
5152
- `basic_service_set_client_idle_timeout` (Number) Basic Service Set Client Idle Timeout
5253
- `client_exclusion_timeout` (Number) Client Exclusion Timeout
5354
- `client_rate_limit` (Number) Client Rate Limit (in bits per second)
@@ -62,6 +63,9 @@ resource "catalystcenter_wireless_enterprise_ssid" "example" {
6263
- `enable_session_time_out` (Boolean) Enable Session Timeout
6364
- `fast_transition` (String) Fast Transition
6465
- Choices: `Adaptive`, `Enable`, `Disable`
66+
- `ghz24_policy` (String) Ghz24 Policy
67+
- Choices: `dot11-g-only`, `dot11-bg-only`
68+
- `ghz6_policy_client_steering` (Boolean) Ghz6 Policy Client Steering
6569
- `mfp_client_protection` (String) Mfp Client Protection
6670
- Choices: `Optional`, `Disabled`, `Required`
6771
- `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))
@@ -73,6 +77,9 @@ resource "catalystcenter_wireless_enterprise_ssid" "example" {
7377
- Choices: `Optional`, `Disabled`, `Required`
7478
- `radio_policy` (String) Radio Policy
7579
- Choices: `Triple band operation(2.4GHz, 5GHz and 6GHz)`, `Triple band operation with band select`, `5GHz only`, `2.4GHz only`, `6GHz only`
80+
- `rsn_cipher_suite_ccmp256` (Boolean) Rsn Cipher Suite Ccmp256
81+
- `rsn_cipher_suite_gcmp128` (Boolean) Rsn Cipher Suite Gcmp 128
82+
- `rsn_cipher_suite_gcmp256` (Boolean) Rsn Cipher Suite Gcmp256
7683
- `session_time_out` (Number) Session Time Out
7784
- `traffic_type` (String) Traffic Type
7885
- Choices: `voicedata`, `data`
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
resource "catalystcenter_wireless_device_provision" "example" {
2+
device_name = "WLC_01"
3+
site = "Global/Area1"
4+
managed_ap_locations = ["Global/Area1"]
5+
}

gen/definitions/fabric_device.yaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,6 @@ attributes:
7474
max_int: 9
7575
description: Border priority of the fabric border device. A lower value indicates higher priority
7676
example: 5
77-
default_value: 10
7877
- model_name: prependAutonomousSystemCount
7978
data_path: '0.borderDeviceSettings.layer3Settings'
8079
response_data_path: response.0.borderDeviceSettings.layer3Settings.prependAutonomousSystemCount
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
---
2+
name: Wireless Device Provision
3+
rest_endpoint: /dna/intent/api/v1/wireless/provision
4+
res_description: 'This resource provision wireless device. Every time this resource is created or re-created, the Catalyst Center considers provisioning new wireless device.
5+
When this resource is destroyed or updated or refreshed, no actions are done either on CatalystCenter or on devices'
6+
no_data_source: true
7+
no_read: true
8+
no_delete: true
9+
no_import: true
10+
put_no_id: true
11+
id_from_attribute: true
12+
doc_category: Wireless
13+
max_async_wait_time: 300
14+
test_tags: [WIRELESS]
15+
attributes:
16+
- model_name: deviceName
17+
requires_replace: true
18+
data_path: '0'
19+
id: true
20+
mandatory: true
21+
description: Controller Name
22+
type: String
23+
example: WLC_01
24+
- model_name: site
25+
requires_replace: true
26+
data_path: '0'
27+
mandatory: true
28+
description: Full Site Hierarchy where device has to be assigned
29+
type: String
30+
example: Global/Area1
31+
- model_name: managedAPLocations
32+
tf_name: managed_ap_locations
33+
requires_replace: true
34+
data_path: '0'
35+
mandatory: true
36+
description: List of managed AP locations
37+
type: Set
38+
element_type: String
39+
example: Global/Area1
40+
- model_name: dynamicInterfaces
41+
type: List
42+
description: Dynamic Interface Details. The required attributes depend on the device type
43+
requires_replace: true
44+
data_path: '0'
45+
exclude_test: true
46+
attributes:
47+
- model_name: interfaceIPAddress
48+
tf_name: interface_ip_address
49+
type: String
50+
description: Interface IP Address. Required for AireOS
51+
- model_name: interfaceNetmaskInCIDR
52+
tf_name: interface_netmask
53+
type: Int64
54+
description: Interface Netmask In CIDR. Required for AireOS
55+
- model_name: interfaceGateway
56+
type: String
57+
description: Interface Gateway. Required for AireOS
58+
- model_name: lagOrPortNumber
59+
type: String
60+
description: LAG or Port Number. Required for AireOS
61+
- model_name: vlanId
62+
type: Int64
63+
description: VLAN ID. Required for both AireOS and EWLC
64+
- model_name: interfaceName
65+
type: String
66+
description: Interface Name. Required for both AireOS and EWLC.
67+

gen/definitions/wireless_enterprise_ssid.yaml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -185,3 +185,37 @@ attributes:
185185
response_data_path: 0.ssidDetails.0.clientRateLimit
186186
description: Client Rate Limit (in bits per second)
187187
exclude_test: true
188+
- model_name: authKeyMgmt
189+
type: Set
190+
element_type: String
191+
response_data_path: 0.ssidDetails.0.authKeyMgmt
192+
description: 'Takes string inputs for the AKMs that should be set true. Possible AKM values : dot1x,dot1x_ft, dot1x_sha, psk, psk_ft, psk_sha, owe, sae, sae_ft'
193+
exclude_test: true
194+
- model_name: rsnCipherSuiteGcmp256
195+
type: Bool
196+
response_data_path: 0.ssidDetails.0.rsnCipherSuiteGcmp256
197+
description: Rsn Cipher Suite Gcmp256
198+
exclude_test: true
199+
- model_name: rsnCipherSuiteCcmp256
200+
type: Bool
201+
response_data_path: 0.ssidDetails.0.rsnCipherSuiteCcmp256
202+
description: Rsn Cipher Suite Ccmp256
203+
exclude_test: true
204+
- model_name: rsnCipherSuiteGcmp128
205+
type: Bool
206+
response_data_path: 0.ssidDetails.0.rsnCipherSuiteGcmp128
207+
description: Rsn Cipher Suite Gcmp 128
208+
exclude_test: true
209+
- model_name: ghz6PolicyClientSteering
210+
type: Bool
211+
response_data_path: 0.ssidDetails.0.ghz6PolicyClientSteering
212+
description: Ghz6 Policy Client Steering
213+
exclude_test: true
214+
- model_name: ghz24Policy
215+
type: String
216+
enum_values:
217+
- dot11-g-only
218+
- dot11-bg-only
219+
response_data_path: 0.ssidDetails.0.ghz24Policy
220+
description: Ghz24 Policy
221+
exclude_test: true

internal/provider/data_source_catalystcenter_wireless_enterprise_ssid.go

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -183,6 +183,31 @@ func (d *WirelessEnterpriseSSIDDataSource) Schema(ctx context.Context, req datas
183183
MarkdownDescription: "Client Rate Limit (in bits per second)",
184184
Computed: true,
185185
},
186+
"auth_key_mgmt": schema.SetAttribute{
187+
MarkdownDescription: "Takes string inputs for the AKMs that should be set true. Possible AKM values : dot1x,dot1x_ft, dot1x_sha, psk, psk_ft, psk_sha, owe, sae, sae_ft",
188+
ElementType: types.StringType,
189+
Computed: true,
190+
},
191+
"rsn_cipher_suite_gcmp256": schema.BoolAttribute{
192+
MarkdownDescription: "Rsn Cipher Suite Gcmp256",
193+
Computed: true,
194+
},
195+
"rsn_cipher_suite_ccmp256": schema.BoolAttribute{
196+
MarkdownDescription: "Rsn Cipher Suite Ccmp256",
197+
Computed: true,
198+
},
199+
"rsn_cipher_suite_gcmp128": schema.BoolAttribute{
200+
MarkdownDescription: "Rsn Cipher Suite Gcmp 128",
201+
Computed: true,
202+
},
203+
"ghz6_policy_client_steering": schema.BoolAttribute{
204+
MarkdownDescription: "Ghz6 Policy Client Steering",
205+
Computed: true,
206+
},
207+
"ghz24_policy": schema.StringAttribute{
208+
MarkdownDescription: "Ghz24 Policy",
209+
Computed: true,
210+
},
186211
},
187212
}
188213
}

internal/provider/model_catalystcenter_fabric_device.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ func (data *FabricDevice) fromBody(ctx context.Context, res gjson.Result) {
147147
if value := res.Get("response.0.borderDeviceSettings.layer3Settings.borderPriority"); value.Exists() {
148148
data.BorderPriority = types.Int64Value(value.Int())
149149
} else {
150-
data.BorderPriority = types.Int64Value(10)
150+
data.BorderPriority = types.Int64Null()
151151
}
152152
if value := res.Get("response.0.borderDeviceSettings.layer3Settings.prependAutonomousSystemCount"); value.Exists() {
153153
data.PrependAutonomousSystemCount = types.Int64Value(value.Int())
@@ -197,7 +197,7 @@ func (data *FabricDevice) updateFromBody(ctx context.Context, res gjson.Result)
197197
}
198198
if value := res.Get("response.0.borderDeviceSettings.layer3Settings.borderPriority"); value.Exists() && !data.BorderPriority.IsNull() {
199199
data.BorderPriority = types.Int64Value(value.Int())
200-
} else if data.BorderPriority.ValueInt64() != 10 {
200+
} else {
201201
data.BorderPriority = types.Int64Null()
202202
}
203203
if value := res.Get("response.0.borderDeviceSettings.layer3Settings.prependAutonomousSystemCount"); value.Exists() && !data.PrependAutonomousSystemCount.IsNull() {

0 commit comments

Comments
 (0)