@pulumi/juniper-mist 0.1.2 → 0.1.3

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.
Files changed (44) hide show
  1. package/device/base.d.ts +1 -1
  2. package/device/gateway.d.ts +3 -1
  3. package/device/gateway.js +2 -0
  4. package/device/gateway.js.map +1 -1
  5. package/device/switch.d.ts +16 -9
  6. package/device/switch.js +3 -1
  7. package/device/switch.js.map +1 -1
  8. package/org/deviceprofileGateway.d.ts +1 -1
  9. package/org/evpnTopology.d.ts +162 -0
  10. package/org/evpnTopology.js +133 -0
  11. package/org/evpnTopology.js.map +1 -0
  12. package/org/gatewaytemplate.d.ts +1 -1
  13. package/org/index.d.ts +3 -0
  14. package/org/index.js +7 -2
  15. package/org/index.js.map +1 -1
  16. package/org/inventory.d.ts +9 -0
  17. package/org/inventory.js.map +1 -1
  18. package/org/networktemplate.d.ts +15 -6
  19. package/org/networktemplate.js.map +1 -1
  20. package/org/setting.d.ts +1 -2
  21. package/org/setting.js +1 -1
  22. package/org/setting.js.map +1 -1
  23. package/org/wlan.d.ts +30 -0
  24. package/org/wlan.js +4 -0
  25. package/org/wlan.js.map +1 -1
  26. package/package.json +2 -2
  27. package/site/base.d.ts +1 -1
  28. package/site/evpnTopology.d.ts +164 -0
  29. package/site/evpnTopology.js +135 -0
  30. package/site/evpnTopology.js.map +1 -0
  31. package/site/index.d.ts +3 -0
  32. package/site/index.js +6 -1
  33. package/site/index.js.map +1 -1
  34. package/site/networktemplate.d.ts +31 -9
  35. package/site/networktemplate.js +6 -2
  36. package/site/networktemplate.js.map +1 -1
  37. package/site/setting.d.ts +4 -12
  38. package/site/setting.js +4 -2
  39. package/site/setting.js.map +1 -1
  40. package/site/wlan.d.ts +30 -0
  41. package/site/wlan.js +4 -0
  42. package/site/wlan.js.map +1 -1
  43. package/types/input.d.ts +553 -90
  44. package/types/output.d.ts +592 -129
package/types/input.d.ts CHANGED
@@ -669,8 +669,8 @@ export declare namespace device {
669
669
  * * enterprise number: 1-65535 (https://www.iana.org/assignments/enterprise-numbers/enterprise-numbers)
670
670
  * * sub option code: 1-255, sub-option code'
671
671
  */
672
- vendorEncapulated?: pulumi.Input<{
673
- [key: string]: pulumi.Input<inputs.device.GatewayDhcpdConfigConfigVendorEncapulated>;
672
+ vendorEncapsulated?: pulumi.Input<{
673
+ [key: string]: pulumi.Input<inputs.device.GatewayDhcpdConfigConfigVendorEncapsulated>;
674
674
  }>;
675
675
  }
676
676
  interface GatewayDhcpdConfigConfigFixedBindings {
@@ -684,7 +684,7 @@ export declare namespace device {
684
684
  type?: pulumi.Input<string>;
685
685
  value?: pulumi.Input<string>;
686
686
  }
687
- interface GatewayDhcpdConfigConfigVendorEncapulated {
687
+ interface GatewayDhcpdConfigConfigVendorEncapsulated {
688
688
  /**
689
689
  * enum: `boolean`, `hex`, `int16`, `int32`, `ip`, `string`, `uint16`, `uint32`
690
690
  */
@@ -1418,7 +1418,7 @@ export declare namespace device {
1418
1418
  */
1419
1419
  idpprofileId?: pulumi.Input<string>;
1420
1420
  /**
1421
- * `strict` (default) / `standard` / or keys from from idp_profiles
1421
+ * enum: `Custom`, `strict` (default), `standard` or keys from from idp_profiles
1422
1422
  */
1423
1423
  profile?: pulumi.Input<string>;
1424
1424
  }
@@ -1879,8 +1879,8 @@ export declare namespace device {
1879
1879
  * * enterprise number: 1-65535 (https://www.iana.org/assignments/enterprise-numbers/enterprise-numbers)
1880
1880
  * * sub option code: 1-255, sub-option code'
1881
1881
  */
1882
- vendorEncapulated?: pulumi.Input<{
1883
- [key: string]: pulumi.Input<inputs.device.SwitchDhcpdConfigConfigVendorEncapulated>;
1882
+ vendorEncapsulated?: pulumi.Input<{
1883
+ [key: string]: pulumi.Input<inputs.device.SwitchDhcpdConfigConfigVendorEncapsulated>;
1884
1884
  }>;
1885
1885
  }
1886
1886
  interface SwitchDhcpdConfigConfigFixedBindings {
@@ -1894,7 +1894,7 @@ export declare namespace device {
1894
1894
  type?: pulumi.Input<string>;
1895
1895
  value?: pulumi.Input<string>;
1896
1896
  }
1897
- interface SwitchDhcpdConfigConfigVendorEncapulated {
1897
+ interface SwitchDhcpdConfigConfigVendorEncapsulated {
1898
1898
  /**
1899
1899
  * enum: `boolean`, `hex`, `int16`, `int32`, `ip`, `string`, `uint16`, `uint32`
1900
1900
  */
@@ -1904,7 +1904,7 @@ export declare namespace device {
1904
1904
  interface SwitchEvpnConfig {
1905
1905
  enabled?: pulumi.Input<boolean>;
1906
1906
  /**
1907
- * enum: `access`, `core`, `distribution`
1907
+ * enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none`
1908
1908
  */
1909
1909
  role?: pulumi.Input<string>;
1910
1910
  }
@@ -1971,39 +1971,173 @@ export declare namespace device {
1971
1971
  }
1972
1972
  interface SwitchLocalPortConfig {
1973
1973
  /**
1974
- * if want to generate port up/down alarm
1974
+ * Only if `mode`==`trunk` whether to trunk all network/vlans
1975
1975
  */
1976
- critical?: pulumi.Input<boolean>;
1976
+ allNetworks?: pulumi.Input<boolean>;
1977
+ /**
1978
+ * If DHCP snooping is enabled, whether DHCP server is allowed on the interfaces with.
1979
+ * All the interfaces from port configs using this port usage are effected. Please notice that allowDhcpd is a tri_state.
1980
+ * When it is not defined, it means using the system's default setting which depends on whether the port is a access or trunk port.
1981
+ */
1982
+ allowDhcpd?: pulumi.Input<boolean>;
1983
+ allowMultipleSupplicants?: pulumi.Input<boolean>;
1984
+ /**
1985
+ * Only if `portAuth`==`dot1x` bypass auth for known clients if set to true when RADIUS server is down
1986
+ */
1987
+ bypassAuthWhenServerDown?: pulumi.Input<boolean>;
1988
+ /**
1989
+ * Only if `portAuth`=`dot1x` bypass auth for all (including unknown clients) if set to true when RADIUS server is down
1990
+ */
1991
+ bypassAuthWhenServerDownForUnkonwnClient?: pulumi.Input<boolean>;
1977
1992
  description?: pulumi.Input<string>;
1978
1993
  /**
1979
- * if `speed` and `duplex` are specified, whether to disable autonegotiation
1994
+ * Only if `mode`!=`dynamic` if speed and duplex are specified, whether to disable autonegotiation
1980
1995
  */
1981
1996
  disableAutoneg?: pulumi.Input<boolean>;
1982
1997
  /**
1983
- * enum: `auto`, `full`, `half`
1998
+ * whether the port is disabled
1999
+ */
2000
+ disabled?: pulumi.Input<boolean>;
2001
+ /**
2002
+ * link connection mode. enum: `auto`, `full`, `half`
1984
2003
  */
1985
2004
  duplex?: pulumi.Input<string>;
1986
2005
  /**
1987
- * media maximum transmission unit (MTU) is the largest data unit that can be forwarded without fragmentation
2006
+ * Only if `portAuth`==`dot1x`, if dynamic vlan is used, specify the possible networks/vlans RADIUS can return
2007
+ */
2008
+ dynamicVlanNetworks?: pulumi.Input<pulumi.Input<string>[]>;
2009
+ /**
2010
+ * Only if `portAuth`==`dot1x` whether to enable MAC Auth
2011
+ */
2012
+ enableMacAuth?: pulumi.Input<boolean>;
2013
+ enableQos?: pulumi.Input<boolean>;
2014
+ /**
2015
+ * Only if `portAuth`==`dot1x` which network to put the device into if the device cannot do dot1x. default is null (i.e. not allowed)
2016
+ */
2017
+ guestNetwork?: pulumi.Input<string>;
2018
+ /**
2019
+ * inter_switch_link is used together with "isolation" under networks
2020
+ * NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together
2021
+ */
2022
+ interSwitchLink?: pulumi.Input<boolean>;
2023
+ /**
2024
+ * Only if `enableMacAuth`==`true`
2025
+ */
2026
+ macAuthOnly?: pulumi.Input<boolean>;
2027
+ /**
2028
+ * Only if `enableMacAuth`==`true` + `macAuthOnly`==`false`, dot1x will be given priority then mac_auth. Enable this to prefer macAuth over dot1x.
2029
+ */
2030
+ macAuthPreferred?: pulumi.Input<boolean>;
2031
+ /**
2032
+ * Only if `enableMacAuth` ==`true`. This type is ignored if mistNac is enabled. enum: `eap-md5`, `eap-peap`, `pap`
2033
+ */
2034
+ macAuthProtocol?: pulumi.Input<string>;
2035
+ /**
2036
+ * max number of mac addresses, default is 0 for unlimited, otherwise range is 1 or higher, with upper bound constrained by platform
2037
+ */
2038
+ macLimit?: pulumi.Input<number>;
2039
+ /**
2040
+ * enum: `access`, `inet`, `trunk`
2041
+ */
2042
+ mode?: pulumi.Input<string>;
2043
+ /**
2044
+ * media maximum transmission unit (MTU) is the largest data unit that can be forwarded without fragmentation. The default value is 1514.
1988
2045
  */
1989
2046
  mtu?: pulumi.Input<number>;
2047
+ /**
2048
+ * Only if `mode`==`trunk`, the list of network/vlans
2049
+ */
2050
+ networks?: pulumi.Input<pulumi.Input<string>[]>;
2051
+ /**
2052
+ * Only if `mode`==`access` and `portAuth`!=`dot1x` whether the port should retain dynamically learned MAC addresses
2053
+ */
2054
+ persistMac?: pulumi.Input<boolean>;
2055
+ /**
2056
+ * whether PoE capabilities are disabled for a port
2057
+ */
1990
2058
  poeDisabled?: pulumi.Input<boolean>;
1991
2059
  /**
1992
- * enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `auto`
2060
+ * if dot1x is desired, set to dot1x. enum: `dot1x`
2061
+ */
2062
+ portAuth?: pulumi.Input<string>;
2063
+ /**
2064
+ * native network/vlan for untagged traffic
2065
+ */
2066
+ portNetwork?: pulumi.Input<string>;
2067
+ /**
2068
+ * Only if `portAuth`=`dot1x` reauthentication interval range
2069
+ */
2070
+ reauthInterval?: pulumi.Input<number>;
2071
+ /**
2072
+ * Only if `portAuth`==`dot1x` sets server fail fallback vlan
2073
+ */
2074
+ serverFailNetwork?: pulumi.Input<string>;
2075
+ /**
2076
+ * Only if `portAuth`==`dot1x` when radius server reject / fails
2077
+ */
2078
+ serverRejectNetwork?: pulumi.Input<string>;
2079
+ /**
2080
+ * enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto`
1993
2081
  */
1994
2082
  speed?: pulumi.Input<string>;
2083
+ /**
2084
+ * Switch storm control
2085
+ */
2086
+ stormControl?: pulumi.Input<inputs.device.SwitchLocalPortConfigStormControl>;
2087
+ /**
2088
+ * when enabled, the port is not expected to receive BPDU frames
2089
+ */
2090
+ stpEdge?: pulumi.Input<boolean>;
2091
+ stpNoRootPort?: pulumi.Input<boolean>;
2092
+ stpP2p?: pulumi.Input<boolean>;
1995
2093
  /**
1996
2094
  * port usage name.
1997
- *
1998
- * If EVPN is used, use `evpnUplink`or `evpnDownlink`
1999
2095
  */
2000
2096
  usage: pulumi.Input<string>;
2097
+ /**
2098
+ * if this is connected to a vstp network
2099
+ */
2100
+ useVstp?: pulumi.Input<boolean>;
2101
+ /**
2102
+ * network/vlan for voip traffic, must also set port_network. to authenticate device, set port_auth
2103
+ */
2104
+ voipNetwork?: pulumi.Input<string>;
2105
+ }
2106
+ interface SwitchLocalPortConfigStormControl {
2107
+ /**
2108
+ * whether to disable storm control on broadcast traffic
2109
+ */
2110
+ noBroadcast?: pulumi.Input<boolean>;
2111
+ /**
2112
+ * whether to disable storm control on multicast traffic
2113
+ */
2114
+ noMulticast?: pulumi.Input<boolean>;
2115
+ /**
2116
+ * whether to disable storm control on registered multicast traffic
2117
+ */
2118
+ noRegisteredMulticast?: pulumi.Input<boolean>;
2119
+ /**
2120
+ * whether to disable storm control on unknown unicast traffic
2121
+ */
2122
+ noUnknownUnicast?: pulumi.Input<boolean>;
2123
+ /**
2124
+ * bandwidth-percentage, configures the storm control level as a percentage of the available bandwidth
2125
+ */
2126
+ percentage?: pulumi.Input<number>;
2001
2127
  }
2002
2128
  interface SwitchMistNac {
2003
2129
  enabled?: pulumi.Input<boolean>;
2004
2130
  network?: pulumi.Input<string>;
2005
2131
  }
2006
2132
  interface SwitchNetworks {
2133
+ /**
2134
+ * only required for EVPN-VXLAN networks, IPv4 Virtual Gateway
2135
+ */
2136
+ gateway?: pulumi.Input<string>;
2137
+ /**
2138
+ * only required for EVPN-VXLAN networks, IPv6 Virtual Gateway
2139
+ */
2140
+ gateway6?: pulumi.Input<string>;
2007
2141
  /**
2008
2142
  * whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required)
2009
2143
  * NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set
@@ -2014,6 +2148,10 @@ export declare namespace device {
2014
2148
  * optional for pure switching, required when L3 / routing features are used
2015
2149
  */
2016
2150
  subnet?: pulumi.Input<string>;
2151
+ /**
2152
+ * optional for pure switching, required when L3 / routing features are used
2153
+ */
2154
+ subnet6?: pulumi.Input<string>;
2017
2155
  vlanId: pulumi.Input<string>;
2018
2156
  }
2019
2157
  interface SwitchOobIpConfig {
@@ -2032,7 +2170,7 @@ export declare namespace device {
2032
2170
  */
2033
2171
  type?: pulumi.Input<string>;
2034
2172
  /**
2035
- * f supported on the platform. If enabled, DNS will be using this routing-instance, too
2173
+ * if supported on the platform. If enabled, DNS will be using this routing-instance, too
2036
2174
  */
2037
2175
  useMgmtVrf?: pulumi.Input<boolean>;
2038
2176
  /**
@@ -2156,13 +2294,11 @@ export declare namespace device {
2156
2294
  noLocalOverwrite?: pulumi.Input<boolean>;
2157
2295
  poeDisabled?: pulumi.Input<boolean>;
2158
2296
  /**
2159
- * enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `auto`
2297
+ * enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto`
2160
2298
  */
2161
2299
  speed?: pulumi.Input<string>;
2162
2300
  /**
2163
- * port usage name.
2164
- *
2165
- * If EVPN is used, use `evpnUplink`or `evpnDownlink`
2301
+ * port usage name. If EVPN is used, use `evpnUplink`or `evpnDownlink`
2166
2302
  */
2167
2303
  usage: pulumi.Input<string>;
2168
2304
  }
@@ -2194,9 +2330,9 @@ export declare namespace device {
2194
2330
  */
2195
2331
  allNetworks?: pulumi.Input<boolean>;
2196
2332
  /**
2197
- * Only if `mode`!=`dynamic` if DHCP snooping is enabled, whether DHCP server is allowed on the interfaces with. All the interfaces from port configs using this port usage are effected. Please notice that allowDhcpd is a tri_state.
2198
- *
2199
- * When it is not defined, it means using the systems default setting which depends on whether the port is a access or trunk port.
2333
+ * Only if `mode`!=`dynamic`. If DHCP snooping is enabled, whether DHCP server is allowed on the interfaces with.
2334
+ * All the interfaces from port configs using this port usage are effected. Please notice that allowDhcpd is a tri_state.
2335
+ * When it is not defined, it means using the system's default setting which depends on whether the port is a access or trunk port.
2200
2336
  */
2201
2337
  allowDhcpd?: pulumi.Input<boolean>;
2202
2338
  /**
@@ -2265,7 +2401,7 @@ export declare namespace device {
2265
2401
  */
2266
2402
  macLimit?: pulumi.Input<number>;
2267
2403
  /**
2268
- * `mode`==`dynamic` must only be used with the port usage with the name `dynamic`. enum: `access`, `dynamic`, `inet`, `trunk`
2404
+ * `mode`==`dynamic` must only be used if the port usage name is `dynamic`. enum: `access`, `dynamic`, `inet`, `trunk`
2269
2405
  */
2270
2406
  mode?: pulumi.Input<string>;
2271
2407
  /**
@@ -2313,7 +2449,7 @@ export declare namespace device {
2313
2449
  */
2314
2450
  serverRejectNetwork?: pulumi.Input<string>;
2315
2451
  /**
2316
- * Only if `mode`!=`dynamic` speed, default is auto to automatically negotiate speed
2452
+ * Only if `mode`!=`dynamic` speed, default is auto to automatically negotiate speed enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto`
2317
2453
  */
2318
2454
  speed?: pulumi.Input<string>;
2319
2455
  /**
@@ -3619,8 +3755,8 @@ export declare namespace org {
3619
3755
  * * enterprise number: 1-65535 (https://www.iana.org/assignments/enterprise-numbers/enterprise-numbers)
3620
3756
  * * sub option code: 1-255, sub-option code'
3621
3757
  */
3622
- vendorEncapulated?: pulumi.Input<{
3623
- [key: string]: pulumi.Input<inputs.org.DeviceprofileGatewayDhcpdConfigConfigVendorEncapulated>;
3758
+ vendorEncapsulated?: pulumi.Input<{
3759
+ [key: string]: pulumi.Input<inputs.org.DeviceprofileGatewayDhcpdConfigConfigVendorEncapsulated>;
3624
3760
  }>;
3625
3761
  }
3626
3762
  interface DeviceprofileGatewayDhcpdConfigConfigFixedBindings {
@@ -3634,7 +3770,7 @@ export declare namespace org {
3634
3770
  type?: pulumi.Input<string>;
3635
3771
  value?: pulumi.Input<string>;
3636
3772
  }
3637
- interface DeviceprofileGatewayDhcpdConfigConfigVendorEncapulated {
3773
+ interface DeviceprofileGatewayDhcpdConfigConfigVendorEncapsulated {
3638
3774
  /**
3639
3775
  * enum: `boolean`, `hex`, `int16`, `int32`, `ip`, `string`, `uint16`, `uint32`
3640
3776
  */
@@ -4354,7 +4490,7 @@ export declare namespace org {
4354
4490
  */
4355
4491
  idpprofileId?: pulumi.Input<string>;
4356
4492
  /**
4357
- * `strict` (default) / `standard` / or keys from from idp_profiles
4493
+ * enum: `Custom`, `strict` (default), `standard` or keys from from idp_profiles
4358
4494
  */
4359
4495
  profile?: pulumi.Input<string>;
4360
4496
  }
@@ -4630,6 +4766,93 @@ export declare namespace org {
4630
4766
  interface DeviceprofileGatewayVrfInstances {
4631
4767
  networks?: pulumi.Input<pulumi.Input<string>[]>;
4632
4768
  }
4769
+ interface EvpnTopologyEvpnOptions {
4770
+ /**
4771
+ * optional, for dhcp_relay, unique loopback IPs are required for ERB or IPClos where we can set option-82 server_id-overrides
4772
+ */
4773
+ autoLoopbackSubnet?: pulumi.Input<string>;
4774
+ /**
4775
+ * optional, for dhcp_relay, unique loopback IPs are required for ERB or IPClos where we can set option-82 server_id-overrides
4776
+ */
4777
+ autoLoopbackSubnet6?: pulumi.Input<string>;
4778
+ /**
4779
+ * optional, this generates routerId automatically, if specified, `routerIdPrefix` is ignored
4780
+ */
4781
+ autoRouterIdSubnet?: pulumi.Input<string>;
4782
+ /**
4783
+ * optional, this generates routerId automatically, if specified, `routerIdPrefix` is ignored
4784
+ */
4785
+ autoRouterIdSubnet6?: pulumi.Input<string>;
4786
+ /**
4787
+ * optional, for ERB or CLOS, you can either use esilag to upstream routers or to also be the virtual-gateway
4788
+ * when `routedAt` != `core`, whether to do virtual-gateway at core as well
4789
+ */
4790
+ coreAsBorder?: pulumi.Input<boolean>;
4791
+ overlay?: pulumi.Input<inputs.org.EvpnTopologyEvpnOptionsOverlay>;
4792
+ /**
4793
+ * by default, JUNOS uses 00-00-5e-00-01-01 as the virtual-gateway-address's v4Mac
4794
+ * if enabled, 00-00-5e-00-XX-YY will be used (where XX=vlan_id/256, YY=vlan_id%256)
4795
+ */
4796
+ perVlanVgaV4Mac?: pulumi.Input<boolean>;
4797
+ /**
4798
+ * optional, where virtual-gateway should reside. enum: `core`, `distribution`, `edge`
4799
+ */
4800
+ routedAt?: pulumi.Input<string>;
4801
+ underlay?: pulumi.Input<inputs.org.EvpnTopologyEvpnOptionsUnderlay>;
4802
+ /**
4803
+ * optional, for EX9200 only to seggregate virtual-switches
4804
+ */
4805
+ vsInstances?: pulumi.Input<{
4806
+ [key: string]: pulumi.Input<inputs.org.EvpnTopologyEvpnOptionsVsInstances>;
4807
+ }>;
4808
+ }
4809
+ interface EvpnTopologyEvpnOptionsOverlay {
4810
+ /**
4811
+ * Overlay BGP Local AS Number
4812
+ */
4813
+ as?: pulumi.Input<number>;
4814
+ }
4815
+ interface EvpnTopologyEvpnOptionsUnderlay {
4816
+ /**
4817
+ * Underlay BGP Base AS Number
4818
+ */
4819
+ asBase?: pulumi.Input<number>;
4820
+ routedIdPrefix?: pulumi.Input<string>;
4821
+ /**
4822
+ * underlay subnet, by default, `10.255.240.0/20`, or `fd31:5700::/64` for ipv6
4823
+ */
4824
+ subnet?: pulumi.Input<string>;
4825
+ /**
4826
+ * if v6 is desired for underlay
4827
+ */
4828
+ useIpv6?: pulumi.Input<boolean>;
4829
+ }
4830
+ interface EvpnTopologyEvpnOptionsVsInstances {
4831
+ networks?: pulumi.Input<pulumi.Input<string>[]>;
4832
+ }
4833
+ interface EvpnTopologySwitches {
4834
+ deviceprofileId?: pulumi.Input<string>;
4835
+ evpnId?: pulumi.Input<number>;
4836
+ mac?: pulumi.Input<string>;
4837
+ model?: pulumi.Input<string>;
4838
+ /**
4839
+ * optionally, for distribution / access / esilag-access, they can be placed into different pods. e.g.
4840
+ * * for CLOS, to group dist / access switches into pods
4841
+ * * for ERB/CRB, to group dist / esilag-access into pods
4842
+ */
4843
+ pod?: pulumi.Input<number>;
4844
+ /**
4845
+ * by default, core switches are assumed to be connecting all pods.
4846
+ * if you want to limit the pods, you can specify pods.
4847
+ */
4848
+ pods?: pulumi.Input<pulumi.Input<number>[]>;
4849
+ /**
4850
+ * use `role`==`none` to remove a switch from the topology. enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none`
4851
+ */
4852
+ role: pulumi.Input<string>;
4853
+ routerId?: pulumi.Input<string>;
4854
+ siteId?: pulumi.Input<string>;
4855
+ }
4633
4856
  interface GatewaytemplateBgpConfig {
4634
4857
  authKey?: pulumi.Input<string>;
4635
4858
  /**
@@ -4797,8 +5020,8 @@ export declare namespace org {
4797
5020
  * * enterprise number: 1-65535 (https://www.iana.org/assignments/enterprise-numbers/enterprise-numbers)
4798
5021
  * * sub option code: 1-255, sub-option code'
4799
5022
  */
4800
- vendorEncapulated?: pulumi.Input<{
4801
- [key: string]: pulumi.Input<inputs.org.GatewaytemplateDhcpdConfigConfigVendorEncapulated>;
5023
+ vendorEncapsulated?: pulumi.Input<{
5024
+ [key: string]: pulumi.Input<inputs.org.GatewaytemplateDhcpdConfigConfigVendorEncapsulated>;
4802
5025
  }>;
4803
5026
  }
4804
5027
  interface GatewaytemplateDhcpdConfigConfigFixedBindings {
@@ -4812,7 +5035,7 @@ export declare namespace org {
4812
5035
  type?: pulumi.Input<string>;
4813
5036
  value?: pulumi.Input<string>;
4814
5037
  }
4815
- interface GatewaytemplateDhcpdConfigConfigVendorEncapulated {
5038
+ interface GatewaytemplateDhcpdConfigConfigVendorEncapsulated {
4816
5039
  /**
4817
5040
  * enum: `boolean`, `hex`, `int16`, `int32`, `ip`, `string`, `uint16`, `uint32`
4818
5041
  */
@@ -5532,7 +5755,7 @@ export declare namespace org {
5532
5755
  */
5533
5756
  idpprofileId?: pulumi.Input<string>;
5534
5757
  /**
5535
- * `strict` (default) / `standard` / or keys from from idp_profiles
5758
+ * enum: `Custom`, `strict` (default), `standard` or keys from from idp_profiles
5536
5759
  */
5537
5760
  profile?: pulumi.Input<string>;
5538
5761
  }
@@ -6225,6 +6448,14 @@ export declare namespace org {
6225
6448
  network?: pulumi.Input<string>;
6226
6449
  }
6227
6450
  interface NetworktemplateNetworks {
6451
+ /**
6452
+ * only required for EVPN-VXLAN networks, IPv4 Virtual Gateway
6453
+ */
6454
+ gateway?: pulumi.Input<string>;
6455
+ /**
6456
+ * only required for EVPN-VXLAN networks, IPv6 Virtual Gateway
6457
+ */
6458
+ gateway6?: pulumi.Input<string>;
6228
6459
  /**
6229
6460
  * whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required)
6230
6461
  * NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set
@@ -6235,6 +6466,10 @@ export declare namespace org {
6235
6466
  * optional for pure switching, required when L3 / routing features are used
6236
6467
  */
6237
6468
  subnet?: pulumi.Input<string>;
6469
+ /**
6470
+ * optional for pure switching, required when L3 / routing features are used
6471
+ */
6472
+ subnet6?: pulumi.Input<string>;
6238
6473
  vlanId: pulumi.Input<string>;
6239
6474
  }
6240
6475
  interface NetworktemplateOspfAreas {
@@ -6309,9 +6544,9 @@ export declare namespace org {
6309
6544
  */
6310
6545
  allNetworks?: pulumi.Input<boolean>;
6311
6546
  /**
6312
- * Only if `mode`!=`dynamic` if DHCP snooping is enabled, whether DHCP server is allowed on the interfaces with. All the interfaces from port configs using this port usage are effected. Please notice that allowDhcpd is a tri_state.
6313
- *
6314
- * When it is not defined, it means using the systems default setting which depends on whether the port is a access or trunk port.
6547
+ * Only if `mode`!=`dynamic`. If DHCP snooping is enabled, whether DHCP server is allowed on the interfaces with.
6548
+ * All the interfaces from port configs using this port usage are effected. Please notice that allowDhcpd is a tri_state.
6549
+ * When it is not defined, it means using the system's default setting which depends on whether the port is a access or trunk port.
6315
6550
  */
6316
6551
  allowDhcpd?: pulumi.Input<boolean>;
6317
6552
  /**
@@ -6380,7 +6615,7 @@ export declare namespace org {
6380
6615
  */
6381
6616
  macLimit?: pulumi.Input<number>;
6382
6617
  /**
6383
- * `mode`==`dynamic` must only be used with the port usage with the name `dynamic`. enum: `access`, `dynamic`, `inet`, `trunk`
6618
+ * `mode`==`dynamic` must only be used if the port usage name is `dynamic`. enum: `access`, `dynamic`, `inet`, `trunk`
6384
6619
  */
6385
6620
  mode?: pulumi.Input<string>;
6386
6621
  /**
@@ -6428,7 +6663,7 @@ export declare namespace org {
6428
6663
  */
6429
6664
  serverRejectNetwork?: pulumi.Input<string>;
6430
6665
  /**
6431
- * Only if `mode`!=`dynamic` speed, default is auto to automatically negotiate speed
6666
+ * Only if `mode`!=`dynamic` speed, default is auto to automatically negotiate speed enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto`
6432
6667
  */
6433
6668
  speed?: pulumi.Input<string>;
6434
6669
  /**
@@ -6442,6 +6677,10 @@ export declare namespace org {
6442
6677
  stpEdge?: pulumi.Input<boolean>;
6443
6678
  stpNoRootPort?: pulumi.Input<boolean>;
6444
6679
  stpP2p?: pulumi.Input<boolean>;
6680
+ /**
6681
+ * optional for Campus Fabric Core-Distribution ESI-LAG profile. Helper used by the UI to select this port profile as the ESI-Lag between Distribution and Access switches
6682
+ */
6683
+ uiEvpntopoId?: pulumi.Input<string>;
6445
6684
  /**
6446
6685
  * if this is connected to a vstp network
6447
6686
  */
@@ -6872,13 +7111,14 @@ export declare namespace org {
6872
7111
  }
6873
7112
  interface NetworktemplateSwitchMatching {
6874
7113
  enable?: pulumi.Input<boolean>;
7114
+ /**
7115
+ * list of rules to define custom switch configuration based on different criterias. Each list must have at least one of `matchModel`, `matchName` or `matchRole` must be defined
7116
+ */
6875
7117
  rules?: pulumi.Input<pulumi.Input<inputs.org.NetworktemplateSwitchMatchingRule>[]>;
6876
7118
  }
6877
7119
  interface NetworktemplateSwitchMatchingRule {
6878
7120
  /**
6879
- * additional CLI commands to append to the generated Junos config
6880
- *
6881
- * **Note**: no check is done
7121
+ * additional CLI commands to append to the generated Junos config. **Note**: no check is done
6882
7122
  */
6883
7123
  additionalConfigCmds?: pulumi.Input<pulumi.Input<string>[]>;
6884
7124
  /**
@@ -6886,13 +7126,32 @@ export declare namespace org {
6886
7126
  */
6887
7127
  ipConfig?: pulumi.Input<inputs.org.NetworktemplateSwitchMatchingRuleIpConfig>;
6888
7128
  /**
6889
- * role to match
7129
+ * string the switch model must start with to use this rule. It is possible to combine with the `matchName` and `matchRole` attributes
7130
+ */
7131
+ matchModel?: pulumi.Input<string>;
7132
+ /**
7133
+ * string the switch name must start with to use this rule. Use the `matchNameOffset` to indicate the first character of the switch name to compare to. It is possible to combine with the `matchModel` and `matchRole` attributes
7134
+ */
7135
+ matchName?: pulumi.Input<string>;
7136
+ /**
7137
+ * first character of the switch name to compare to the `matchName` value
7138
+ */
7139
+ matchNameOffset?: pulumi.Input<number>;
7140
+ /**
7141
+ * string the switch role must start with to use this rule. It is possible to combine with the `matchName` and `matchModel` attributes
6890
7142
  */
6891
7143
  matchRole?: pulumi.Input<string>;
6892
7144
  /**
6893
7145
  * 'property key define the type of matching, value is the string to match. e.g: `match_name[0:3]`, `match_name[2:6]`, `matchModel`, `match_model[0-6]`
7146
+ *
7147
+ * @deprecated The `matchType` attribute has been deprecated in version v0.2.8 of the Juniper-Mist Provider. It has been replaced with the `matchName`, `matchModel` and `matchRole`attribuites and may be removed in future versions.
7148
+ Please update your configurations.
6894
7149
  */
6895
7150
  matchType?: pulumi.Input<string>;
7151
+ /**
7152
+ * @deprecated The `matchValue` attribute has been deprecated in version v0.2.8 of the Juniper-Mist Provider. It has been replaced with the `matchName`, `matchModel` and `matchRole`attribuites and may be removed in future versions.
7153
+ Please update your configurations.
7154
+ */
6896
7155
  matchValue?: pulumi.Input<string>;
6897
7156
  name?: pulumi.Input<string>;
6898
7157
  /**
@@ -6929,7 +7188,7 @@ export declare namespace org {
6929
7188
  */
6930
7189
  type?: pulumi.Input<string>;
6931
7190
  /**
6932
- * f supported on the platform. If enabled, DNS will be using this routing-instance, too
7191
+ * if supported on the platform. If enabled, DNS will be using this routing-instance, too
6933
7192
  */
6934
7193
  useMgmtVrf?: pulumi.Input<boolean>;
6935
7194
  /**
@@ -6979,13 +7238,11 @@ export declare namespace org {
6979
7238
  noLocalOverwrite?: pulumi.Input<boolean>;
6980
7239
  poeDisabled?: pulumi.Input<boolean>;
6981
7240
  /**
6982
- * enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `auto`
7241
+ * enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto`
6983
7242
  */
6984
7243
  speed?: pulumi.Input<string>;
6985
7244
  /**
6986
- * port usage name.
6987
- *
6988
- * If EVPN is used, use `evpnUplink`or `evpnDownlink`
7245
+ * port usage name. If EVPN is used, use `evpnUplink`or `evpnDownlink`
6989
7246
  */
6990
7247
  usage: pulumi.Input<string>;
6991
7248
  }
@@ -7511,10 +7768,11 @@ export declare namespace org {
7511
7768
  url?: pulumi.Input<string>;
7512
7769
  }
7513
7770
  interface SettingCradlepoint {
7514
- cpApiId: pulumi.Input<string>;
7515
- cpApiKey: pulumi.Input<string>;
7516
- ecmApiId: pulumi.Input<string>;
7517
- ecmApiKey: pulumi.Input<string>;
7771
+ cpApiId?: pulumi.Input<string>;
7772
+ cpApiKey?: pulumi.Input<string>;
7773
+ ecmApiId?: pulumi.Input<string>;
7774
+ ecmApiKey?: pulumi.Input<string>;
7775
+ enableLldp?: pulumi.Input<boolean>;
7518
7776
  }
7519
7777
  interface SettingDeviceCert {
7520
7778
  cert: pulumi.Input<string>;
@@ -7932,6 +8190,10 @@ export declare namespace org {
7932
8190
  * Auth port of RADIUS server
7933
8191
  */
7934
8192
  port?: pulumi.Input<number>;
8193
+ /**
8194
+ * whether to require Message-Authenticator in requests
8195
+ */
8196
+ requireMessageAuthenticator?: pulumi.Input<boolean>;
7935
8197
  /**
7936
8198
  * secret of RADIUS server
7937
8199
  */
@@ -8065,6 +8327,15 @@ export declare namespace org {
8065
8327
  venueName?: pulumi.Input<string>;
8066
8328
  }
8067
8329
  interface WlanInjectDhcpOption82 {
8330
+ /**
8331
+ * information to set in the `circuitId` field of the DHCP Option 82. It is possible to use static string or the following variables (e.g. `{{SSID}}:{{AP_MAC}}`):
8332
+ * * {{AP_MAC}}
8333
+ * * {{AP_MAC_DASHED}}
8334
+ * * {{AP_MODEL}}
8335
+ * * {{AP_NAME}}
8336
+ * * {{SITE_NAME}}
8337
+ * * {{SSID}}
8338
+ */
8068
8339
  circuitId?: pulumi.Input<string>;
8069
8340
  /**
8070
8341
  * whether to inject option 82 when forwarding DHCP packets
@@ -8084,6 +8355,10 @@ export declare namespace org {
8084
8355
  enabled?: pulumi.Input<boolean>;
8085
8356
  }
8086
8357
  interface WlanPortal {
8358
+ /**
8359
+ * whether to allow guest to connect to other Guest WLANs (with different `WLAN.ssid`) of same org without reauthentication (disable randomMac for seamless roaming)
8360
+ */
8361
+ allowWlanIdRoam?: pulumi.Input<boolean>;
8087
8362
  /**
8088
8363
  * amazon OAuth2 client id. This is optional. If not provided, it will use a default one.
8089
8364
  */
@@ -8333,28 +8608,31 @@ export declare namespace org {
8333
8608
  [key: string]: pulumi.Input<string>;
8334
8609
  }>;
8335
8610
  /**
8336
- * default role to assign if there’s no match. By default, an assertion is treated as invalid when there’s no role matched
8611
+ * if `wlanPortalAuth`==`sso`, default role to assign if there’s no match. By default, an assertion is treated as invalid when there’s no role matched
8337
8612
  */
8338
8613
  ssoDefaultRole?: pulumi.Input<string>;
8614
+ /**
8615
+ * if `wlanPortalAuth`==`sso`
8616
+ */
8339
8617
  ssoForcedRole?: pulumi.Input<string>;
8340
8618
  /**
8341
- * IDP Cert (used to verify the signed response)
8619
+ * if `wlanPortalAuth`==`sso`, IDP Cert (used to verify the signed response)
8342
8620
  */
8343
8621
  ssoIdpCert?: pulumi.Input<string>;
8344
8622
  /**
8345
- * signing algorithm for SAML Assertion
8623
+ * if `wlanPortalAuth`==`sso`, Signing algorithm for SAML Assertion. enum: `sha1`, `sha256`, `sha384`, `sha512`
8346
8624
  */
8347
8625
  ssoIdpSignAlgo?: pulumi.Input<string>;
8348
8626
  /**
8349
- * IDP Single-Sign-On URL
8627
+ * if `wlanPortalAuth`==`sso`, IDP Single-Sign-On URL
8350
8628
  */
8351
8629
  ssoIdpSsoUrl?: pulumi.Input<string>;
8352
8630
  /**
8353
- * IDP issuer URL
8631
+ * if `wlanPortalAuth`==`sso`, IDP issuer URL
8354
8632
  */
8355
8633
  ssoIssuer?: pulumi.Input<string>;
8356
8634
  /**
8357
- * enum: `email`, `unspecified`
8635
+ * if `wlanPortalAuth`==`sso`. enum: `email`, `unspecified`
8358
8636
  */
8359
8637
  ssoNameidFormat?: pulumi.Input<string>;
8360
8638
  /**
@@ -9087,6 +9365,33 @@ export declare namespace org {
9087
9365
  host?: pulumi.Input<string>;
9088
9366
  port?: pulumi.Input<number>;
9089
9367
  }
9368
+ interface WlanRateset {
9369
+ /**
9370
+ * if `template`==`custom`. MCS bitmasks for 4 streams (16-bit for each stream, MCS0 is least significant bit), e.g. 00ff 00f0 001f limits HT rates to MCS 0-7 for 1 stream, MCS 4-7 for 2 stream (i.e. MCS 12-15), MCS 1-5 for 3 stream (i.e. MCS 16-20)
9371
+ */
9372
+ ht?: pulumi.Input<string>;
9373
+ /**
9374
+ * if `template`==`custom`. List of supported rates (IE=1) and extended supported rates (IE=50) for custom template, append ‘b’ at the end to indicate a rate being basic/mandatory. If `template`==`custom` is configured and legacy does not define at least one basic rate, it will use `no-legacy` default values. enum: `1`, `11`, `11b`, `12`, `12b`, `18`, `18b`, `1b`, `2`, `24`, `24b`, `2b`, `36`, `36b`, `48`, `48b`, `5.5`, `5.5b`, `54`, `54b`, `6`, `6b`, `9`, `9b`
9375
+ */
9376
+ legacies?: pulumi.Input<pulumi.Input<string>[]>;
9377
+ /**
9378
+ * Minimum RSSI for client to connect, 0 means not enforcing
9379
+ */
9380
+ minRssi?: pulumi.Input<number>;
9381
+ /**
9382
+ * Data Rates template to apply. enum:
9383
+ * * `no-legacy`: no 11b
9384
+ * * `compatible`: all, like before, default setting that Broadcom/Atheros used
9385
+ * * `legacy-only`: disable 802.11n and 802.11ac
9386
+ * * `high-density`: no 11b, no low rates
9387
+ * * `custom`: user defined
9388
+ */
9389
+ template?: pulumi.Input<string>;
9390
+ /**
9391
+ * if `template`==`custom`. MCS bitmasks for 4 streams (16-bit for each stream, MCS0 is least significant bit), e.g. 03ff 01ff 00ff limits VHT rates to MCS 0-9 for 1 stream, MCS 0-8 for 2 streams, and MCS 0-7 for 3 streams.
9392
+ */
9393
+ vht?: pulumi.Input<string>;
9394
+ }
9090
9395
  interface WlanSchedule {
9091
9396
  enabled?: pulumi.Input<boolean>;
9092
9397
  /**
@@ -9146,6 +9451,93 @@ export declare namespace site {
9146
9451
  lat: pulumi.Input<number>;
9147
9452
  lng: pulumi.Input<number>;
9148
9453
  }
9454
+ interface EvpnTopologyEvpnOptions {
9455
+ /**
9456
+ * optional, for dhcp_relay, unique loopback IPs are required for ERB or IPClos where we can set option-82 server_id-overrides
9457
+ */
9458
+ autoLoopbackSubnet?: pulumi.Input<string>;
9459
+ /**
9460
+ * optional, for dhcp_relay, unique loopback IPs are required for ERB or IPClos where we can set option-82 server_id-overrides
9461
+ */
9462
+ autoLoopbackSubnet6?: pulumi.Input<string>;
9463
+ /**
9464
+ * optional, this generates routerId automatically, if specified, `routerIdPrefix` is ignored
9465
+ */
9466
+ autoRouterIdSubnet?: pulumi.Input<string>;
9467
+ /**
9468
+ * optional, this generates routerId automatically, if specified, `routerIdPrefix` is ignored
9469
+ */
9470
+ autoRouterIdSubnet6?: pulumi.Input<string>;
9471
+ /**
9472
+ * optional, for ERB or CLOS, you can either use esilag to upstream routers or to also be the virtual-gateway
9473
+ * when `routedAt` != `core`, whether to do virtual-gateway at core as well
9474
+ */
9475
+ coreAsBorder?: pulumi.Input<boolean>;
9476
+ overlay?: pulumi.Input<inputs.site.EvpnTopologyEvpnOptionsOverlay>;
9477
+ /**
9478
+ * by default, JUNOS uses 00-00-5e-00-01-01 as the virtual-gateway-address's v4Mac
9479
+ * if enabled, 00-00-5e-00-XX-YY will be used (where XX=vlan_id/256, YY=vlan_id%256)
9480
+ */
9481
+ perVlanVgaV4Mac?: pulumi.Input<boolean>;
9482
+ /**
9483
+ * optional, where virtual-gateway should reside. enum: `core`, `distribution`, `edge`
9484
+ */
9485
+ routedAt?: pulumi.Input<string>;
9486
+ underlay?: pulumi.Input<inputs.site.EvpnTopologyEvpnOptionsUnderlay>;
9487
+ /**
9488
+ * optional, for EX9200 only to seggregate virtual-switches
9489
+ */
9490
+ vsInstances?: pulumi.Input<{
9491
+ [key: string]: pulumi.Input<inputs.site.EvpnTopologyEvpnOptionsVsInstances>;
9492
+ }>;
9493
+ }
9494
+ interface EvpnTopologyEvpnOptionsOverlay {
9495
+ /**
9496
+ * Overlay BGP Local AS Number
9497
+ */
9498
+ as?: pulumi.Input<number>;
9499
+ }
9500
+ interface EvpnTopologyEvpnOptionsUnderlay {
9501
+ /**
9502
+ * Underlay BGP Base AS Number
9503
+ */
9504
+ asBase?: pulumi.Input<number>;
9505
+ routedIdPrefix?: pulumi.Input<string>;
9506
+ /**
9507
+ * underlay subnet, by default, `10.255.240.0/20`, or `fd31:5700::/64` for ipv6
9508
+ */
9509
+ subnet?: pulumi.Input<string>;
9510
+ /**
9511
+ * if v6 is desired for underlay
9512
+ */
9513
+ useIpv6?: pulumi.Input<boolean>;
9514
+ }
9515
+ interface EvpnTopologyEvpnOptionsVsInstances {
9516
+ networks?: pulumi.Input<pulumi.Input<string>[]>;
9517
+ }
9518
+ interface EvpnTopologySwitches {
9519
+ deviceprofileId?: pulumi.Input<string>;
9520
+ evpnId?: pulumi.Input<number>;
9521
+ mac?: pulumi.Input<string>;
9522
+ model?: pulumi.Input<string>;
9523
+ /**
9524
+ * optionally, for distribution / access / esilag-access, they can be placed into different pods. e.g.
9525
+ * * for CLOS, to group dist / access switches into pods
9526
+ * * for ERB/CRB, to group dist / esilag-access into pods
9527
+ */
9528
+ pod?: pulumi.Input<number>;
9529
+ /**
9530
+ * by default, core switches are assumed to be connecting all pods.
9531
+ * if you want to limit the pods, you can specify pods.
9532
+ */
9533
+ pods?: pulumi.Input<pulumi.Input<number>[]>;
9534
+ /**
9535
+ * use `role`==`none` to remove a switch from the topology. enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none`
9536
+ */
9537
+ role: pulumi.Input<string>;
9538
+ routerId?: pulumi.Input<string>;
9539
+ siteId?: pulumi.Input<string>;
9540
+ }
9149
9541
  interface NetworktemplateAclPolicy {
9150
9542
  /**
9151
9543
  * - for GBP-based policy, all srcTags and dstTags have to be gbp-based
@@ -9293,6 +9685,14 @@ export declare namespace site {
9293
9685
  network?: pulumi.Input<string>;
9294
9686
  }
9295
9687
  interface NetworktemplateNetworks {
9688
+ /**
9689
+ * only required for EVPN-VXLAN networks, IPv4 Virtual Gateway
9690
+ */
9691
+ gateway?: pulumi.Input<string>;
9692
+ /**
9693
+ * only required for EVPN-VXLAN networks, IPv6 Virtual Gateway
9694
+ */
9695
+ gateway6?: pulumi.Input<string>;
9296
9696
  /**
9297
9697
  * whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required)
9298
9698
  * NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set
@@ -9303,6 +9703,10 @@ export declare namespace site {
9303
9703
  * optional for pure switching, required when L3 / routing features are used
9304
9704
  */
9305
9705
  subnet?: pulumi.Input<string>;
9706
+ /**
9707
+ * optional for pure switching, required when L3 / routing features are used
9708
+ */
9709
+ subnet6?: pulumi.Input<string>;
9306
9710
  vlanId: pulumi.Input<string>;
9307
9711
  }
9308
9712
  interface NetworktemplateOspfAreas {
@@ -9377,9 +9781,9 @@ export declare namespace site {
9377
9781
  */
9378
9782
  allNetworks?: pulumi.Input<boolean>;
9379
9783
  /**
9380
- * Only if `mode`!=`dynamic` if DHCP snooping is enabled, whether DHCP server is allowed on the interfaces with. All the interfaces from port configs using this port usage are effected. Please notice that allowDhcpd is a tri_state.
9381
- *
9382
- * When it is not defined, it means using the systems default setting which depends on whether the port is a access or trunk port.
9784
+ * Only if `mode`!=`dynamic`. If DHCP snooping is enabled, whether DHCP server is allowed on the interfaces with.
9785
+ * All the interfaces from port configs using this port usage are effected. Please notice that allowDhcpd is a tri_state.
9786
+ * When it is not defined, it means using the system's default setting which depends on whether the port is a access or trunk port.
9383
9787
  */
9384
9788
  allowDhcpd?: pulumi.Input<boolean>;
9385
9789
  /**
@@ -9448,7 +9852,7 @@ export declare namespace site {
9448
9852
  */
9449
9853
  macLimit?: pulumi.Input<number>;
9450
9854
  /**
9451
- * `mode`==`dynamic` must only be used with the port usage with the name `dynamic`. enum: `access`, `dynamic`, `inet`, `trunk`
9855
+ * `mode`==`dynamic` must only be used if the port usage name is `dynamic`. enum: `access`, `dynamic`, `inet`, `trunk`
9452
9856
  */
9453
9857
  mode?: pulumi.Input<string>;
9454
9858
  /**
@@ -9496,7 +9900,7 @@ export declare namespace site {
9496
9900
  */
9497
9901
  serverRejectNetwork?: pulumi.Input<string>;
9498
9902
  /**
9499
- * Only if `mode`!=`dynamic` speed, default is auto to automatically negotiate speed
9903
+ * Only if `mode`!=`dynamic` speed, default is auto to automatically negotiate speed enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto`
9500
9904
  */
9501
9905
  speed?: pulumi.Input<string>;
9502
9906
  /**
@@ -9510,6 +9914,10 @@ export declare namespace site {
9510
9914
  stpEdge?: pulumi.Input<boolean>;
9511
9915
  stpNoRootPort?: pulumi.Input<boolean>;
9512
9916
  stpP2p?: pulumi.Input<boolean>;
9917
+ /**
9918
+ * optional for Campus Fabric Core-Distribution ESI-LAG profile. Helper used by the UI to select this port profile as the ESI-Lag between Distribution and Access switches
9919
+ */
9920
+ uiEvpntopoId?: pulumi.Input<string>;
9513
9921
  /**
9514
9922
  * if this is connected to a vstp network
9515
9923
  */
@@ -9940,13 +10348,14 @@ export declare namespace site {
9940
10348
  }
9941
10349
  interface NetworktemplateSwitchMatching {
9942
10350
  enable?: pulumi.Input<boolean>;
10351
+ /**
10352
+ * list of rules to define custom switch configuration based on different criterias. Each list must have at least one of `matchModel`, `matchName` or `matchRole` must be defined
10353
+ */
9943
10354
  rules?: pulumi.Input<pulumi.Input<inputs.site.NetworktemplateSwitchMatchingRule>[]>;
9944
10355
  }
9945
10356
  interface NetworktemplateSwitchMatchingRule {
9946
10357
  /**
9947
- * additional CLI commands to append to the generated Junos config
9948
- *
9949
- * **Note**: no check is done
10358
+ * additional CLI commands to append to the generated Junos config. **Note**: no check is done
9950
10359
  */
9951
10360
  additionalConfigCmds?: pulumi.Input<pulumi.Input<string>[]>;
9952
10361
  /**
@@ -9954,13 +10363,32 @@ export declare namespace site {
9954
10363
  */
9955
10364
  ipConfig?: pulumi.Input<inputs.site.NetworktemplateSwitchMatchingRuleIpConfig>;
9956
10365
  /**
9957
- * role to match
10366
+ * string the switch model must start with to use this rule. It is possible to combine with the `matchName` and `matchRole` attributes
10367
+ */
10368
+ matchModel?: pulumi.Input<string>;
10369
+ /**
10370
+ * string the switch name must start with to use this rule. Use the `matchNameOffset` to indicate the first character of the switch name to compare to. It is possible to combine with the `matchModel` and `matchRole` attributes
10371
+ */
10372
+ matchName?: pulumi.Input<string>;
10373
+ /**
10374
+ * first character of the switch name to compare to the `matchName` value
10375
+ */
10376
+ matchNameOffset?: pulumi.Input<number>;
10377
+ /**
10378
+ * string the switch role must start with to use this rule. It is possible to combine with the `matchName` and `matchModel` attributes
9958
10379
  */
9959
10380
  matchRole?: pulumi.Input<string>;
9960
10381
  /**
9961
10382
  * 'property key define the type of matching, value is the string to match. e.g: `match_name[0:3]`, `match_name[2:6]`, `matchModel`, `match_model[0-6]`
10383
+ *
10384
+ * @deprecated The `matchType` attribute has been deprecated in version v0.2.8 of the Juniper-Mist Provider. It has been replaced with the `matchName`, `matchModel` and `matchRole`attribuites and may be removed in future versions.
10385
+ Please update your configurations.
9962
10386
  */
9963
10387
  matchType?: pulumi.Input<string>;
10388
+ /**
10389
+ * @deprecated The `matchValue` attribute has been deprecated in version v0.2.8 of the Juniper-Mist Provider. It has been replaced with the `matchName`, `matchModel` and `matchRole`attribuites and may be removed in future versions.
10390
+ Please update your configurations.
10391
+ */
9964
10392
  matchValue?: pulumi.Input<string>;
9965
10393
  name?: pulumi.Input<string>;
9966
10394
  /**
@@ -9997,7 +10425,7 @@ export declare namespace site {
9997
10425
  */
9998
10426
  type?: pulumi.Input<string>;
9999
10427
  /**
10000
- * f supported on the platform. If enabled, DNS will be using this routing-instance, too
10428
+ * if supported on the platform. If enabled, DNS will be using this routing-instance, too
10001
10429
  */
10002
10430
  useMgmtVrf?: pulumi.Input<boolean>;
10003
10431
  /**
@@ -10047,13 +10475,11 @@ export declare namespace site {
10047
10475
  noLocalOverwrite?: pulumi.Input<boolean>;
10048
10476
  poeDisabled?: pulumi.Input<boolean>;
10049
10477
  /**
10050
- * enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `auto`
10478
+ * enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto`
10051
10479
  */
10052
10480
  speed?: pulumi.Input<string>;
10053
10481
  /**
10054
- * port usage name.
10055
- *
10056
- * If EVPN is used, use `evpnUplink`or `evpnDownlink`
10482
+ * port usage name. If EVPN is used, use `evpnUplink`or `evpnDownlink`
10057
10483
  */
10058
10484
  usage: pulumi.Input<string>;
10059
10485
  }
@@ -10182,16 +10608,6 @@ export declare namespace site {
10182
10608
  secret?: pulumi.Input<string>;
10183
10609
  timeout?: pulumi.Input<number>;
10184
10610
  }
10185
- interface NetworktemplateUplinkPortConfig {
10186
- /**
10187
- * Whether to do 802.1x against uplink switch. When enaled, AP cert will be used to do EAP-TLS and the Org's CA Cert has to be provisioned at the switch
10188
- */
10189
- dot1x?: pulumi.Input<boolean>;
10190
- /**
10191
- * by default, WLANs are disabled when uplink is down. In some scenario, like SiteSurvey, one would want the AP to keep sending beacons.
10192
- */
10193
- keepWlansUpIfDown?: pulumi.Input<boolean>;
10194
- }
10195
10611
  interface NetworktemplateVrfConfig {
10196
10612
  /**
10197
10613
  * whether to enable VRF (when supported on the device)
@@ -10336,7 +10752,7 @@ export declare namespace site {
10336
10752
  */
10337
10753
  ibeaconUuid?: pulumi.Input<string>;
10338
10754
  /**
10339
- * required if `powerMode`==`custom`
10755
+ * required if `powerMode`==`custom`; else use `powerMode` as default
10340
10756
  */
10341
10757
  power?: pulumi.Input<number>;
10342
10758
  /**
@@ -10655,7 +11071,7 @@ export declare namespace site {
10655
11071
  /**
10656
11072
  * any / HH:MM (24-hour format)
10657
11073
  */
10658
- timeOdFay?: pulumi.Input<string>;
11074
+ timeOfDay?: pulumi.Input<string>;
10659
11075
  }
10660
11076
  interface SettingUplinkPortConfig {
10661
11077
  /**
@@ -10906,6 +11322,10 @@ export declare namespace site {
10906
11322
  * Auth port of RADIUS server
10907
11323
  */
10908
11324
  port?: pulumi.Input<number>;
11325
+ /**
11326
+ * whether to require Message-Authenticator in requests
11327
+ */
11328
+ requireMessageAuthenticator?: pulumi.Input<boolean>;
10909
11329
  /**
10910
11330
  * secret of RADIUS server
10911
11331
  */
@@ -11039,6 +11459,15 @@ export declare namespace site {
11039
11459
  venueName?: pulumi.Input<string>;
11040
11460
  }
11041
11461
  interface WlanInjectDhcpOption82 {
11462
+ /**
11463
+ * information to set in the `circuitId` field of the DHCP Option 82. It is possible to use static string or the following variables (e.g. `{{SSID}}:{{AP_MAC}}`):
11464
+ * * {{AP_MAC}}
11465
+ * * {{AP_MAC_DASHED}}
11466
+ * * {{AP_MODEL}}
11467
+ * * {{AP_NAME}}
11468
+ * * {{SITE_NAME}}
11469
+ * * {{SSID}}
11470
+ */
11042
11471
  circuitId?: pulumi.Input<string>;
11043
11472
  /**
11044
11473
  * whether to inject option 82 when forwarding DHCP packets
@@ -11058,6 +11487,10 @@ export declare namespace site {
11058
11487
  enabled?: pulumi.Input<boolean>;
11059
11488
  }
11060
11489
  interface WlanPortal {
11490
+ /**
11491
+ * whether to allow guest to connect to other Guest WLANs (with different `WLAN.ssid`) of same org without reauthentication (disable randomMac for seamless roaming)
11492
+ */
11493
+ allowWlanIdRoam?: pulumi.Input<boolean>;
11061
11494
  /**
11062
11495
  * amazon OAuth2 client id. This is optional. If not provided, it will use a default one.
11063
11496
  */
@@ -11307,28 +11740,31 @@ export declare namespace site {
11307
11740
  [key: string]: pulumi.Input<string>;
11308
11741
  }>;
11309
11742
  /**
11310
- * default role to assign if there’s no match. By default, an assertion is treated as invalid when there’s no role matched
11743
+ * if `wlanPortalAuth`==`sso`, default role to assign if there’s no match. By default, an assertion is treated as invalid when there’s no role matched
11311
11744
  */
11312
11745
  ssoDefaultRole?: pulumi.Input<string>;
11746
+ /**
11747
+ * if `wlanPortalAuth`==`sso`
11748
+ */
11313
11749
  ssoForcedRole?: pulumi.Input<string>;
11314
11750
  /**
11315
- * IDP Cert (used to verify the signed response)
11751
+ * if `wlanPortalAuth`==`sso`, IDP Cert (used to verify the signed response)
11316
11752
  */
11317
11753
  ssoIdpCert?: pulumi.Input<string>;
11318
11754
  /**
11319
- * signing algorithm for SAML Assertion
11755
+ * if `wlanPortalAuth`==`sso`, Signing algorithm for SAML Assertion. enum: `sha1`, `sha256`, `sha384`, `sha512`
11320
11756
  */
11321
11757
  ssoIdpSignAlgo?: pulumi.Input<string>;
11322
11758
  /**
11323
- * IDP Single-Sign-On URL
11759
+ * if `wlanPortalAuth`==`sso`, IDP Single-Sign-On URL
11324
11760
  */
11325
11761
  ssoIdpSsoUrl?: pulumi.Input<string>;
11326
11762
  /**
11327
- * IDP issuer URL
11763
+ * if `wlanPortalAuth`==`sso`, IDP issuer URL
11328
11764
  */
11329
11765
  ssoIssuer?: pulumi.Input<string>;
11330
11766
  /**
11331
- * enum: `email`, `unspecified`
11767
+ * if `wlanPortalAuth`==`sso`. enum: `email`, `unspecified`
11332
11768
  */
11333
11769
  ssoNameidFormat?: pulumi.Input<string>;
11334
11770
  /**
@@ -12061,6 +12497,33 @@ export declare namespace site {
12061
12497
  host?: pulumi.Input<string>;
12062
12498
  port?: pulumi.Input<number>;
12063
12499
  }
12500
+ interface WlanRateset {
12501
+ /**
12502
+ * if `template`==`custom`. MCS bitmasks for 4 streams (16-bit for each stream, MCS0 is least significant bit), e.g. 00ff 00f0 001f limits HT rates to MCS 0-7 for 1 stream, MCS 4-7 for 2 stream (i.e. MCS 12-15), MCS 1-5 for 3 stream (i.e. MCS 16-20)
12503
+ */
12504
+ ht?: pulumi.Input<string>;
12505
+ /**
12506
+ * if `template`==`custom`. List of supported rates (IE=1) and extended supported rates (IE=50) for custom template, append ‘b’ at the end to indicate a rate being basic/mandatory. If `template`==`custom` is configured and legacy does not define at least one basic rate, it will use `no-legacy` default values. enum: `1`, `11`, `11b`, `12`, `12b`, `18`, `18b`, `1b`, `2`, `24`, `24b`, `2b`, `36`, `36b`, `48`, `48b`, `5.5`, `5.5b`, `54`, `54b`, `6`, `6b`, `9`, `9b`
12507
+ */
12508
+ legacies?: pulumi.Input<pulumi.Input<string>[]>;
12509
+ /**
12510
+ * Minimum RSSI for client to connect, 0 means not enforcing
12511
+ */
12512
+ minRssi?: pulumi.Input<number>;
12513
+ /**
12514
+ * Data Rates template to apply. enum:
12515
+ * * `no-legacy`: no 11b
12516
+ * * `compatible`: all, like before, default setting that Broadcom/Atheros used
12517
+ * * `legacy-only`: disable 802.11n and 802.11ac
12518
+ * * `high-density`: no 11b, no low rates
12519
+ * * `custom`: user defined
12520
+ */
12521
+ template?: pulumi.Input<string>;
12522
+ /**
12523
+ * if `template`==`custom`. MCS bitmasks for 4 streams (16-bit for each stream, MCS0 is least significant bit), e.g. 03ff 01ff 00ff limits VHT rates to MCS 0-9 for 1 stream, MCS 0-8 for 2 streams, and MCS 0-7 for 3 streams.
12524
+ */
12525
+ vht?: pulumi.Input<string>;
12526
+ }
12064
12527
  interface WlanSchedule {
12065
12528
  enabled?: pulumi.Input<boolean>;
12066
12529
  /**