@pulumiverse/unifi 0.3.0-alpha.1780644697 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/account.d.ts +31 -17
- package/account.d.ts.map +1 -0
- package/account.js +33 -7
- package/account.js.map +1 -1
- package/ap/getGroup.d.ts +71 -0
- package/ap/getGroup.d.ts.map +1 -0
- package/ap/getGroup.js +73 -0
- package/ap/getGroup.js.map +1 -0
- package/ap/group.d.ts +106 -0
- package/ap/group.d.ts.map +1 -0
- package/ap/group.js +112 -0
- package/ap/group.js.map +1 -0
- package/ap/index.d.ts +7 -0
- package/ap/index.d.ts.map +1 -0
- package/ap/index.js +48 -0
- package/ap/index.js.map +1 -0
- package/config/index.d.ts +1 -0
- package/config/index.d.ts.map +1 -0
- package/config/vars.d.ts +5 -0
- package/config/vars.d.ts.map +1 -0
- package/config/vars.js +31 -2
- package/config/vars.js.map +1 -1
- package/device.d.ts +87 -14
- package/device.d.ts.map +1 -0
- package/device.js +49 -5
- package/device.js.map +1 -1
- package/dns/getRecord.d.ts +4 -3
- package/dns/getRecord.d.ts.map +1 -0
- package/dns/getRecord.js +25 -2
- package/dns/getRecord.js.map +1 -1
- package/dns/getRecords.d.ts +2 -1
- package/dns/getRecords.d.ts.map +1 -0
- package/dns/getRecords.js +25 -2
- package/dns/getRecords.js.map +1 -1
- package/dns/index.d.ts +1 -0
- package/dns/index.d.ts.map +1 -0
- package/dns/index.js +25 -2
- package/dns/index.js.map +1 -1
- package/dns/record.d.ts +17 -16
- package/dns/record.d.ts.map +1 -0
- package/dns/record.js +27 -4
- package/dns/record.js.map +1 -1
- package/dynamicDNS.d.ts +13 -12
- package/dynamicDNS.d.ts.map +1 -0
- package/dynamicDNS.js +27 -4
- package/dynamicDNS.js.map +1 -1
- package/firewall/getZone.d.ts +48 -1
- package/firewall/getZone.d.ts.map +1 -0
- package/firewall/getZone.js +71 -2
- package/firewall/getZone.js.map +1 -1
- package/firewall/group.d.ts +7 -6
- package/firewall/group.d.ts.map +1 -0
- package/firewall/group.js +27 -4
- package/firewall/group.js.map +1 -1
- package/firewall/index.d.ts +4 -0
- package/firewall/index.d.ts.map +1 -0
- package/firewall/index.js +31 -3
- package/firewall/index.js.map +1 -1
- package/firewall/rule.d.ts +58 -55
- package/firewall/rule.d.ts.map +1 -0
- package/firewall/rule.js +29 -4
- package/firewall/rule.js.map +1 -1
- package/firewall/zone.d.ts +10 -7
- package/firewall/zone.d.ts.map +1 -0
- package/firewall/zone.js +30 -5
- package/firewall/zone.js.map +1 -1
- package/firewall/zonePolicy.d.ts +36 -37
- package/firewall/zonePolicy.d.ts.map +1 -0
- package/firewall/zonePolicy.js +31 -6
- package/firewall/zonePolicy.js.map +1 -1
- package/firewall/zonePolicyOrder.d.ts +170 -0
- package/firewall/zonePolicyOrder.d.ts.map +1 -0
- package/firewall/zonePolicyOrder.js +159 -0
- package/firewall/zonePolicyOrder.js.map +1 -0
- package/getAccount.d.ts +7 -2
- package/getAccount.d.ts.map +1 -0
- package/getAccount.js +25 -2
- package/getAccount.js.map +1 -1
- package/getApGroup.d.ts +13 -10
- package/getApGroup.d.ts.map +1 -0
- package/getApGroup.js +33 -6
- package/getApGroup.js.map +1 -1
- package/getNetwork.d.ts +21 -4
- package/getNetwork.d.ts.map +1 -0
- package/getNetwork.js +25 -2
- package/getNetwork.js.map +1 -1
- package/getRadiusProfile.d.ts +3 -2
- package/getRadiusProfile.d.ts.map +1 -0
- package/getRadiusProfile.js +25 -2
- package/getRadiusProfile.js.map +1 -1
- package/iam/getGroup.d.ts +3 -2
- package/iam/getGroup.d.ts.map +1 -0
- package/iam/getGroup.js +25 -2
- package/iam/getGroup.js.map +1 -1
- package/iam/getUser.d.ts +2 -1
- package/iam/getUser.d.ts.map +1 -0
- package/iam/getUser.js +25 -2
- package/iam/getUser.js.map +1 -1
- package/iam/group.d.ts +11 -8
- package/iam/group.d.ts.map +1 -0
- package/iam/group.js +29 -4
- package/iam/group.js.map +1 -1
- package/iam/index.d.ts +1 -0
- package/iam/index.d.ts.map +1 -0
- package/iam/index.js +25 -2
- package/iam/index.js.map +1 -1
- package/iam/user.d.ts +26 -25
- package/iam/user.d.ts.map +1 -0
- package/iam/user.js +27 -4
- package/iam/user.js.map +1 -1
- package/index.d.ts +3 -1
- package/index.d.ts.map +1 -0
- package/index.js +24 -10
- package/index.js.map +1 -1
- package/network.d.ts +486 -123
- package/network.d.ts.map +1 -0
- package/network.js +97 -4
- package/network.js.map +1 -1
- package/package.json +3 -3
- package/port/alFile.d.ts +10 -9
- package/port/alFile.d.ts.map +1 -0
- package/port/alFile.js +27 -4
- package/port/alFile.js.map +1 -1
- package/port/forward.d.ts +21 -20
- package/port/forward.d.ts.map +1 -0
- package/port/forward.js +27 -4
- package/port/forward.js.map +1 -1
- package/port/getProfile.d.ts +3 -2
- package/port/getProfile.d.ts.map +1 -0
- package/port/getProfile.js +25 -2
- package/port/getProfile.js.map +1 -1
- package/port/index.d.ts +1 -0
- package/port/index.d.ts.map +1 -0
- package/port/index.js +25 -2
- package/port/index.js.map +1 -1
- package/port/profile.d.ts +79 -72
- package/port/profile.d.ts.map +1 -0
- package/port/profile.js +27 -4
- package/port/profile.js.map +1 -1
- package/provider.d.ts +11 -6
- package/provider.d.ts.map +1 -0
- package/provider.js +28 -4
- package/provider.js.map +1 -1
- package/radiusProfile.d.ts +23 -22
- package/radiusProfile.d.ts.map +1 -0
- package/radiusProfile.js +27 -4
- package/radiusProfile.js.map +1 -1
- package/setting/autoSpeedtest.d.ts +6 -5
- package/setting/autoSpeedtest.d.ts.map +1 -0
- package/setting/autoSpeedtest.js +27 -4
- package/setting/autoSpeedtest.js.map +1 -1
- package/setting/connectivity.d.ts +73 -0
- package/setting/connectivity.d.ts.map +1 -0
- package/setting/connectivity.js +89 -0
- package/setting/connectivity.js.map +1 -0
- package/setting/country.d.ts +5 -4
- package/setting/country.d.ts.map +1 -0
- package/setting/country.js +27 -4
- package/setting/country.js.map +1 -1
- package/setting/dpi.d.ts +5 -4
- package/setting/dpi.d.ts.map +1 -0
- package/setting/dpi.js +27 -4
- package/setting/dpi.js.map +1 -1
- package/setting/etherLighting.d.ts +78 -0
- package/setting/etherLighting.d.ts.map +1 -0
- package/setting/etherLighting.js +79 -0
- package/setting/etherLighting.js.map +1 -0
- package/setting/globalSwitch.d.ts +131 -0
- package/setting/globalSwitch.d.ts.map +1 -0
- package/setting/globalSwitch.js +122 -0
- package/setting/globalSwitch.js.map +1 -0
- package/setting/guestAccess.d.ts +73 -72
- package/setting/guestAccess.d.ts.map +1 -0
- package/setting/guestAccess.js +27 -4
- package/setting/guestAccess.js.map +1 -1
- package/setting/index.d.ts +10 -0
- package/setting/index.d.ts.map +1 -0
- package/setting/index.js +41 -3
- package/setting/index.js.map +1 -1
- package/setting/ips.d.ts +23 -22
- package/setting/ips.d.ts.map +1 -0
- package/setting/ips.js +27 -4
- package/setting/ips.js.map +1 -1
- package/setting/lcdMonitor.d.ts +12 -11
- package/setting/lcdMonitor.d.ts.map +1 -0
- package/setting/lcdMonitor.js +27 -4
- package/setting/lcdMonitor.js.map +1 -1
- package/setting/locale.d.ts +4 -3
- package/setting/locale.d.ts.map +1 -0
- package/setting/locale.js +27 -4
- package/setting/locale.js.map +1 -1
- package/setting/magicSiteToSiteVpn.d.ts +4 -3
- package/setting/magicSiteToSiteVpn.d.ts.map +1 -0
- package/setting/magicSiteToSiteVpn.js +27 -4
- package/setting/magicSiteToSiteVpn.js.map +1 -1
- package/setting/mgmt.d.ts +37 -36
- package/setting/mgmt.d.ts.map +1 -0
- package/setting/mgmt.js +27 -4
- package/setting/mgmt.js.map +1 -1
- package/setting/networkOptimization.d.ts +4 -3
- package/setting/networkOptimization.d.ts.map +1 -0
- package/setting/networkOptimization.js +27 -4
- package/setting/networkOptimization.js.map +1 -1
- package/setting/ntp.d.ts +13 -12
- package/setting/ntp.d.ts.map +1 -0
- package/setting/ntp.js +27 -4
- package/setting/ntp.js.map +1 -1
- package/setting/radius.d.ts +17 -16
- package/setting/radius.d.ts.map +1 -0
- package/setting/radius.js +27 -4
- package/setting/radius.js.map +1 -1
- package/setting/rsyslogd.d.ts +24 -23
- package/setting/rsyslogd.d.ts.map +1 -0
- package/setting/rsyslogd.js +27 -4
- package/setting/rsyslogd.js.map +1 -1
- package/setting/sslInspection.d.ts +4 -3
- package/setting/sslInspection.d.ts.map +1 -0
- package/setting/sslInspection.js +27 -4
- package/setting/sslInspection.js.map +1 -1
- package/setting/teleport.d.ts +6 -5
- package/setting/teleport.d.ts.map +1 -0
- package/setting/teleport.js +27 -4
- package/setting/teleport.js.map +1 -1
- package/setting/usg.d.ts +75 -74
- package/setting/usg.d.ts.map +1 -0
- package/setting/usg.js +27 -4
- package/setting/usg.js.map +1 -1
- package/setting/usw.d.ts +4 -3
- package/setting/usw.d.ts.map +1 -0
- package/setting/usw.js +27 -4
- package/setting/usw.js.map +1 -1
- package/site.d.ts +5 -2
- package/site.d.ts.map +1 -0
- package/site.js +29 -4
- package/site.js.map +1 -1
- package/staticRoute.d.ts +12 -11
- package/staticRoute.d.ts.map +1 -0
- package/staticRoute.js +27 -4
- package/staticRoute.js.map +1 -1
- package/types/index.d.ts +1 -0
- package/types/index.d.ts.map +1 -0
- package/types/index.js +25 -2
- package/types/index.js.map +1 -1
- package/types/input.d.ts +240 -111
- package/types/input.d.ts.map +1 -0
- package/types/output.d.ts +129 -0
- package/types/output.d.ts.map +1 -0
- package/utilities.d.ts +1 -0
- package/utilities.d.ts.map +1 -0
- package/utilities.js +24 -1
- package/utilities.js.map +1 -1
- package/wlan.d.ts +81 -60
- package/wlan.d.ts.map +1 -0
- package/wlan.js +32 -5
- package/wlan.js.map +1 -1
package/account.d.ts
CHANGED
|
@@ -6,15 +6,16 @@ import * as pulumi from "@pulumi/pulumi";
|
|
|
6
6
|
* * WPA2/WPA3-Enterprise wireless authentication
|
|
7
7
|
* * 802.1X wired authentication
|
|
8
8
|
* * MAC-based device authentication
|
|
9
|
-
* * VLAN assignment through RADIUS attributes
|
|
9
|
+
* * Dynamic VLAN assignment through RADIUS attributes (see the `vlan` attribute)
|
|
10
10
|
*
|
|
11
11
|
* Important Notes:
|
|
12
12
|
* 1. For MAC-based authentication:
|
|
13
13
|
* * Use the device's MAC address as both username and password
|
|
14
14
|
* * Convert MAC address to uppercase with no separators (e.g., '00:11:22:33:44:55' becomes '001122334455')
|
|
15
15
|
* 2. VLAN Assignment:
|
|
16
|
-
* *
|
|
17
|
-
* * VLAN assignment
|
|
16
|
+
* * Set the `vlan` attribute to the 802.1Q VLAN ID the controller should assign to authenticated clients
|
|
17
|
+
* * VLAN assignment is delivered using the standard RADIUS tunnel attributes (`tunnelType`/`tunnelMediumType`)
|
|
18
|
+
* * If no VLAN is specified, clients will use the network's untagged VLAN
|
|
18
19
|
*
|
|
19
20
|
* Limitations:
|
|
20
21
|
* * MAC-based authentication works only for wireless and wired clients
|
|
@@ -42,7 +43,7 @@ export declare class Account extends pulumi.CustomResource {
|
|
|
42
43
|
*/
|
|
43
44
|
readonly name: pulumi.Output<string>;
|
|
44
45
|
/**
|
|
45
|
-
* The ID of
|
|
46
|
+
* The ID of a UniFi network configuration (the controller's `networkconfId`) to associate with this account. This is a reference to a network object and is distinct from the `vlan` attribute, which sets the 802.1Q VLAN ID delivered via RADIUS.
|
|
46
47
|
*/
|
|
47
48
|
readonly networkId: pulumi.Output<string | undefined>;
|
|
48
49
|
/**
|
|
@@ -71,6 +72,10 @@ export declare class Account extends pulumi.CustomResource {
|
|
|
71
72
|
* Only change this if you need specific tunneling behavior.
|
|
72
73
|
*/
|
|
73
74
|
readonly tunnelType: pulumi.Output<number | undefined>;
|
|
75
|
+
/**
|
|
76
|
+
* The 802.1Q VLAN ID to assign to clients authenticating with this account, used for RADIUS dynamic VLAN assignment. It is delivered together with the tunnel attributes (`tunnelType`/`tunnelMediumType`). Omitting this attribute means no VLAN is assigned; if a VLAN was set out-of-band (e.g. in the controller UI), omitting it here removes it on the next apply.
|
|
77
|
+
*/
|
|
78
|
+
readonly vlan: pulumi.Output<number | undefined>;
|
|
74
79
|
/**
|
|
75
80
|
* Create a Account resource with the given unique name, arguments, and options.
|
|
76
81
|
*
|
|
@@ -87,19 +92,19 @@ export interface AccountState {
|
|
|
87
92
|
/**
|
|
88
93
|
* The username for this RADIUS account. For regular users, this can be any unique identifier. For MAC-based authentication, this must be the device's MAC address in uppercase with no separators (e.g., '001122334455').
|
|
89
94
|
*/
|
|
90
|
-
name?: pulumi.Input<string>;
|
|
95
|
+
name?: pulumi.Input<string | undefined>;
|
|
91
96
|
/**
|
|
92
|
-
* The ID of
|
|
97
|
+
* The ID of a UniFi network configuration (the controller's `networkconfId`) to associate with this account. This is a reference to a network object and is distinct from the `vlan` attribute, which sets the 802.1Q VLAN ID delivered via RADIUS.
|
|
93
98
|
*/
|
|
94
|
-
networkId?: pulumi.Input<string>;
|
|
99
|
+
networkId?: pulumi.Input<string | undefined>;
|
|
95
100
|
/**
|
|
96
101
|
* The password for this RADIUS account. For MAC-based authentication, this must match the username (the MAC address). For regular users, this should be a secure password following your organization's password policies.
|
|
97
102
|
*/
|
|
98
|
-
password?: pulumi.Input<string>;
|
|
103
|
+
password?: pulumi.Input<string | undefined>;
|
|
99
104
|
/**
|
|
100
105
|
* The name of the UniFi site where this RADIUS account should be created. If not specified, the default site will be used.
|
|
101
106
|
*/
|
|
102
|
-
site?: pulumi.Input<string>;
|
|
107
|
+
site?: pulumi.Input<string | undefined>;
|
|
103
108
|
/**
|
|
104
109
|
* The RADIUS tunnel medium type attribute ([RFC 2868](https://tools.ietf.org/html/rfc2868), section 3.2). Common values:
|
|
105
110
|
* * `6` - 802 (includes Ethernet, Token Ring, FDDI) (default)
|
|
@@ -108,7 +113,7 @@ export interface AccountState {
|
|
|
108
113
|
*
|
|
109
114
|
* Only change this if you need specific tunneling behavior.
|
|
110
115
|
*/
|
|
111
|
-
tunnelMediumType?: pulumi.Input<number>;
|
|
116
|
+
tunnelMediumType?: pulumi.Input<number | undefined>;
|
|
112
117
|
/**
|
|
113
118
|
* The RADIUS tunnel type attribute ([RFC 2868](https://tools.ietf.org/html/rfc2868), section 3.1). Common values:
|
|
114
119
|
* * `13` - VLAN (default)
|
|
@@ -117,7 +122,11 @@ export interface AccountState {
|
|
|
117
122
|
*
|
|
118
123
|
* Only change this if you need specific tunneling behavior.
|
|
119
124
|
*/
|
|
120
|
-
tunnelType?: pulumi.Input<number>;
|
|
125
|
+
tunnelType?: pulumi.Input<number | undefined>;
|
|
126
|
+
/**
|
|
127
|
+
* The 802.1Q VLAN ID to assign to clients authenticating with this account, used for RADIUS dynamic VLAN assignment. It is delivered together with the tunnel attributes (`tunnelType`/`tunnelMediumType`). Omitting this attribute means no VLAN is assigned; if a VLAN was set out-of-band (e.g. in the controller UI), omitting it here removes it on the next apply.
|
|
128
|
+
*/
|
|
129
|
+
vlan?: pulumi.Input<number | undefined>;
|
|
121
130
|
}
|
|
122
131
|
/**
|
|
123
132
|
* The set of arguments for constructing a Account resource.
|
|
@@ -126,11 +135,11 @@ export interface AccountArgs {
|
|
|
126
135
|
/**
|
|
127
136
|
* The username for this RADIUS account. For regular users, this can be any unique identifier. For MAC-based authentication, this must be the device's MAC address in uppercase with no separators (e.g., '001122334455').
|
|
128
137
|
*/
|
|
129
|
-
name?: pulumi.Input<string>;
|
|
138
|
+
name?: pulumi.Input<string | undefined>;
|
|
130
139
|
/**
|
|
131
|
-
* The ID of
|
|
140
|
+
* The ID of a UniFi network configuration (the controller's `networkconfId`) to associate with this account. This is a reference to a network object and is distinct from the `vlan` attribute, which sets the 802.1Q VLAN ID delivered via RADIUS.
|
|
132
141
|
*/
|
|
133
|
-
networkId?: pulumi.Input<string>;
|
|
142
|
+
networkId?: pulumi.Input<string | undefined>;
|
|
134
143
|
/**
|
|
135
144
|
* The password for this RADIUS account. For MAC-based authentication, this must match the username (the MAC address). For regular users, this should be a secure password following your organization's password policies.
|
|
136
145
|
*/
|
|
@@ -138,7 +147,7 @@ export interface AccountArgs {
|
|
|
138
147
|
/**
|
|
139
148
|
* The name of the UniFi site where this RADIUS account should be created. If not specified, the default site will be used.
|
|
140
149
|
*/
|
|
141
|
-
site?: pulumi.Input<string>;
|
|
150
|
+
site?: pulumi.Input<string | undefined>;
|
|
142
151
|
/**
|
|
143
152
|
* The RADIUS tunnel medium type attribute ([RFC 2868](https://tools.ietf.org/html/rfc2868), section 3.2). Common values:
|
|
144
153
|
* * `6` - 802 (includes Ethernet, Token Ring, FDDI) (default)
|
|
@@ -147,7 +156,7 @@ export interface AccountArgs {
|
|
|
147
156
|
*
|
|
148
157
|
* Only change this if you need specific tunneling behavior.
|
|
149
158
|
*/
|
|
150
|
-
tunnelMediumType?: pulumi.Input<number>;
|
|
159
|
+
tunnelMediumType?: pulumi.Input<number | undefined>;
|
|
151
160
|
/**
|
|
152
161
|
* The RADIUS tunnel type attribute ([RFC 2868](https://tools.ietf.org/html/rfc2868), section 3.1). Common values:
|
|
153
162
|
* * `13` - VLAN (default)
|
|
@@ -156,5 +165,10 @@ export interface AccountArgs {
|
|
|
156
165
|
*
|
|
157
166
|
* Only change this if you need specific tunneling behavior.
|
|
158
167
|
*/
|
|
159
|
-
tunnelType?: pulumi.Input<number>;
|
|
168
|
+
tunnelType?: pulumi.Input<number | undefined>;
|
|
169
|
+
/**
|
|
170
|
+
* The 802.1Q VLAN ID to assign to clients authenticating with this account, used for RADIUS dynamic VLAN assignment. It is delivered together with the tunnel attributes (`tunnelType`/`tunnelMediumType`). Omitting this attribute means no VLAN is assigned; if a VLAN was set out-of-band (e.g. in the controller UI), omitting it here removes it on the next apply.
|
|
171
|
+
*/
|
|
172
|
+
vlan?: pulumi.Input<number | undefined>;
|
|
160
173
|
}
|
|
174
|
+
//# sourceMappingURL=account.d.ts.map
|
package/account.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"account.d.ts","sourceRoot":"","sources":["../account.ts"],"names":[],"mappings":"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"}
|
package/account.js
CHANGED
|
@@ -1,10 +1,33 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
|
|
3
3
|
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
|
+
if (k2 === undefined) k2 = k;
|
|
6
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
8
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
9
|
+
}
|
|
10
|
+
Object.defineProperty(o, k2, desc);
|
|
11
|
+
}) : (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
o[k2] = m[k];
|
|
14
|
+
}));
|
|
15
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
+
}) : function(o, v) {
|
|
18
|
+
o["default"] = v;
|
|
19
|
+
});
|
|
20
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
21
|
+
if (mod && mod.__esModule) return mod;
|
|
22
|
+
var result = {};
|
|
23
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
24
|
+
__setModuleDefault(result, mod);
|
|
25
|
+
return result;
|
|
26
|
+
};
|
|
4
27
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
28
|
exports.Account = void 0;
|
|
6
|
-
const pulumi = require("@pulumi/pulumi");
|
|
7
|
-
const utilities = require("./utilities");
|
|
29
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
30
|
+
const utilities = __importStar(require("./utilities"));
|
|
8
31
|
/**
|
|
9
32
|
* The `unifi.Account` resource manages RADIUS user accounts in the UniFi controller's built-in RADIUS server.
|
|
10
33
|
*
|
|
@@ -12,15 +35,16 @@ const utilities = require("./utilities");
|
|
|
12
35
|
* * WPA2/WPA3-Enterprise wireless authentication
|
|
13
36
|
* * 802.1X wired authentication
|
|
14
37
|
* * MAC-based device authentication
|
|
15
|
-
* * VLAN assignment through RADIUS attributes
|
|
38
|
+
* * Dynamic VLAN assignment through RADIUS attributes (see the `vlan` attribute)
|
|
16
39
|
*
|
|
17
40
|
* Important Notes:
|
|
18
41
|
* 1. For MAC-based authentication:
|
|
19
42
|
* * Use the device's MAC address as both username and password
|
|
20
43
|
* * Convert MAC address to uppercase with no separators (e.g., '00:11:22:33:44:55' becomes '001122334455')
|
|
21
44
|
* 2. VLAN Assignment:
|
|
22
|
-
* *
|
|
23
|
-
* * VLAN assignment
|
|
45
|
+
* * Set the `vlan` attribute to the 802.1Q VLAN ID the controller should assign to authenticated clients
|
|
46
|
+
* * VLAN assignment is delivered using the standard RADIUS tunnel attributes (`tunnelType`/`tunnelMediumType`)
|
|
47
|
+
* * If no VLAN is specified, clients will use the network's untagged VLAN
|
|
24
48
|
*
|
|
25
49
|
* Limitations:
|
|
26
50
|
* * MAC-based authentication works only for wireless and wired clients
|
|
@@ -40,6 +64,8 @@ class Account extends pulumi.CustomResource {
|
|
|
40
64
|
static get(name, id, state, opts) {
|
|
41
65
|
return new Account(name, state, { ...opts, id: id });
|
|
42
66
|
}
|
|
67
|
+
/** @internal */
|
|
68
|
+
static __pulumiType = 'unifi:index/account:Account';
|
|
43
69
|
/**
|
|
44
70
|
* Returns true if the given object is an instance of Account. This is designed to work even
|
|
45
71
|
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
@@ -61,6 +87,7 @@ class Account extends pulumi.CustomResource {
|
|
|
61
87
|
resourceInputs["site"] = state?.site;
|
|
62
88
|
resourceInputs["tunnelMediumType"] = state?.tunnelMediumType;
|
|
63
89
|
resourceInputs["tunnelType"] = state?.tunnelType;
|
|
90
|
+
resourceInputs["vlan"] = state?.vlan;
|
|
64
91
|
}
|
|
65
92
|
else {
|
|
66
93
|
const args = argsOrState;
|
|
@@ -73,6 +100,7 @@ class Account extends pulumi.CustomResource {
|
|
|
73
100
|
resourceInputs["site"] = args?.site;
|
|
74
101
|
resourceInputs["tunnelMediumType"] = args?.tunnelMediumType;
|
|
75
102
|
resourceInputs["tunnelType"] = args?.tunnelType;
|
|
103
|
+
resourceInputs["vlan"] = args?.vlan;
|
|
76
104
|
}
|
|
77
105
|
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
78
106
|
const secretOpts = { additionalSecretOutputs: ["password"] };
|
|
@@ -81,6 +109,4 @@ class Account extends pulumi.CustomResource {
|
|
|
81
109
|
}
|
|
82
110
|
}
|
|
83
111
|
exports.Account = Account;
|
|
84
|
-
/** @internal */
|
|
85
|
-
Account.__pulumiType = 'unifi:index/account:Account';
|
|
86
112
|
//# sourceMappingURL=account.js.map
|
package/account.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account.js","sourceRoot":"","sources":["../account.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF
|
|
1
|
+
{"version":3,"file":"account.js","sourceRoot":"","sources":["../account.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjF,uDAAyC;AACzC,uDAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAa,OAAQ,SAAQ,MAAM,CAAC,cAAc;IAC9C;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAoB,EAAE,IAAmC;QAClH,OAAO,IAAI,OAAO,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,gBAAgB;IACT,MAAM,CAAU,YAAY,GAAG,6BAA6B,CAAC;IAEpE;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,OAAO,CAAC,YAAY,CAAC;IACxD,CAAC;IAiDD,YAAY,IAAY,EAAE,WAAwC,EAAE,IAAmC;QACnG,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAuC,CAAC;YACtD,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC;YACrC,cAAc,CAAC,WAAW,CAAC,GAAG,KAAK,EAAE,SAAS,CAAC;YAC/C,cAAc,CAAC,UAAU,CAAC,GAAG,KAAK,EAAE,QAAQ,CAAC;YAC7C,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC;YACrC,cAAc,CAAC,kBAAkB,CAAC,GAAG,KAAK,EAAE,gBAAgB,CAAC;YAC7D,cAAc,CAAC,YAAY,CAAC,GAAG,KAAK,EAAE,UAAU,CAAC;YACjD,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC;SACxC;aAAM;YACH,MAAM,IAAI,GAAG,WAAsC,CAAC;YACpD,IAAI,IAAI,EAAE,QAAQ,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC3C,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;aAC3D;YACD,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC;YACpC,cAAc,CAAC,WAAW,CAAC,GAAG,IAAI,EAAE,SAAS,CAAC;YAC9C,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACvF,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC;YACpC,cAAc,CAAC,kBAAkB,CAAC,GAAG,IAAI,EAAE,gBAAgB,CAAC;YAC5D,cAAc,CAAC,YAAY,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC;YAChD,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC;SACvC;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,MAAM,UAAU,GAAG,EAAE,uBAAuB,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;QAC7D,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAC7C,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAC5D,CAAC;;AAxGL,0BAyGC"}
|
package/ap/getGroup.d.ts
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
/**
|
|
3
|
+
* The `unifi.ap.Group` data source can be used to retrieve the ID for an AP group by name.
|
|
4
|
+
*
|
|
5
|
+
* ## Example Usage
|
|
6
|
+
*
|
|
7
|
+
* ```typescript
|
|
8
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
9
|
+
* import * as unifi from "@pulumiverse/unifi";
|
|
10
|
+
*
|
|
11
|
+
* const _default = unifi.ap.getGroup({});
|
|
12
|
+
* ```
|
|
13
|
+
*/
|
|
14
|
+
export declare function getGroup(args?: GetGroupArgs, opts?: pulumi.InvokeOptions): Promise<GetGroupResult>;
|
|
15
|
+
/**
|
|
16
|
+
* A collection of arguments for invoking getGroup.
|
|
17
|
+
*/
|
|
18
|
+
export interface GetGroupArgs {
|
|
19
|
+
/**
|
|
20
|
+
* The name of the AP group to look up, leave blank to look up the default AP group.
|
|
21
|
+
*/
|
|
22
|
+
name?: string;
|
|
23
|
+
/**
|
|
24
|
+
* The name of the UniFi site where this resource should be applied. If not specified, the default site will be used.
|
|
25
|
+
*/
|
|
26
|
+
site?: string;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* A collection of values returned by getGroup.
|
|
30
|
+
*/
|
|
31
|
+
export interface GetGroupResult {
|
|
32
|
+
/**
|
|
33
|
+
* The unique identifier of this resource.
|
|
34
|
+
*/
|
|
35
|
+
readonly id: string;
|
|
36
|
+
/**
|
|
37
|
+
* The name of the AP group to look up, leave blank to look up the default AP group.
|
|
38
|
+
*/
|
|
39
|
+
readonly name?: string;
|
|
40
|
+
/**
|
|
41
|
+
* The name of the UniFi site where this resource should be applied. If not specified, the default site will be used.
|
|
42
|
+
*/
|
|
43
|
+
readonly site: string;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* The `unifi.ap.Group` data source can be used to retrieve the ID for an AP group by name.
|
|
47
|
+
*
|
|
48
|
+
* ## Example Usage
|
|
49
|
+
*
|
|
50
|
+
* ```typescript
|
|
51
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
52
|
+
* import * as unifi from "@pulumiverse/unifi";
|
|
53
|
+
*
|
|
54
|
+
* const _default = unifi.ap.getGroup({});
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
57
|
+
export declare function getGroupOutput(args?: GetGroupOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetGroupResult>;
|
|
58
|
+
/**
|
|
59
|
+
* A collection of arguments for invoking getGroup.
|
|
60
|
+
*/
|
|
61
|
+
export interface GetGroupOutputArgs {
|
|
62
|
+
/**
|
|
63
|
+
* The name of the AP group to look up, leave blank to look up the default AP group.
|
|
64
|
+
*/
|
|
65
|
+
name?: pulumi.Input<string | undefined>;
|
|
66
|
+
/**
|
|
67
|
+
* The name of the UniFi site where this resource should be applied. If not specified, the default site will be used.
|
|
68
|
+
*/
|
|
69
|
+
site?: pulumi.Input<string | undefined>;
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=getGroup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getGroup.d.ts","sourceRoot":"","sources":["../../ap/getGroup.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAGzC;;;;;;;;;;;GAWG;AACH,wBAAgB,QAAQ,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CAOlG;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B;;OAEG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACzB;AACD;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAAC,IAAI,CAAC,EAAE,kBAAkB,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAO1H;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACxC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CAC3C"}
|
package/ap/getGroup.js
ADDED
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
|
|
3
|
+
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
|
+
if (k2 === undefined) k2 = k;
|
|
6
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
8
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
9
|
+
}
|
|
10
|
+
Object.defineProperty(o, k2, desc);
|
|
11
|
+
}) : (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
o[k2] = m[k];
|
|
14
|
+
}));
|
|
15
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
+
}) : function(o, v) {
|
|
18
|
+
o["default"] = v;
|
|
19
|
+
});
|
|
20
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
21
|
+
if (mod && mod.__esModule) return mod;
|
|
22
|
+
var result = {};
|
|
23
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
24
|
+
__setModuleDefault(result, mod);
|
|
25
|
+
return result;
|
|
26
|
+
};
|
|
27
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
28
|
+
exports.getGroupOutput = exports.getGroup = void 0;
|
|
29
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
30
|
+
const utilities = __importStar(require("../utilities"));
|
|
31
|
+
/**
|
|
32
|
+
* The `unifi.ap.Group` data source can be used to retrieve the ID for an AP group by name.
|
|
33
|
+
*
|
|
34
|
+
* ## Example Usage
|
|
35
|
+
*
|
|
36
|
+
* ```typescript
|
|
37
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
38
|
+
* import * as unifi from "@pulumiverse/unifi";
|
|
39
|
+
*
|
|
40
|
+
* const _default = unifi.ap.getGroup({});
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
function getGroup(args, opts) {
|
|
44
|
+
args = args || {};
|
|
45
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
|
|
46
|
+
return pulumi.runtime.invoke("unifi:ap/getGroup:getGroup", {
|
|
47
|
+
"name": args.name,
|
|
48
|
+
"site": args.site,
|
|
49
|
+
}, opts);
|
|
50
|
+
}
|
|
51
|
+
exports.getGroup = getGroup;
|
|
52
|
+
/**
|
|
53
|
+
* The `unifi.ap.Group` data source can be used to retrieve the ID for an AP group by name.
|
|
54
|
+
*
|
|
55
|
+
* ## Example Usage
|
|
56
|
+
*
|
|
57
|
+
* ```typescript
|
|
58
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
59
|
+
* import * as unifi from "@pulumiverse/unifi";
|
|
60
|
+
*
|
|
61
|
+
* const _default = unifi.ap.getGroup({});
|
|
62
|
+
* ```
|
|
63
|
+
*/
|
|
64
|
+
function getGroupOutput(args, opts) {
|
|
65
|
+
args = args || {};
|
|
66
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
|
|
67
|
+
return pulumi.runtime.invokeOutput("unifi:ap/getGroup:getGroup", {
|
|
68
|
+
"name": args.name,
|
|
69
|
+
"site": args.site,
|
|
70
|
+
}, opts);
|
|
71
|
+
}
|
|
72
|
+
exports.getGroupOutput = getGroupOutput;
|
|
73
|
+
//# sourceMappingURL=getGroup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getGroup.js","sourceRoot":"","sources":["../../ap/getGroup.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjF,uDAAyC;AACzC,wDAA0C;AAE1C;;;;;;;;;;;GAWG;AACH,SAAgB,QAAQ,CAAC,IAAmB,EAAE,IAA2B;IACrE,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IAClB,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,4BAA4B,EAAE;QACvD,MAAM,EAAE,IAAI,CAAC,IAAI;QACjB,MAAM,EAAE,IAAI,CAAC,IAAI;KACpB,EAAE,IAAI,CAAC,CAAC;AACb,CAAC;AAPD,4BAOC;AAiCD;;;;;;;;;;;GAWG;AACH,SAAgB,cAAc,CAAC,IAAyB,EAAE,IAAiC;IACvF,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IAClB,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,4BAA4B,EAAE;QAC7D,MAAM,EAAE,IAAI,CAAC,IAAI;QACjB,MAAM,EAAE,IAAI,CAAC,IAAI;KACpB,EAAE,IAAI,CAAC,CAAC;AACb,CAAC;AAPD,wCAOC"}
|
package/ap/group.d.ts
ADDED
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
/**
|
|
3
|
+
* The `unifi.ap.Group` resource manages Access Point groups in the UniFi controller.
|
|
4
|
+
*
|
|
5
|
+
* AP groups allow you to organize and manage multiple access points together. This resource allows you to create, update, and delete AP groups.
|
|
6
|
+
*
|
|
7
|
+
* ## Example Usage
|
|
8
|
+
*
|
|
9
|
+
* ```typescript
|
|
10
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
11
|
+
* import * as unifi from "@pulumiverse/unifi";
|
|
12
|
+
*
|
|
13
|
+
* const example = new unifi.ap.Group("example", {
|
|
14
|
+
* name: "my-ap-group",
|
|
15
|
+
* deviceMacs: ["00:11:22:33:44:55"],
|
|
16
|
+
* });
|
|
17
|
+
* ```
|
|
18
|
+
*
|
|
19
|
+
* ## Import
|
|
20
|
+
*
|
|
21
|
+
* The `pulumi import` command can be used, for example:
|
|
22
|
+
*
|
|
23
|
+
* import from provider configured site
|
|
24
|
+
*
|
|
25
|
+
* ```sh
|
|
26
|
+
* $ pulumi import unifi:ap/group:Group example 5dc28e5e9106d105bdc87217
|
|
27
|
+
* ```
|
|
28
|
+
*
|
|
29
|
+
* import from another site
|
|
30
|
+
*
|
|
31
|
+
* ```sh
|
|
32
|
+
* $ pulumi import unifi:ap/group:Group example another-site:5dc28e5e9106d105bdc87217
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
export declare class Group extends pulumi.CustomResource {
|
|
36
|
+
/**
|
|
37
|
+
* Get an existing Group resource's state with the given name, ID, and optional extra
|
|
38
|
+
* properties used to qualify the lookup.
|
|
39
|
+
*
|
|
40
|
+
* @param name The _unique_ name of the resulting resource.
|
|
41
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
42
|
+
* @param state Any extra arguments used during the lookup.
|
|
43
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
44
|
+
*/
|
|
45
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: GroupState, opts?: pulumi.CustomResourceOptions): Group;
|
|
46
|
+
/**
|
|
47
|
+
* Returns true if the given object is an instance of Group. This is designed to work even
|
|
48
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
49
|
+
*/
|
|
50
|
+
static isInstance(obj: any): obj is Group;
|
|
51
|
+
/**
|
|
52
|
+
* Set of AP device MAC addresses to include in this AP group. MAC addresses are case-insensitive and may use `:` or `-` separators (e.g. `aa:bb:cc:dd:ee:ff` and `AA-BB-CC-DD-EE-FF` are treated as the same address and produce no diff); the value is kept as written.
|
|
53
|
+
*/
|
|
54
|
+
readonly deviceMacs: pulumi.Output<string[]>;
|
|
55
|
+
/**
|
|
56
|
+
* The name of the AP group.
|
|
57
|
+
*/
|
|
58
|
+
readonly name: pulumi.Output<string>;
|
|
59
|
+
/**
|
|
60
|
+
* The name of the UniFi site where this resource should be applied. If not specified, the default site will be used.
|
|
61
|
+
*/
|
|
62
|
+
readonly site: pulumi.Output<string>;
|
|
63
|
+
/**
|
|
64
|
+
* Create a Group resource with the given unique name, arguments, and options.
|
|
65
|
+
*
|
|
66
|
+
* @param name The _unique_ name of the resource.
|
|
67
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
68
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
69
|
+
*/
|
|
70
|
+
constructor(name: string, args: GroupArgs, opts?: pulumi.CustomResourceOptions);
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Input properties used for looking up and filtering Group resources.
|
|
74
|
+
*/
|
|
75
|
+
export interface GroupState {
|
|
76
|
+
/**
|
|
77
|
+
* Set of AP device MAC addresses to include in this AP group. MAC addresses are case-insensitive and may use `:` or `-` separators (e.g. `aa:bb:cc:dd:ee:ff` and `AA-BB-CC-DD-EE-FF` are treated as the same address and produce no diff); the value is kept as written.
|
|
78
|
+
*/
|
|
79
|
+
deviceMacs?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
80
|
+
/**
|
|
81
|
+
* The name of the AP group.
|
|
82
|
+
*/
|
|
83
|
+
name?: pulumi.Input<string | undefined>;
|
|
84
|
+
/**
|
|
85
|
+
* The name of the UniFi site where this resource should be applied. If not specified, the default site will be used.
|
|
86
|
+
*/
|
|
87
|
+
site?: pulumi.Input<string | undefined>;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* The set of arguments for constructing a Group resource.
|
|
91
|
+
*/
|
|
92
|
+
export interface GroupArgs {
|
|
93
|
+
/**
|
|
94
|
+
* Set of AP device MAC addresses to include in this AP group. MAC addresses are case-insensitive and may use `:` or `-` separators (e.g. `aa:bb:cc:dd:ee:ff` and `AA-BB-CC-DD-EE-FF` are treated as the same address and produce no diff); the value is kept as written.
|
|
95
|
+
*/
|
|
96
|
+
deviceMacs: pulumi.Input<pulumi.Input<string>[]>;
|
|
97
|
+
/**
|
|
98
|
+
* The name of the AP group.
|
|
99
|
+
*/
|
|
100
|
+
name?: pulumi.Input<string | undefined>;
|
|
101
|
+
/**
|
|
102
|
+
* The name of the UniFi site where this resource should be applied. If not specified, the default site will be used.
|
|
103
|
+
*/
|
|
104
|
+
site?: pulumi.Input<string | undefined>;
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=group.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../ap/group.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAGzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,qBAAa,KAAM,SAAQ,MAAM,CAAC,cAAc;IAC5C;;;;;;;;OAQG;WACW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,qBAAqB,GAAG,KAAK;IAO5H;;;OAGG;WACW,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,KAAK;IAOhD;;OAEG;IACH,SAAwB,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5D;;OAEG;IACH,SAAwB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACpD;;OAEG;IACH,SAAwB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEpD;;;;;;OAMG;gBACS,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,qBAAqB;CAqBjF;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACvB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC;IAC9D;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACxC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACtB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACjD;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACxC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CAC3C"}
|
package/ap/group.js
ADDED
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
|
|
3
|
+
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
|
+
if (k2 === undefined) k2 = k;
|
|
6
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
8
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
9
|
+
}
|
|
10
|
+
Object.defineProperty(o, k2, desc);
|
|
11
|
+
}) : (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
o[k2] = m[k];
|
|
14
|
+
}));
|
|
15
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
+
}) : function(o, v) {
|
|
18
|
+
o["default"] = v;
|
|
19
|
+
});
|
|
20
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
21
|
+
if (mod && mod.__esModule) return mod;
|
|
22
|
+
var result = {};
|
|
23
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
24
|
+
__setModuleDefault(result, mod);
|
|
25
|
+
return result;
|
|
26
|
+
};
|
|
27
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
28
|
+
exports.Group = void 0;
|
|
29
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
30
|
+
const utilities = __importStar(require("../utilities"));
|
|
31
|
+
/**
|
|
32
|
+
* The `unifi.ap.Group` resource manages Access Point groups in the UniFi controller.
|
|
33
|
+
*
|
|
34
|
+
* AP groups allow you to organize and manage multiple access points together. This resource allows you to create, update, and delete AP groups.
|
|
35
|
+
*
|
|
36
|
+
* ## Example Usage
|
|
37
|
+
*
|
|
38
|
+
* ```typescript
|
|
39
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
40
|
+
* import * as unifi from "@pulumiverse/unifi";
|
|
41
|
+
*
|
|
42
|
+
* const example = new unifi.ap.Group("example", {
|
|
43
|
+
* name: "my-ap-group",
|
|
44
|
+
* deviceMacs: ["00:11:22:33:44:55"],
|
|
45
|
+
* });
|
|
46
|
+
* ```
|
|
47
|
+
*
|
|
48
|
+
* ## Import
|
|
49
|
+
*
|
|
50
|
+
* The `pulumi import` command can be used, for example:
|
|
51
|
+
*
|
|
52
|
+
* import from provider configured site
|
|
53
|
+
*
|
|
54
|
+
* ```sh
|
|
55
|
+
* $ pulumi import unifi:ap/group:Group example 5dc28e5e9106d105bdc87217
|
|
56
|
+
* ```
|
|
57
|
+
*
|
|
58
|
+
* import from another site
|
|
59
|
+
*
|
|
60
|
+
* ```sh
|
|
61
|
+
* $ pulumi import unifi:ap/group:Group example another-site:5dc28e5e9106d105bdc87217
|
|
62
|
+
* ```
|
|
63
|
+
*/
|
|
64
|
+
class Group extends pulumi.CustomResource {
|
|
65
|
+
/**
|
|
66
|
+
* Get an existing Group resource's state with the given name, ID, and optional extra
|
|
67
|
+
* properties used to qualify the lookup.
|
|
68
|
+
*
|
|
69
|
+
* @param name The _unique_ name of the resulting resource.
|
|
70
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
71
|
+
* @param state Any extra arguments used during the lookup.
|
|
72
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
73
|
+
*/
|
|
74
|
+
static get(name, id, state, opts) {
|
|
75
|
+
return new Group(name, state, { ...opts, id: id });
|
|
76
|
+
}
|
|
77
|
+
/** @internal */
|
|
78
|
+
static __pulumiType = 'unifi:ap/group:Group';
|
|
79
|
+
/**
|
|
80
|
+
* Returns true if the given object is an instance of Group. This is designed to work even
|
|
81
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
82
|
+
*/
|
|
83
|
+
static isInstance(obj) {
|
|
84
|
+
if (obj === undefined || obj === null) {
|
|
85
|
+
return false;
|
|
86
|
+
}
|
|
87
|
+
return obj['__pulumiType'] === Group.__pulumiType;
|
|
88
|
+
}
|
|
89
|
+
constructor(name, argsOrState, opts) {
|
|
90
|
+
let resourceInputs = {};
|
|
91
|
+
opts = opts || {};
|
|
92
|
+
if (opts.id) {
|
|
93
|
+
const state = argsOrState;
|
|
94
|
+
resourceInputs["deviceMacs"] = state?.deviceMacs;
|
|
95
|
+
resourceInputs["name"] = state?.name;
|
|
96
|
+
resourceInputs["site"] = state?.site;
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
const args = argsOrState;
|
|
100
|
+
if (args?.deviceMacs === undefined && !opts.urn) {
|
|
101
|
+
throw new Error("Missing required property 'deviceMacs'");
|
|
102
|
+
}
|
|
103
|
+
resourceInputs["deviceMacs"] = args?.deviceMacs;
|
|
104
|
+
resourceInputs["name"] = args?.name;
|
|
105
|
+
resourceInputs["site"] = args?.site;
|
|
106
|
+
}
|
|
107
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
108
|
+
super(Group.__pulumiType, name, resourceInputs, opts);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
exports.Group = Group;
|
|
112
|
+
//# sourceMappingURL=group.js.map
|
package/ap/group.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"group.js","sourceRoot":"","sources":["../../ap/group.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjF,uDAAyC;AACzC,wDAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAa,KAAM,SAAQ,MAAM,CAAC,cAAc;IAC5C;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAkB,EAAE,IAAmC;QAChH,OAAO,IAAI,KAAK,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,gBAAgB;IACT,MAAM,CAAU,YAAY,GAAG,sBAAsB,CAAC;IAE7D;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,KAAK,CAAC,YAAY,CAAC;IACtD,CAAC;IAuBD,YAAY,IAAY,EAAE,WAAoC,EAAE,IAAmC;QAC/F,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAqC,CAAC;YACpD,cAAc,CAAC,YAAY,CAAC,GAAG,KAAK,EAAE,UAAU,CAAC;YACjD,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC;YACrC,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC;SACxC;aAAM;YACH,MAAM,IAAI,GAAG,WAAoC,CAAC;YAClD,IAAI,IAAI,EAAE,UAAU,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC7C,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;aAC7D;YACD,cAAc,CAAC,YAAY,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC;YAChD,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC;YACpC,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC;SACvC;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAC1D,CAAC;;AApEL,sBAqEC"}
|
package/ap/index.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { GetGroupArgs, GetGroupResult, GetGroupOutputArgs } from "./getGroup";
|
|
2
|
+
export declare const getGroup: typeof import("./getGroup").getGroup;
|
|
3
|
+
export declare const getGroupOutput: typeof import("./getGroup").getGroupOutput;
|
|
4
|
+
export { GroupArgs, GroupState } from "./group";
|
|
5
|
+
export type Group = import("./group").Group;
|
|
6
|
+
export declare const Group: typeof import("./group").Group;
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../ap/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC9E,eAAO,MAAM,QAAQ,EAAE,cAAc,YAAY,EAAE,QAAsB,CAAC;AAC1E,eAAO,MAAM,cAAc,EAAE,cAAc,YAAY,EAAE,cAA4B,CAAC;AAGtF,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAChD,MAAM,MAAM,KAAK,GAAG,OAAO,SAAS,EAAE,KAAK,CAAC;AAC5C,eAAO,MAAM,KAAK,EAAE,cAAc,SAAS,EAAE,KAAmB,CAAC"}
|